|
facebook360_dep
Facebook360 Depth Estimation Pipeline
|
Classes | |
| struct | BestMatch |
| struct | Keypoint |
| struct | Match |
| struct | Overlap |
| struct | ReprojectionFunctor |
| struct | SphericalReprojectionFunctor |
| struct | TriangulationFunctor |
Typedefs | |
| using | Observations = std::vector< std::pair< const Camera &, Camera::Vector2 > > |
Functions | |
| bool | isUniqueCorner (const std::vector< Keypoint > &corners, const int previousCornerCount, const Camera::Vector2 &corner) |
| std::vector< Camera::Vector2 > | findScaledCorners (const double scale, const cv::Mat_< uint8_t > &imageFull, const cv::Mat_< uint8_t > &maskFull, const std::string &cameraId) |
| cv::Mat_< uint8_t > | generateImageCircleMask (const Camera &camera) |
| std::vector< Keypoint > | findCorners (const Camera &camera, const Image &image, const bool useNearest) |
| std::map< ImageId, std::vector< Keypoint > > | findAllCorners (const Camera::Rig &rig, const std::vector< Image > &images, const bool useNearest) |
| std::vector< Keypoint > | findCorners (const Camera &camera, const cv::Mat_< uint8_t > &image, const bool useNearest) |
| std::map< std::string, std::vector< Keypoint > > | findAllCorners (const Camera::Rig &rig, const std::vector< cv::Mat_< uint8_t >> &images, const bool useNearest) |
| double | computeZncc (const Keypoint &corner0, const Keypoint &corner1) |
| cv::Rect2f | computeBox (const Camera &camera1, const Camera &camera0, const Camera::Vector2 &pixel0, const double depth) |
| bool | tooMuchOverlap (const cv::Rect2f &box, const cv::Rect2f &lastBox) |
| bool | projectCorner (Image &projection1, const Camera &camera1, const Image &img0, const Camera &camera0, const Keypoint &corner0, const double depth0) |
| bool | hasCornerNearCenter (const Image &image) |
| bool | getNextDepthSample (int ¤tDepthSample, double ¤tDisparity, cv::Rect2f ¤tBox, const Camera &camera0, const Camera::Vector2 &corner0Coords, const Camera &camera1) |
| Overlap | findMatches (const Image &img0, const std::vector< Keypoint > &corners0, const Camera &camera0, const Image &img1, const std::vector< Keypoint > &corners1, const Camera &camera1) |
| std::vector< Overlap > | findAllMatches (const Camera::Rig &rig, const std::vector< Image > &images, const std::map< ImageId, std::vector< Keypoint >> &allCorners) |
| Overlap | findMatches (const cv::Mat_< uint8_t > &img0, const std::vector< Keypoint > &corners0, const Camera &camera0, const cv::Mat_< uint8_t > &img1, const std::vector< Keypoint > &corners1, const Camera &camera1) |
| std::vector< Overlap > | findAllMatches (const Camera::Rig &rig, const std::vector< cv::Mat_< uint8_t >> &images, const std::map< std::string, std::vector< Keypoint >> &allCorners) |
| Camera | makeCamera (const Camera &camera, const Camera::Vector3 &position, const Camera::Vector3 &rotation, const Camera::Vector2 &principal, const Camera::Real &focal, const Camera::Distortion &distortion) |
| void | cartesianToSpherical (Camera::Real &radius, Camera::Real &theta, Camera::Real &phi, const Camera::Vector3 &cartesianCoords) |
| Camera::Vector3 | sphericalToCartesian (const Camera::Real radius, const Camera::Real theta, const Camera::Real phi) |
| Camera::Vector3 | averageAtDistance (const Observations &observations, const Camera::Real distance) |
| Camera::Vector3 | triangulateNonlinear (const Observations &observations, const bool forceInFront) |
| double | calcPercentile (std::vector< double > values, double percentile=0.5) |
| Camera::Vector2 | reprojectionError (const ceres::Problem &problem, ceres::ResidualBlockId id) |
| std::vector< double > | getReprojectionErrorNorms (const ceres::Problem &problem, const double *parameter=nullptr) |
| std::string | getImageFilename (const std::string &image, const std::string &frame, const std::string &imageExt) |
| Image | extractSingleChannelImage (const cv::Mat_< cv::Vec3b > &image) |
| std::vector< Image > | loadSingleChannelImages (const filesystem::path &dir, const Camera::Rig &rig) |
| std::vector< Image > | loadChannels (const Camera::Rig &rig) |
| void | processScale (const float scale, const Camera::Rig &rigFull, const std::vector< Image > &images, std::map< ImageId, std::vector< Keypoint >> &allCorners, std::vector< Overlap > &overlaps) |
| void | processOctaves (const Camera::Rig &rigFull, const std::vector< Image > &images, std::map< ImageId, std::vector< Keypoint >> &allCorners, std::vector< Overlap > &overlaps) |
| using fb360_dep::calibration::Observations = typedef std::vector<std::pair<const Camera&, Camera::Vector2> > |
| Camera::Vector3 fb360_dep::calibration::averageAtDistance | ( | const Observations & | observations, |
| const Camera::Real | distance | ||
| ) |
| double fb360_dep::calibration::calcPercentile | ( | std::vector< double > | values, |
| double | percentile = 0.5 |
||
| ) |
| void fb360_dep::calibration::cartesianToSpherical | ( | Camera::Real & | radius, |
| Camera::Real & | theta, | ||
| Camera::Real & | phi, | ||
| const Camera::Vector3 & | cartesianCoords | ||
| ) |
| cv::Rect2f fb360_dep::calibration::computeBox | ( | const Camera & | camera1, |
| const Camera & | camera0, | ||
| const Camera::Vector2 & | pixel0, | ||
| const double | depth | ||
| ) |
| cv::Mat_< uint8_t > fb360_dep::calibration::extractSingleChannelImage | ( | const cv::Mat_< cv::Vec3b > & | image | ) |
| std::map<std::string, std::vector<Keypoint> > fb360_dep::calibration::findAllCorners | ( | const Camera::Rig & | rig, |
| const std::vector< cv::Mat_< uint8_t >> & | images, | ||
| const bool | useNearest | ||
| ) |
| std::map<ImageId, std::vector<Keypoint> > fb360_dep::calibration::findAllCorners | ( | const Camera::Rig & | rig, |
| const std::vector< Image > & | images, | ||
| const bool | useNearest | ||
| ) |
| std::vector<Overlap> fb360_dep::calibration::findAllMatches | ( | const Camera::Rig & | rig, |
| const std::vector< cv::Mat_< uint8_t >> & | images, | ||
| const std::map< std::string, std::vector< Keypoint >> & | allCorners | ||
| ) |
| std::vector<Overlap> fb360_dep::calibration::findAllMatches | ( | const Camera::Rig & | rig, |
| const std::vector< Image > & | images, | ||
| const std::map< ImageId, std::vector< Keypoint >> & | allCorners | ||
| ) |
| std::vector<Keypoint> fb360_dep::calibration::findCorners | ( | const Camera & | camera, |
| const cv::Mat_< uint8_t > & | image, | ||
| const bool | useNearest | ||
| ) |
| std::vector<Keypoint> fb360_dep::calibration::findCorners | ( | const Camera & | camera, |
| const Image & | image, | ||
| const bool | useNearest | ||
| ) |
| Overlap fb360_dep::calibration::findMatches | ( | const cv::Mat_< uint8_t > & | img0, |
| const std::vector< Keypoint > & | corners0, | ||
| const Camera & | camera0, | ||
| const cv::Mat_< uint8_t > & | img1, | ||
| const std::vector< Keypoint > & | corners1, | ||
| const Camera & | camera1 | ||
| ) |
| Overlap fb360_dep::calibration::findMatches | ( | const Image & | img0, |
| const std::vector< Keypoint > & | corners0, | ||
| const Camera & | camera0, | ||
| const Image & | img1, | ||
| const std::vector< Keypoint > & | corners1, | ||
| const Camera & | camera1 | ||
| ) |
| std::vector< Camera::Vector2 > fb360_dep::calibration::findScaledCorners | ( | const double | scale, |
| const cv::Mat_< uint8_t > & | imageFull, | ||
| const cv::Mat_< uint8_t > & | maskFull, | ||
| const std::string & | cameraId | ||
| ) |
| cv::Mat_<uint8_t> fb360_dep::calibration::generateImageCircleMask | ( | const Camera & | camera | ) |
|
inline |
| bool fb360_dep::calibration::getNextDepthSample | ( | int & | currentDepthSample, |
| double & | currentDisparity, | ||
| cv::Rect2f & | currentBox, | ||
| const Camera & | camera0, | ||
| const Camera::Vector2 & | corner0Coords, | ||
| const Camera & | camera1 | ||
| ) |
| std::vector<double> fb360_dep::calibration::getReprojectionErrorNorms | ( | const ceres::Problem & | problem, |
| const double * | parameter = nullptr |
||
| ) |
| bool fb360_dep::calibration::hasCornerNearCenter | ( | const Image & | image | ) |
| bool fb360_dep::calibration::isUniqueCorner | ( | const std::vector< Keypoint > & | corners, |
| const int | previousCornerCount, | ||
| const Camera::Vector2 & | corner | ||
| ) |
| std::vector< cv::Mat_< uint8_t > > fb360_dep::calibration::loadChannels | ( | const Camera::Rig & | rig | ) |
| std::vector<Image> fb360_dep::calibration::loadSingleChannelImages | ( | const filesystem::path & | dir, |
| const Camera::Rig & | rig | ||
| ) |
| Camera fb360_dep::calibration::makeCamera | ( | const Camera & | camera, |
| const Camera::Vector3 & | position, | ||
| const Camera::Vector3 & | rotation, | ||
| const Camera::Vector2 & | principal, | ||
| const Camera::Real & | focal, | ||
| const Camera::Distortion & | distortion | ||
| ) |
| void fb360_dep::calibration::processOctaves | ( | const Camera::Rig & | rigFull, |
| const std::vector< Image > & | images, | ||
| std::map< ImageId, std::vector< Keypoint >> & | allCorners, | ||
| std::vector< Overlap > & | overlaps | ||
| ) |
| void fb360_dep::calibration::processScale | ( | const float | scale, |
| const Camera::Rig & | rigFull, | ||
| const std::vector< Image > & | images, | ||
| std::map< ImageId, std::vector< Keypoint >> & | allCorners, | ||
| std::vector< Overlap > & | overlaps | ||
| ) |
| bool fb360_dep::calibration::projectCorner | ( | Image & | projection1, |
| const Camera & | camera1, | ||
| const Image & | img0, | ||
| const Camera & | camera0, | ||
| const Keypoint & | corner0, | ||
| const double | depth0 | ||
| ) |
| Camera::Vector2 fb360_dep::calibration::reprojectionError | ( | const ceres::Problem & | problem, |
| ceres::ResidualBlockId | id | ||
| ) |
| Camera::Vector3 fb360_dep::calibration::sphericalToCartesian | ( | const Camera::Real | radius, |
| const Camera::Real | theta, | ||
| const Camera::Real | phi | ||
| ) |
| bool fb360_dep::calibration::tooMuchOverlap | ( | const cv::Rect2f & | box, |
| const cv::Rect2f & | lastBox | ||
| ) |
| Camera::Vector3 fb360_dep::calibration::triangulateNonlinear | ( | const Observations & | observations, |
| const bool | forceInFront | ||
| ) |
1.8.15