RangeImagePlanar наследует исходное изображение дальности и отличается от него тем, что использует не сферическую проекцию, а плоскость проекции (как обычные камеры), поэтому лучше подходит для датчиков дальности, которые уже самостоятельно формируют изображение дальности (стереокамеры, камеры ToF), что позволяет избежать преобразования в облако точек, а затем в сферическое изображение дальности. Подробнее...
#include <pcl/range_image/range_image_planar.h>
Общедоступные типы | |
| using | BaseClass = RangeImage |
| using | Ptr = shared_ptr< RangeImagePlanar > |
| using | ConstPtr = shared_ptr< const RangeImagePlanar > |
|
| |
| enum | CoordinateFrame { CAMERA_FRAME = 0 , LASER_FRAME = 1 } |
| using | BaseClass = pcl::PointCloud< PointWithRange > |
| using | VectorOfEigenVector3f = std::vector< Eigen::Vector3f, Eigen::aligned_allocator< Eigen::Vector3f > > |
| using | Ptr = shared_ptr< RangeImage > |
| using | ConstPtr = shared_ptr< const RangeImage > |
|
| |
| using | PointType = PointWithRange |
| using | VectorType = std::vector< PointWithRange, Eigen::aligned_allocator< PointWithRange > > |
| using | CloudVectorType = std::vector< PointCloud< PointWithRange >, Eigen::aligned_allocator< PointCloud< PointWithRange > > > |
| using | Ptr = shared_ptr< PointCloud< PointWithRange > > |
| using | ConstPtr = shared_ptr< const PointCloud< PointWithRange > > |
| using | value_type = PointWithRange |
| using | reference = PointWithRange & |
| using | const_reference = const PointWithRange & |
| using | difference_type = typename VectorType::difference_type |
| using | size_type = typename VectorType::size_type |
| using | iterator = typename VectorType::iterator |
| using | const_iterator = typename VectorType::const_iterator |
| using | reverse_iterator = typename VectorType::reverse_iterator |
| using | const_reverse_iterator = typename VectorType::const_reverse_iterator |
Общедоступные функции-члены | |
| PCL_EXPORTS | RangeImagePlanar () |
| Конструктор. Подробнее... |
|
| PCL_EXPORTS | ~RangeImagePlanar () override |
| Деструктор. Подробнее... |
|
| RangeImage * | getNew () const override |
| Возвращает вновь созданный RangeImagePlanar. Подробнее... |
|
| PCL_EXPORTS void | copyTo (RangeImage &other) const override |
| Копирует *this в other. Подробнее... |
|
| Ptr | makeShared () |
| Получает общий указатель Boost на копию этого объекта. Подробнее... |
|
| PCL_EXPORTS void | setDisparityImage (const float *disparity_image, int di_width, int di_height, float focal_length, float base_line, float desired_angular_resolution=-1) |
| Создает изображение на основе существующего изображения диспаритета. Подробнее... |
|
| PCL_EXPORTS void | setDepthImage (const float *depth_image, int di_width, int di_height, float di_center_x, float di_center_y, float di_focal_length_x, float di_focal_length_y, float desired_angular_resolution=-1) |
| Создает изображение на основе существующего изображения глубины. Подробнее... |
|
| PCL_EXPORTS void | setDepthImage (const unsigned short *depth_image, int di_width, int di_height, float di_center_x, float di_center_y, float di_focal_length_x, float di_focal_length_y, float desired_angular_resolution=-1) |
| Создает изображение на основе существующего изображения глубины. Подробнее... |
|
| template<typename PointCloudType > | |
| void | createFromPointCloudWithFixedSize (const PointCloudType &point_cloud, int di_width, int di_height, float di_center_x, float di_center_y, float di_focal_length_x, float di_focal_length_y, const Eigen::Affine3f &sensor_pose, CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f) |
| Создает изображение на основе существующего облака точек. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, float range, Eigen::Vector3f &point) const override |
| Вычисляет 3D-точку по заданным точке изображения и расстоянию. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, float &image_x, float &image_y, float &range) const override |
| Вычисляет точку изображения и расстояние по заданной 3D-точке. Подробнее... |
|
| PCL_EXPORTS void | getSubImage (int sub_image_image_offset_x, int sub_image_image_offset_y, int sub_image_width, int sub_image_height, int combine_pixels, RangeImage &sub_image) const override |
| Получает часть полного изображения в виде нового изображения расстояний. Подробнее... |
|
| PCL_EXPORTS void | getHalfImage (RangeImage &half_image) const override |
| Получает изображение расстояний с вдвое меньшим разрешением. Подробнее... |
|
| float | getFocalLengthX () const |
| Получает фокусное расстояние по оси X. Подробнее... |
|
| float | getFocalLengthY () const |
| Получает фокусное расстояние по оси Y. Подробнее... |
|
| float | getCenterX () const |
| Получает координату главной точки по оси X. Подробнее... |
|
| float | getCenterY () const |
| Получает координату главной точки по оси Y. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, float range, PointWithRange &point) const |
| Вычисляет 3D-точку по заданным точке изображения и расстоянию. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, PointWithRange &point) const |
| Вычисляет 3D-точку по заданной точке изображения и значению расстояния в ближайшем пикселе. Подробнее... |
|
| virtual void | calculate3DPoint (float image_x, float image_y, float range, Eigen::Vector3f &point) const |
| Вычисляет 3D-точку по заданным точке изображения и расстоянию. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, Eigen::Vector3f &point) const |
| Вычисляет 3D-точку по заданной точке изображения и значению расстояния в ближайшем пикселе. Подробнее... |
|
| virtual void | getImagePoint (const Eigen::Vector3f &point, float &image_x, float &image_y, float &range) const |
| Получает точку изображения по 3D-точке в мировых координатах. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, int &image_x, int &image_y, float &range) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, float &image_x, float &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, int &image_x, int &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, float &image_x, float &image_y, float &range) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, float &image_x, float &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, int &image_x, int &image_y) const |
| То же, что и выше. Подробнее... |
|
|
| |
| PCL_EXPORTS | RangeImage () |
| Конструктор. Подробнее... |
|
| virtual PCL_EXPORTS | ~RangeImage () |
| Деструктор. Подробнее... |
|
| Ptr | makeShared () |
| Получает общий указатель Boost на копию этого объекта. Подробнее... |
|
| PCL_EXPORTS void | reset () |
| Сбрасывает все значения, создавая пустое изображение расстояний. Подробнее... |
|
| template<typename PointCloudType > | |
| void | createFromPointCloud (const PointCloudType &point_cloud, float angular_resolution=pcl::deg2rad(0.5f), float max_angle_width=pcl::deg2rad(360.0f), float max_angle_height=pcl::deg2rad(180.0f), const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создает изображение глубины из облака точек. Подробнее... |
|
| template<typename PointCloudType > | |
| void | createFromPointCloud (const PointCloudType &point_cloud, float angular_resolution_x=pcl::deg2rad(0.5f), float angular_resolution_y=pcl::deg2rad(0.5f), float max_angle_width=pcl::deg2rad(360.0f), float max_angle_height=pcl::deg2rad(180.0f), const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создает изображение глубины из облака точек. Подробнее... |
|
| template<typename PointCloudType > | |
| void | createFromPointCloudWithKnownSize (const PointCloudType &point_cloud, float angular_resolution, const Eigen::Vector3f &point_cloud_center, float point_cloud_radius, const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создает изображение глубины из облака точек, используя предварительную оценку размера сцены для ускорения вычислений. Подробнее... |
|
| template<typename PointCloudType > | |
| void | createFromPointCloudWithKnownSize (const PointCloudType &point_cloud, float angular_resolution_x, float angular_resolution_y, const Eigen::Vector3f &point_cloud_center, float point_cloud_radius, const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создает изображение глубины из облака точек, используя предварительную оценку размера сцены для ускорения вычислений. Подробнее... |
|
| template<typename PointCloudTypeWithViewpoints > | |
| void | createFromPointCloudWithViewpoints (const PointCloudTypeWithViewpoints &point_cloud, float angular_resolution, float max_angle_width, float max_angle_height, CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создать изображение глубины из облака точек, используя среднюю точку наблюдения точек (vp_x,vp_y,vp_z в типе точки) в облаке точек в качестве положения датчика (предполагая поворот (0,0,0)). Подробнее... |
|
| template<typename PointCloudTypeWithViewpoints > | |
| void | createFromPointCloudWithViewpoints (const PointCloudTypeWithViewpoints &point_cloud, float angular_resolution_x, float angular_resolution_y, float max_angle_width, float max_angle_height, CoordinateFrame coordinate_frame=CAMERA_FRAME, float noise_level=0.0f, float min_range=0.0f, int border_size=0) |
| Создать изображение глубины из облака точек, используя среднюю точку наблюдения точек (vp_x,vp_y,vp_z в типе точки) в облаке точек в качестве положения датчика (предполагая поворот (0,0,0)). Подробнее... |
|
| void | createEmpty (float angular_resolution, const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), RangeImage::CoordinateFrame coordinate_frame=CAMERA_FRAME, float angle_width=pcl::deg2rad(360.0f), float angle_height=pcl::deg2rad(180.0f)) |
| Создать пустое изображение глубины (заполненное ненаблюдаемыми точками) Подробнее... |
|
| void | createEmpty (float angular_resolution_x, float angular_resolution_y, const Eigen::Affine3f &sensor_pose=Eigen::Affine3f::Identity(), RangeImage::CoordinateFrame coordinate_frame=CAMERA_FRAME, float angle_width=pcl::deg2rad(360.0f), float angle_height=pcl::deg2rad(180.0f)) |
| Создать пустое изображение глубины (заполненное ненаблюдаемыми точками) Подробнее... |
|
| template<typename PointCloudType > | |
| void | doZBuffer (const PointCloudType &point_cloud, float noise_level, float min_range, int &top, int &right, int &bottom, int &left) |
| Интегрировать заданное облако точек в текущее изображение дальности с использованием z-буфера. Подробнее... |
|
| template<typename PointCloudType > | |
| void | integrateFarRanges (const PointCloudType &far_ranges) |
| Интегрирует заданные измерения больших расстояний в изображение дальности. Подробнее... |
|
| PCL_EXPORTS void | cropImage (int border_size=0, int top=-1, int right=-1, int bottom=-1, int left=-1) |
| Обрезать изображение дальности до минимального размера, при котором оно всё ещё содержит все фактические измерения дальности. Подробнее... |
|
| PCL_EXPORTS float * | getRangesArray () const |
| Получить все значения дальности в одном массиве float размером width*height. Подробнее... |
|
| const Eigen::Affine3f & | getTransformationToRangeImageSystem () const |
| Метод получения преобразования из мировой системы в систему изображения дальности (систему координат датчика). Подробнее... |
|
| void | setTransformationToRangeImageSystem (const Eigen::Affine3f &to_range_image_system) |
| Метод установки преобразования из системы изображения дальности (системы координат датчика) в мировую систему. Подробнее... |
|
| const Eigen::Affine3f & | getTransformationToWorldSystem () const |
| Метод получения преобразования из системы изображения дальности (системы координат датчика) в мировую систему. Подробнее... |
|
| float | getAngularResolution () const |
| Метод получения углового разрешения изображения дальности по оси x в радианах на пиксель. Подробнее... |
|
| float | getAngularResolutionX () const |
| Метод получения углового разрешения изображения дальности по оси x в радианах на пиксель. Подробнее... |
|
| float | getAngularResolutionY () const |
| Метод получения углового разрешения изображения дальности по оси y в радианах на пиксель. Подробнее... |
|
| void | getAngularResolution (float &angular_resolution_x, float &angular_resolution_y) const |
| Метод получения углового разрешения изображения дальности по осям x и y (в радианах). Подробнее... |
|
| void | setAngularResolution (float angular_resolution) |
| Задать угловое разрешение изображения дальности. Подробнее... |
|
| void | setAngularResolution (float angular_resolution_x, float angular_resolution_y) |
| Задать угловое разрешение изображения дальности. Подробнее... |
|
| const PointWithRange & | getPoint (int image_x, int image_y) const |
| Вернуть 3D-точку с дальностью в заданной позиции изображения. Подробнее... |
|
| PointWithRange & | getPoint (int image_x, int image_y) |
| Неконстантная версия getPoint. Подробнее... |
|
| const PointWithRange & | getPoint (float image_x, float image_y) const |
| Вернуть 3D-точку с дальностью в заданной позиции изображения. Подробнее... |
|
| PointWithRange & | getPoint (float image_x, float image_y) |
| Неконстантная версия предыдущего метода. Подробнее... |
|
| const PointWithRange & | getPointNoCheck (int image_x, int image_y) const |
| Вернуть 3D-точку с дальностью в заданной позиции изображения. Подробнее... |
|
| PointWithRange & | getPointNoCheck (int image_x, int image_y) |
| Неконстантная версия getPointNoCheck. Подробнее... |
|
| void | getPoint (int image_x, int image_y, Eigen::Vector3f &point) const |
| То же, что и выше. Подробнее... |
|
| void | getPoint (int index, Eigen::Vector3f &point) const |
| То же, что и выше. Подробнее... |
|
| const Eigen::Map< const Eigen::Vector3f > | getEigenVector3f (int x, int y) const |
| То же, что и выше. Подробнее... |
|
| const Eigen::Map< const Eigen::Vector3f > | getEigenVector3f (int index) const |
| То же, что и выше. Подробнее... |
|
| const PointWithRange & | getPoint (int index) const |
| Вернуть 3D-точку с дальностью по заданному индексу (где index=y*width+x). Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, float range, PointWithRange &point) const |
| Вычислить 3D-точку по заданной точке изображения и дальности. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, PointWithRange &point) const |
| Вычислить 3D-точку по заданной точке изображения и значению дальности ближайшего пикселя. Подробнее... |
|
| void | calculate3DPoint (float image_x, float image_y, Eigen::Vector3f &point) const |
| Вычислить 3D-точку по заданной точке изображения и значению дальности ближайшего пикселя. Подробнее... |
|
| PCL_EXPORTS void | recalculate3DPointPositions () |
| Пересчитать положения всех 3D-точек в соответствии с их положениями в пикселях и дальностью. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, int &image_x, int &image_y, float &range) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, float &image_x, float &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (const Eigen::Vector3f &point, int &image_x, int &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, float &image_x, float &image_y, float &range) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, float &image_x, float &image_y) const |
| То же, что и выше. Подробнее... |
|
| void | getImagePoint (float x, float y, float z, int &image_x, int &image_y) const |
| То же, что и выше. Подробнее... |
|
| float | checkPoint (const Eigen::Vector3f &point, PointWithRange &point_in_image) const |
| point_in_image будет точкой изображения в позиции, которую занимала бы заданная точка. Подробнее... |
|
| float | getRangeDifference (const Eigen::Vector3f &point) const |
| Возвращает разницу дальности между заданной точкой и дальностью точки изображения в позиции, которую занимала бы заданная точка. Подробнее... |
|
| void | getImagePointFromAngles (float angle_x, float angle_y, float &image_x, float &image_y) const |
| Получить точку изображения, соответствующую заданным углам. Подробнее... |
|
| void | getAnglesFromImagePoint (float image_x, float image_y, float &angle_x, float &angle_y) const |
| Получить углы, соответствующие заданной точке изображения. Подробнее... |
|
| void | real2DToInt2D (float x, float y, int &xInt, int &yInt) const |
| Преобразует координаты точки изображения из вещественных значений в целочисленные. Подробнее... |
|
| bool | isInImage (int x, int y) const |
| Проверить, находится ли точка внутри изображения. Подробнее... |
|
| bool | isValid (int x, int y) const |
| Проверить, находится ли точка внутри изображения и имеет ли она конечную дальность. Подробнее... |
|
| bool | isValid (int index) const |
| Проверить, имеет ли точка конечную дальность. Подробнее... |
|
| bool | isObserved (int x, int y) const |
| Проверить, находится ли точка внутри изображения и имеет ли она конечную дальность или максимальное показание (range=INFINITY). Подробнее... |
|
| bool | isMaxRange (int x, int y) const |
| Проверить, имеет ли точка максимальную дальность (range=INFINITY). Сначала проверьте isInImage или isObserved! Подробнее... |
|
| bool | getNormal (int x, int y, int radius, Eigen::Vector3f &normal, int step_size=1) const |
| Вычислить нормаль точки изображения, используя соседние точки в пределах максимального расстояния radius в пикселях. Подробнее... |
|
| bool | getNormalForClosestNeighbors (int x, int y, int radius, const PointWithRange &point, int no_of_nearest_neighbors, Eigen::Vector3f &normal, int step_size=1) const |
| То же, что и выше, но учитываются только точки no_of_nearest_neighbors, ближайшие к заданной точке. Подробнее... |
|
| bool | getNormalForClosestNeighbors (int x, int y, int radius, const Eigen::Vector3f &point, int no_of_nearest_neighbors, Eigen::Vector3f &normal, Eigen::Vector3f *point_on_plane=nullptr, int step_size=1) const |
| То же, что и выше. Подробнее... |
|
| bool | getNormalForClosestNeighbors (int x, int y, Eigen::Vector3f &normal, int radius=2) const |
| То же, что и выше, с использованием значений по умолчанию. Подробнее... |
|
| bool | getSurfaceInformation (int x, int y, int radius, const Eigen::Vector3f &point, int no_of_closest_neighbors, int step_size, float &max_closest_neighbor_distance_squared, Eigen::Vector3f &normal, Eigen::Vector3f &mean, Eigen::Vector3f &eigen_values, Eigen::Vector3f *normal_all_neighbors=nullptr, Eigen::Vector3f *mean_all_neighbors=nullptr, Eigen::Vector3f *eigen_values_all_neighbors=nullptr) const |
| То же, что и выше, но извлекает дополнительные данные и может также возвращать извлечённую информацию для всех соседей в радиусе, если normal_all_neighbors не равен NULL. Подробнее... |
|
| float | getSquaredDistanceOfNthNeighbor (int x, int y, int radius, int n, int step_size) const |
| float | getImpactAngle (const PointWithRange &point1, const PointWithRange &point2) const |
| Вычислить угол падения на основе положения датчика и двух заданных точек; вернёт -INFINITY, если одна из точек не наблюдается. Подробнее... |
|
| float | getImpactAngle (int x1, int y1, int x2, int y2) const |
| То же, что и выше. Подробнее... |
|
| float | getImpactAngleBasedOnLocalNormal (int x, int y, int radius) const |
| Извлечь локальную нормаль (используя эвристику, исключающую точки фона) и вычислить на её основе угол падения. Подробнее... |
|
| PCL_EXPORTS float * | getImpactAngleImageBasedOnLocalNormals (int radius) const |
| Применяет приведённую выше функцию к каждой точке изображения. Подробнее... |
|
| float | getNormalBasedAcutenessValue (int x, int y, int radius) const |
| Вычислить оценку [0,1], показывающую, насколько острым является угол падения (1.0f - getImpactAngle/90deg). Использует getImpactAngleBasedOnLocalNormal. Вернёт -INFINITY, если нормаль вычислить не удалось. Подробнее... |
|
| float | getAcutenessValue (const PointWithRange &point1, const PointWithRange &point2) const |
| Вычислить оценку [0,1], показывающую, насколько острым является угол падения (1.0f - getImpactAngle/90deg). Вернёт -INFINITY, если одна из точек не наблюдается. Подробнее... |
|
| float | getAcutenessValue (int x1, int y1, int x2, int y2) const |
| То же, что и выше. Подробнее... |
|
| PCL_EXPORTS void | getAcutenessValueImages (int pixel_distance, float *´ness_value_image_x, float *´ness_value_image_y) const |
| Вычислить getAcutenessValue для каждой точки. Подробнее... |
|
| PCL_EXPORTS float | getSurfaceChange (int x, int y, int radius) const |
| Вычисляет степень изменения поверхности в данной точке. Подробнее... |
|
| PCL_EXPORTS float * | getSurfaceChangeImage (int radius) const |
| Применяет приведённую выше функцию к каждой точке изображения. Подробнее... |
|
| void | getSurfaceAngleChange (int x, int y, int radius, float &angle_change_x, float &angle_change_y) const |
| Вычисляет степень изменения поверхности в данной точке. Подробнее... |
|
| PCL_EXPORTS void | getSurfaceAngleChangeImages (int radius, float *&angle_change_image_x, float *&angle_change_image_y) const |
| Применяет приведённую выше функцию к каждой точке изображения. Подробнее... |
|
| float | getCurvature (int x, int y, int radius, int step_size) const |
| Вычисляет кривизну в точке с помощью PCA. Подробнее... |
|
| const Eigen::Vector3f | getSensorPos () const |
| Получить положение датчика. Подробнее... |
|
| PCL_EXPORTS void | setUnseenToMaxRange () |
| Заменяет все значения -INFINITY на INFINITY. Подробнее... |
|
| int | getImageOffsetX () const |
| Геттер для image_offset_x_. Подробнее... |
|
| int | getImageOffsetY () const |
| Геттер для image_offset_y_. Подробнее... |
|
| void | setImageOffsets (int offset_x, int offset_y) |
| Сеттер для смещений изображения. Подробнее... |
|
| PCL_EXPORTS void | getMinMaxRanges (float &min_range, float &max_range) const |
| Найти минимальную и максимальную дальность на изображении. Подробнее... |
|
| PCL_EXPORTS void | change3dPointsToLocalCoordinateFrame () |
| Эта функция обнуляет позу датчика и преобразует координаты всех точек в эту локальную систему координат. Подробнее... |
|
| PCL_EXPORTS float * | getInterpolatedSurfaceProjection (const Eigen::Affine3f &pose, int pixel_size, float world_size) const |
| Вычислить фрагмент изображения дальности как значения z системы координат, заданной параметром pose. Подробнее... |
|
| PCL_EXPORTS float * | getInterpolatedSurfaceProjection (const Eigen::Vector3f &point, int pixel_size, float world_size) const |
| То же, что и выше, но с использованием локальной системы координат, заданной точкой и направлением обзора. Подробнее... |
|
| Eigen::Affine3f | getTransformationToViewerCoordinateFrame (const Eigen::Vector3f &point) const |
| Получить локальную систему координат с началом в точке point, вертикальной осью и осью Z, направленной в сторону обзора. Подробнее... |
|
| void | getTransformationToViewerCoordinateFrame (const Eigen::Vector3f &point, Eigen::Affine3f &transformation) const |
| То же, что и выше, с использованием ссылки для возвращаемого значения. Подробнее... |
|
| void | getRotationToViewerCoordinateFrame (const Eigen::Vector3f &point, Eigen::Affine3f &transformation) const |
| То же, что и выше, но возвращает только поворот. Подробнее... |
|
| PCL_EXPORTS bool | getNormalBasedUprightTransformation (const Eigen::Vector3f &point, float max_dist, Eigen::Affine3f &transformation) const |
| Получить локальную систему координат в заданной точке на основе нормали. Подробнее... |
|
| PCL_EXPORTS void | getIntegralImage (float *&integral_image, int *&valid_points_num_image) const |
| Получить интегральное изображение значений дальности (используется для быстрого размытия). Подробнее... |
|
| PCL_EXPORTS void | getBlurredImageUsingIntegralImage (int blur_radius, float *integral_image, int *valid_points_num_image, RangeImage &range_image) const |
| Получить размытую версию изображения дальности, применив фильтры усреднения к предоставленному интегральному изображению. Подробнее... |
|
| virtual PCL_EXPORTS void | getBlurredImage (int blur_radius, RangeImage &range_image) const |
| Получить размытую версию изображения дальности с помощью фильтров усреднения. Подробнее... |
|
| float | getEuclideanDistanceSquared (int x1, int y1, int x2, int y2) const |
| Получить квадрат евклидова расстояния между двумя точками изображения. Подробнее... |
|
| float | getAverageEuclideanDistance (int x, int y, int offset_x, int offset_y, int max_steps) const |
| Выполняет описанное выше для нескольких шагов в заданном направлении и вычисляет среднее значение. Подробнее... |
|
| PCL_EXPORTS void | getRangeImageWithSmoothedSurface (int radius, RangeImage &smoothed_range_image) const |
| Проецирует все точки на аппроксимацию локальной плоскостью, сглаживая поверхность сканирования. Подробнее... |
|
| void | get1dPointAverage (int x, int y, int delta_x, int delta_y, int no_of_points, PointWithRange &average_point) const |
| Вычисляет среднее 3D-положение no_of_points точек, определяемых начальной точкой x,y и направлением delta. Подробнее... |
|
| PCL_EXPORTS float | getOverlap (const RangeImage &other_range_image, const Eigen::Affine3f &relative_transformation, int search_radius, float max_distance, int pixel_step=1) const |
| Вычисляет перекрытие двух изображений дальности с учётом относительного преобразования (из заданного изображения в *this). Подробнее... |
|
| bool | getViewingDirection (int x, int y, Eigen::Vector3f &viewing_direction) const |
| Получить направление обзора для заданной точки. Подробнее... |
|
| void | getViewingDirection (const Eigen::Vector3f &point, Eigen::Vector3f &viewing_direction) const |
| Получить направление обзора для заданной точки. Подробнее... |
|
|
| |
| PointCloud ()=default | |
| Конструктор по умолчанию. Подробнее... |
|
| PointCloud (const PointCloud< PointWithRange > &pc, const Indices &indices) | |
| Конструктор копирования для подмножества облака точек. Подробнее... |
|
| PointCloud (std::uint32_t width_, std::uint32_t height_, const PointWithRange &value_=PointWithRange()) | |
| Конструктор с выделением памяти для подмножества облака точек. Подробнее... |
|
| PointCloud & | operator+= (const PointCloud &rhs) |
| Добавить облако точек к текущему облаку. Подробнее... |
|
| PointCloud | operator+ (const PointCloud &rhs) |
| Добавить одно облако точек к другому. Подробнее... |
|
| const PointWithRange & | at (int column, int row) const |
| Получить точку по координатам (столбец, строка). Подробнее... |
|
| PointWithRange & | at (int column, int row) |
| Получить точку по координатам (столбец, строка). Подробнее... |
|
| const PointWithRange & | at (std::size_t n) const |
| PointWithRange & | at (std::size_t n) |
| const PointWithRange & | operator() (std::size_t column, std::size_t row) const |
| Получить точку по координатам (столбец, строка). Подробнее... |
|
| PointWithRange & | operator() (std::size_t column, std::size_t row) |
| Получить точку по координатам (столбец, строка). Подробнее... |
|
| bool | isOrganized () const |
| Возвращает, является ли набор данных организованным (например, представленным в виде структурированной сетки). Подробнее... |
|
| Eigen::Map< Eigen::MatrixXf, Eigen::Aligned, Eigen::OuterStride<> > | getMatrixXfMap (int dim, int stride, int offset) |
| Возвращает матрицу Eigen MatrixXf (предполагаются значения типа float), сопоставленную с указанными измерениями облака точек. Подробнее... |
|
| const Eigen::Map< const Eigen::MatrixXf, Eigen::Aligned, Eigen::OuterStride<> > | getMatrixXfMap (int dim, int stride, int offset) const |
| Возвращает матрицу Eigen MatrixXf (предполагаются значения типа float), сопоставленную с указанными измерениями облака точек. Подробнее... |
|
| Eigen::Map< Eigen::MatrixXf, Eigen::Aligned, Eigen::OuterStride<> > | getMatrixXfMap () |
| const Eigen::Map< const Eigen::MatrixXf, Eigen::Aligned, Eigen::OuterStride<> > | getMatrixXfMap () const |
| iterator | begin () noexcept |
| const_iterator | begin () const noexcept |
| iterator | end () noexcept |
| const_iterator | end () const noexcept |
| const_iterator | cbegin () const noexcept |
| const_iterator | cend () const noexcept |
| reverse_iterator | rbegin () noexcept |
| const_reverse_iterator | rbegin () const noexcept |
| reverse_iterator | rend () noexcept |
| const_reverse_iterator | rend () const noexcept |
| const_reverse_iterator | crbegin () const noexcept |
| const_reverse_iterator | crend () const noexcept |
| std::size_t | size () const |
| index_t | max_size () const noexcept |
| void | reserve (std::size_t n) |
| bool | empty () const |
| PointWithRange * | data () noexcept |
| const PointWithRange * | data () const noexcept |
| void | resize (std::size_t count) |
Изменяет размер контейнера так, чтобы он содержал count элементов. Подробнее... |
|
| void | resize (uindex_t new_width, uindex_t new_height) |
Изменяет размер контейнера так, чтобы он содержал new_width * new_height элементов. Подробнее... |
|
| void | resize (index_t count, const PointWithRange &value) |
| Изменяет размер контейнера так, чтобы он содержал count элементов. Подробнее... |
|
| void | resize (index_t new_width, index_t new_height, const PointWithRange &value) |
| Изменяет размер контейнера так, чтобы он содержал count элементов. Подробнее... |
|
| const PointWithRange & | operator[] (std::size_t n) const |
| PointWithRange & | operator[] (std::size_t n) |
| const PointWithRange & | front () const |
| PointWithRange & | front () |
| const PointWithRange & | back () const |
| PointWithRange & | back () |
| void | assign (index_t count, const PointWithRange &value) |
Заменяет точки на count копий value Подробнее... |
|
| void | assign (index_t new_width, index_t new_height, const PointWithRange &value) |
Заменяет точки на new_width * new_height копий value Подробнее... |
|
| void | assign (InputIterator first, InputIterator last) |
Заменяет точки копиями элементов диапазона [first, last) Подробнее... |
|
| void | assign (InputIterator first, InputIterator last, index_t new_width) |
Заменяет точки копиями элементов диапазона [first, last) Подробнее... |
|
| void | assign (std::initializer_list< PointWithRange > ilist) |
Заменяет точки элементами из списка инициализации ilist Подробнее... |
|
| void | assign (std::initializer_list< PointWithRange > ilist, index_t new_width) |
Заменяет точки элементами из списка инициализации ilist Подробнее... |
|
| void | push_back (const PointWithRange &pt) |
| Добавляет новую точку в облако в конец контейнера. Подробнее... |
|
| void | transient_push_back (const PointWithRange &pt) |
| Добавляет новую точку в облако в конец контейнера. Подробнее... |
|
| reference | emplace_back (Args &&...args) |
| Создаёт новую точку в облаке в конце контейнера. Подробнее... |
|
| reference | transient_emplace_back (Args &&...args) |
| Создаёт новую точку в облаке в конце контейнера. Подробнее... |
|
| iterator | insert (iterator position, const PointWithRange &pt) |
| Вставляет новую точку в облако в указанную итератором позицию. Подробнее... |
|
| void | insert (iterator position, std::size_t n, const PointWithRange &pt) |
| Вставляет новую точку в облако N раз в указанную итератором позицию. Подробнее... |
|
| void | insert (iterator position, InputIterator first, InputIterator last) |
| Вставляет диапазон точек в облако в указанную позицию. Подробнее... |
|
| iterator | transient_insert (iterator position, const PointWithRange &pt) |
| Вставляет новую точку в облако в указанную итератором позицию. Подробнее... |
|
| void | transient_insert (iterator position, std::size_t n, const PointWithRange &pt) |
| Вставляет новую точку в облако N раз в указанную итератором позицию. Подробнее... |
|
| void | transient_insert (iterator position, InputIterator first, InputIterator last) |
| Вставляет диапазон точек в облако в указанную позицию. Подробнее... |
|
| iterator | emplace (iterator position, Args &&...args) |
| Создаёт новую точку в облаке в указанной итератором позиции. Подробнее... |
|
| iterator | transient_emplace (iterator position, Args &&...args) |
| Создаёт новую точку в облаке в указанной итератором позиции. Подробнее... |
|
| iterator | erase (iterator position) |
| Удаляет точку из облака. Подробнее... |
|
| iterator | erase (iterator first, iterator last) |
| Удаляет набор точек, заданный парой итераторов (first, last). Подробнее... |
|
| iterator | transient_erase (iterator position) |
| Удаляет точку из облака. Подробнее... |
|
| iterator | transient_erase (iterator first, iterator last) |
| Удаляет набор точек, заданный парой итераторов (first, last). Подробнее... |
|
| void | swap (PointCloud< PointWithRange > &rhs) |
| Обменять облако точек с другим облаком. Подробнее... |
|
| void | clear () |
| Удаляет все точки в облаке и устанавливает ширину и высоту равными 0. Подробнее... |
|
| Ptr | makeShared () const |
| Копирует облако в кучу и возвращает умный указатель. Обратите внимание, что выполняется глубокое копирование, поэтому не используйте эту функцию для непустых облаков. Подробнее... |
|
Защищённые атрибуты | |
| float | focal_length_x_ {0.0f} |
| float | focal_length_y_ {0.0f} |
| Фокусное расстояние изображения в пикселях. Подробнее... |
|
| float | focal_length_x_reciprocal_ {0.0f} |
| float | focal_length_y_reciprocal_ {0.0f} |
| 1/focal_length — для внутреннего использования Подробнее... |
|
| float | center_x_ {0.0f} |
| float | center_y_ {0.0f} |
| Главная точка изображения. Подробнее... |
|
|
| |
| Eigen::Affine3f | to_range_image_system_ |
| Обратное преобразование to_world_system_. Подробнее... |
|
| Eigen::Affine3f | to_world_system_ |
| Обратное преобразование to_range_image_system_. Подробнее... |
|
| float | angular_resolution_x_ {0.0f} |
| Угловое разрешение дальномерного изображения по оси x в радианах на пиксель. Подробнее... |
|
| float | angular_resolution_y_ {0.0f} |
| Угловое разрешение дальномерного изображения по оси y в радианах на пиксель. Подробнее... |
|
| float | angular_resolution_x_reciprocal_ {0.0f} |
| 1.0/angular_resolution_x_ — используется для ускорения умножения по сравнению с делением Подробнее... |
|
| float | angular_resolution_y_reciprocal_ {0.0f} |
| 1.0/angular_resolution_y_ — используется для ускорения умножения по сравнению с делением Подробнее... |
|
| int | image_offset_x_ {0} |
| int | image_offset_y_ {0} |
| Положение верхнего левого угла дальномерного изображения относительно изображения полного размера (360x180 градусов). Подробнее... |
|
| PointWithRange | unobserved_point |
| Эта точка используется для возможности возврата ссылки на несуществующую точку. Подробнее... |
|
Дополнительные унаследованные элементы | |
|
| |
| static float | getMaxAngleSize (const Eigen::Affine3f &viewer_pose, const Eigen::Vector3f ¢er, float radius) |
| Получить размер определенной области при просмотре из заданного положения. Подробнее... |
|
| static Eigen::Vector3f | getEigenVector3f (const PointWithRange &point) |
| Получить Eigen::Vector3f из PointWithRange. Подробнее... |
|
| static PCL_EXPORTS void | getCoordinateFrameTransformation (RangeImage::CoordinateFrame coordinate_frame, Eigen::Affine3f &transformation) |
| Получить преобразование, которое переводит заданную систему координат в CAMERA_FRAME. Подробнее... |
|
| template<typename PointCloudTypeWithViewpoints > | |
| static Eigen::Vector3f | getAverageViewPoint (const PointCloudTypeWithViewpoints &point_cloud) |
| Получить среднюю точку обзора облака точек, в котором каждая точка содержит информацию о точке обзора в виде vp_x, vp_y, vp_z. Подробнее... |
|
| static PCL_EXPORTS void | extractFarRanges (const pcl::PCLPointCloud2 &point_cloud_data, PointCloud< PointWithViewpoint > &far_ranges) |
| Проверить, содержат ли предоставленные данные дальние расстояния, и добавить их в far_ranges. Подробнее... |
|
|
| |
| static bool | concatenate (pcl::PointCloud< PointWithRange > &cloud1, const pcl::PointCloud< PointWithRange > &cloud2) |
| static bool | concatenate (const pcl::PointCloud< PointWithRange > &cloud1, const pcl::PointCloud< PointWithRange > &cloud2, pcl::PointCloud< PointWithRange > &cloud_out) |
|
| |
| pcl::PCLHeader | header |
| Заголовок облака точек. Подробнее... |
|
| std::vector< PointWithRange, Eigen::aligned_allocator< PointWithRange > > | points |
| Данные точек. Подробнее... |
|
| std::uint32_t | width |
| Ширина облака точек (если оно организовано как структура изображения). Подробнее... |
|
| std::uint32_t | height |
| Высота облака точек (если оно организовано как структура изображения). Подробнее... |
|
| bool | is_dense |
| Значение true, если все точки допустимы (например, ни одно из их полей с плавающей точкой не содержит NaN или Inf). Подробнее... |
|
| Eigen::Vector4f | sensor_origin_ |
| Положение датчика при получении данных (начало координат/перенос). Подробнее... |
|
| Eigen::Quaternionf | sensor_orientation_ |
| Положение датчика при получении данных (вращение). Подробнее... |
|
|
| |
| static int | max_no_of_threads |
| Максимальное число потоков OpenMP, которые можно использовать в этом классе. Подробнее... |
|
| static bool | debug |
| Только для... Подробнее... |
|
|
| |
| static void | createLookupTables () |
| Создать таблицы поиска для тригонометрических функций. Подробнее... |
|
| static float | asinLookUp (float value) |
| Обратиться к таблице поиска asin. Подробнее... |
|
| static float | atan2LookUp (float y, float x) |
| Обратиться к таблице поиска std::atan2. Подробнее... |
|
| static float | cosLookUp (float value) |
| Обратиться к таблице поиска cos. Подробнее... |
|
|
| |
| static PCL_EXPORTS const int | lookup_table_size |
| static PCL_EXPORTS std::vector< float > | asin_lookup_table |
| static PCL_EXPORTS std::vector< float > | atan_lookup_table |
| static PCL_EXPORTS std::vector< float > | cos_lookup_table |
Подробное описание
RangeImagePlanar является производным от исходного изображения дальности и отличается от него тем, что использует не сферическую проекцию, а плоскость проекции (как обычные камеры), поэтому лучше подходит для датчиков дальности, которые уже самостоятельно предоставляют изображение дальности (стереокамеры, камеры ToF), что позволяет избежать преобразования в облако точек, а затем в сферическое изображение дальности.
Определено в строке 51 файла range_image_planar.h.
Документация псевдонимов типов-членов
BaseClass
Определено в строке 55 файла range_image_planar.h.
ConstPtr
| using pcl::RangeImagePlanar::ConstPtr = shared_ptr<const RangeImagePlanar> |
Определено в строке 57 файла range_image_planar.h.
Ptr
| using pcl::RangeImagePlanar::Ptr = shared_ptr<RangeImagePlanar> |
Определено в строке 56 файла range_image_planar.h.
Документация конструкторов и деструкторов
RangeImagePlanar()
| PCL_EXPORTS pcl::RangeImagePlanar::RangeImagePlanar | ( | ) |
Конструктор.
Используется в getNew().
~RangeImagePlanar()
| override |
Деструктор.
Документация функций-членов
calculate3DPoint() [1/5]
| inline |
Вычислить 3D-точку по заданной точке изображения и значению дальности в ближайшем пикселе.
Определено в строке 445 файла range_image.hpp.
calculate3DPoint() [2/5]
| void pcl::RangeImage::calculate3DPoint |
Вычислить 3D-точку по заданной точке изображения и дальности.
Определено в строке 442 файла range_image.hpp.
Ссылки на pcl_lrintf.
calculate3DPoint() [3/5]
| void pcl::RangeImagePlanar::calculate3DPoint | ( | float | image_x, |
| float | image_y, | ||
| float | range, | ||
| Eigen::Vector3f & | point | ||
| ) | const |
Вычислить 3D-точку по заданной точке изображения и дальности.
- Параметры
-
image_x положение по x на изображении image_y положение по y на изображении range дальность point результирующая 3D-точка
- Примечание
- Реализация для плоских изображений дальности (в отличие от сферических, используемых в исходном классе)
Переопределяет реализацию из pcl::RangeImage.
Определено в строке 92 файла range_image_planar.hpp.
Ссылки на center_x_, center_y_, focal_length_x_reciprocal_, focal_length_y_reciprocal_, pcl::RangeImage::image_offset_x_, pcl::RangeImage::image_offset_y_ и pcl::RangeImage::to_world_system_.
calculate3DPoint() [4/5]
| inline |
Вычисляет 3D-точку по заданным точке изображения и дальности.
Определение в строке 435 файла range_image.hpp.
Ссылки на pcl::RangeImage::angular_resolution_x_reciprocal_, pcl::RangeImage::angular_resolution_y_reciprocal_, pcl::RangeImage::cosLookUp(), pcl::RangeImage::image_offset_x_, pcl::RangeImage::image_offset_y_ и M_PI.
calculate3DPoint() [5/5]
| inline |
Вычисляет 3D-точку по заданным точке изображения и значению дальности в ближайшем пикселе.
Определение в строке 438 файла range_image.hpp.
copyTo()
| overridevirtual |
Копирует *this в other.
Производная версия — также копирует дополнительные члены RangeImagePlanar
Переопределяет реализацию из pcl::RangeImage.
createFromPointCloudWithFixedSize()
| void pcl::RangeImagePlanar::createFromPointCloudWithFixedSize | ( | const PointCloudType & | point_cloud, |
| int | di_width, | ||
| int | di_height, | ||
| float | di_center_x, | ||
| float | di_center_y, | ||
| float | di_focal_length_x, | ||
| float | di_focal_length_y, | ||
| const Eigen::Affine3f & | sensor_pose, | ||
| CoordinateFrame |
coordinate_frame = CAMERA_FRAME, | ||
| float |
noise_level = 0.0f, | ||
| float |
min_range = 0.0f | ||
| ) |
Создает изображение из существующего облака точек.
- Параметры
-
point_cloud исходное облако точек di_width ширина изображения диспаратности di_height высота изображения диспаратности di_center_x x-координата центра проекции камеры di_center_y y-координата центра проекции камеры di_focal_length_x фокусное расстояние камеры в горизонтальном направлении di_focal_length_y фокусное расстояние камеры в вертикальном направлении sensor_pose положение виртуальной камеры глубины coordinate_frame используемая система координат облака точек noise_level типичный уровень шума датчика; используется для усреднения в Z-буфере min_range минимальная дальность для учета точек
Определение в строке 50 файла range_image_planar.hpp.
Ссылки на center_x_, center_y_, pcl::RangeImage::doZBuffer(), focal_length_x_, focal_length_x_reciprocal_, focal_length_y_, focal_length_y_reciprocal_, pcl::RangeImage::getCoordinateFrameTransformation(), pcl::PointCloud< PointWithRange >::height, pcl::PointCloud< PointWithRange >::is_dense, pcl::PointCloud< PointWithRange >::points, pcl::RangeImage::recalculate3DPointPositions(), pcl::PointCloud< PointWithRange >::size(), pcl::RangeImage::to_range_image_system_, pcl::RangeImage::to_world_system_, pcl::RangeImage::unobserved_point и pcl::PointCloud< PointWithRange >::width.
getCenterX()
| inline |
Возвращает координату главной точки по оси X.
Определение в строке 201 файла range_image_planar.h.
Ссылка на center_x_.
getCenterY()
| inline |
Возвращает координату главной точки по оси Y.
Определение в строке 205 файла range_image_planar.h.
Ссылка на center_y_.
getFocalLengthX()
| inline |
Возвращает фокусное расстояние по оси X.
Определение в строке 193 файла range_image_planar.h.
Ссылка на focal_length_x_.
getFocalLengthY()
| inline |
Возвращает фокусное расстояние по оси Y.
Определение в строке 197 файла range_image_planar.h.
Ссылка на focal_length_y_.
getHalfImage()
| overridevirtual |
Возвращает изображение дальности с вдвое меньшим разрешением.
Переопределяет реализацию из pcl::RangeImage.
getImagePoint() [1/8]
| inline |
То же, что и выше.
Определение в строке 461 файла range_image.hpp.
getImagePoint() [2/8]
| inline |
Получает imagePoint по 3D-точке в мировых координатах.
Определение в строке 453 файла range_image.hpp.
getImagePoint() [3/8]
| inlineoverridevirtual |
Вычисляет точку изображения и дальность по заданной 3D-точке.
- Параметры
-
point результирующая 3D-точка image_x результирующая позиция по оси x на изображении image_y результирующая позиция по оси y на изображении range результирующая дальность
- Примечание
- Реализация для плоских изображений дальности (в отличие от сферических, как в исходной версии)
Переопределяет реализацию из pcl::RangeImage.
Определение в строке 105 файла range_image_planar.hpp.
Ссылки на center_x_, center_y_, focal_length_x_, focal_length_y_, pcl::RangeImage::image_offset_x_, pcl::RangeImage::image_offset_y_ и pcl::RangeImage::to_range_image_system_.
getImagePoint() [4/8]
| inline |
То же, что и выше.
Определение в строке 465 файла range_image.hpp.
Ссылка на pcl::RangeImage::getPoint().
getImagePoint() [5/8]
| inline |
То же, что и выше.
Определение в строке 457 файла range_image.hpp.
Ссылки на pcl::RangeImage::getPoint() и pcl::RangeImage::isInImage().
getImagePoint() [6/8]
| inline |
То же, что и выше.
Определение в строке 473 файла range_image.hpp.
getImagePoint() [7/8]
| inline |
То же, что и выше.
Определение в строке 469 файла range_image.hpp.
getImagePoint() [8/8]
| inline |
То же, что и выше.
Определение в строке 477 файла range_image.hpp.
getNew()
| inlineoverridevirtual |
Возвращает вновь созданный объект RangeImagePlanar.
Повторная реализация для возврата изображения того же типа.
Переопределяет реализацию из pcl::RangeImage.
Определение в строке 68 файла range_image_planar.h.
Ссылка на RangeImagePlanar().
getSubImage()
| overridevirtual |
Получает часть полного изображения в виде нового изображения дальности.
- Параметры
-
sub_image_image_offset_x - X-координата верхнего левого пикселя подизображения. Она всегда задается относительно абсолютной точки 0,0, то есть -180°,-90°, и уже выражена в системе координат нового изображения, поэтому фактический пиксель исходного изображения равен combine_pixels* (image_offset_x-image_offset_x_) sub_image_image_offset_y - То же, что и image_offset_x, для координаты y sub_image_width - ширина нового изображения sub_image_height - высота нового изображения combine_pixels - коэффициент уменьшения: новое угловое разрешение в combine_pixels раз больше исходного sub_image - выходное изображение
Переопределяет реализацию из pcl::RangeImage.
makeShared()
| inline |
Возвращает boost-указатель общего владения на копию этого объекта.
Определение в строке 77 файла range_image_planar.h.
setDepthImage() [1/2]
| PCL_EXPORTS void pcl::RangeImagePlanar::setDepthImage | ( | const float * | depth_image, |
| int | di_width, | ||
| int | di_height, | ||
| float | di_center_x, | ||
| float | di_center_y, | ||
| float | di_focal_length_x, | ||
| float | di_focal_length_y, | ||
| float |
desired_angular_resolution = -1 | ||
| ) |
Создает изображение из существующего изображения глубины.
- Параметры
-
depth_image данные входного изображения глубины в виде значений float di_width ширина изображения диспаратности di_height высота изображения диспаратности di_center_x x-координата центра проекции камеры di_center_y y-координата центра проекции камеры di_focal_length_x фокусное расстояние камеры в горизонтальном направлении di_focal_length_y фокусное расстояние камеры в вертикальном направлении desired_angular_resolution Если задано это значение, система будет пропускать столько пикселей, сколько необходимо, чтобы максимально приблизиться к указанному угловому разрешению, не превышая его (плотность не будет ниже этого значения). Значение задается в радианах на пиксель.
setDepthImage() [2/2]
| PCL_EXPORTS void pcl::RangeImagePlanar::setDepthImage | ( | const unsigned short * | depth_image, |
| int | di_width, | ||
| int | di_height, | ||
| float | di_center_x, | ||
| float | di_center_y, | ||
| float | di_focal_length_x, | ||
| float | di_focal_length_y, | ||
| float |
desired_angular_resolution = -1 | ||
| ) |
Создаёт изображение на основе существующего изображения глубины.
- Параметры
-
depth_image входные данные изображения диспаратности в виде значений типа short, задающих расстояние в миллиметрах di_width ширина изображения диспаратности di_height высота изображения диспаратности di_center_x x-координата центра проекции камеры di_center_y y-координата центра проекции камеры di_focal_length_x фокусное расстояние камеры по горизонтали di_focal_length_y фокусное расстояние камеры по вертикали desired_angular_resolution Если задано это значение, система пропустит необходимое количество пикселей, чтобы максимально приблизиться к заданному угловому разрешению, не превышая его (плотность не будет ниже этого значения). Значение указывается в радианах на пиксель.
setDisparityImage()
| PCL_EXPORTS void pcl::RangeImagePlanar::setDisparityImage | ( | const float * | disparity_image, |
| int | di_width, | ||
| int | di_height, | ||
| float | focal_length, | ||
| float | base_line, | ||
| float |
desired_angular_resolution = -1 | ||
| ) |
Создаёт изображение на основе существующего изображения диспаратности.
- Параметры
-
disparity_image входные данные изображения диспаратности di_width ширина изображения диспаратности di_height высота изображения диспаратности focal_length фокусное расстояние основной камеры, получившей изображение диспаратности base_line базис стереопары, получившей изображение диспаратности desired_angular_resolution Если задано это значение, система пропустит необходимое количество пикселей, чтобы максимально приблизиться к заданному угловому разрешению, не превышая его (плотность не будет ниже этого значения). Значение указывается в радианах на пиксель.
Документация данных-членов
center_x_
| protected |
Определение в строке 211 файла range_image_planar.h.
Используется в calculate3DPoint(), createFromPointCloudWithFixedSize(), getCenterX() и getImagePoint().
center_y_
| protected |
Главная точка изображения.
Определение в строке 211 файла range_image_planar.h.
Используется в calculate3DPoint(), createFromPointCloudWithFixedSize(), getCenterY() и getImagePoint().
focal_length_x_
| protected |
Определение в строке 209 файла range_image_planar.h.
Используется в createFromPointCloudWithFixedSize(), getFocalLengthX() и getImagePoint().
focal_length_x_reciprocal_
| protected |
Определение в строке 210 файла range_image_planar.h.
Используется в calculate3DPoint() и createFromPointCloudWithFixedSize().
focal_length_y_
| protected |
Фокусное расстояние изображения в пикселях.
Определение в строке 209 файла range_image_planar.h.
Используется в createFromPointCloudWithFixedSize(), getFocalLengthY() и getImagePoint().
focal_length_y_reciprocal_
| protected |
1/focal_length -> для внутреннего использования
Определение в строке 210 файла range_image_planar.h.
Используется в calculate3DPoint() и createFromPointCloudWithFixedSize().
Документация этого класса создана на основе следующих файлов:
- pcl/range_image/range_image_planar.h
- pcl/range_image/impl/range_image_planar.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_range_image_planar.html