Spec-Zone.ru › PointCloudLibrary

RangeImageSpherical наследуется от исходного изображения дальности и использует несколько отличающуюся сферическую проекцию. Подробнее...

#include <pcl/range_image/range_image_spherical.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Публичные типы

using BaseClass = RangeImage
using Ptr = shared_ptr< RangeImageSpherical >
using ConstPtr = shared_ptr< const RangeImageSpherical >
- Публичные типы, унаследованные от pcl::RangeImage
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 >
- Публичные типы, унаследованные от pcl::PointCloud< PointWithRange >
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 RangeImageSpherical ()
Конструктор. Подробнее...
virtual PCL_EXPORTS ~RangeImageSpherical ()=default
Деструктор. Подробнее...
virtual RangeImage * getNew () const
Возвращает вновь созданный объект RangeImagePlanar. Подробнее...
Ptr makeShared ()
Возвращает общий указатель Boost на копию этого объекта. Подробнее...
virtual void calculate3DPoint (float image_x, float image_y, float range, Eigen::Vector3f &point) const
Вычисляет 3D-точку по заданной точке изображения и дальности. Подробнее...
virtual void getImagePoint (const Eigen::Vector3f &point, float &image_x, float &image_y, float &range) const
Вычисляет точку изображения и дальность по заданной 3D-точке. Подробнее...
void getAnglesFromImagePoint (float image_x, float image_y, float &angle_x, float &angle_y) const
Возвращает углы, соответствующие заданной точке изображения. Подробнее...
void getImagePointFromAngles (float angle_x, float angle_y, float &image_x, float &image_y) const
Возвращает точку изображения, соответствующую заданным углам. Подробнее...
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::RangeImage
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
Преобразует координаты точки изображения с типом float в координаты точки изображения с типом int. Подробнее...
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 *&acuteness_value_image_x, float *&acuteness_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)
Задаёт смещения изображения. Подробнее...
virtual 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
Возвращает часть полного изображения в виде нового изображения дальности. Подробнее...
virtual void getHalfImage (RangeImage &half_image) const
Возвращает изображение дальности с разрешением вдвое ниже. Подробнее...
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
Получить направление наблюдения для заданной точки. Подробнее...
virtual PCL_EXPORTS void copyTo (RangeImage &other) const
Копировать other в *this. Подробнее...
- Общедоступные функции-члены, унаследованные от pcl::PointCloud< PointWithRange >
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)
Возвращает матрицу MatrixXf библиотеки Eigen (предполагаются значения типа float), отображенную на указанные измерения облака точек. Подробнее...
const Eigen::Map< const Eigen::MatrixXf, Eigen::Aligned, Eigen::OuterStride<> > getMatrixXfMap (int dim, int stride, int offset) const
Возвращает матрицу MatrixXf библиотеки Eigen (предполагаются значения типа 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
Копирует облако в динамическую память и возвращает интеллектуальный указатель. Обратите внимание, что выполняется глубокое копирование, поэтому не следует использовать эту функцию для непустых облаков. Подробнее...

Дополнительные унаследованные элементы

- Статические открытые функции-члены, унаследованные от pcl::RangeImage
static float getMaxAngleSize (const Eigen::Affine3f &viewer_pose, const Eigen::Vector3f &center, 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. Подробнее...
- Статические открытые функции-члены, унаследованные от pcl::PointCloud< PointWithRange >
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::PointCloud< PointWithRange >
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_
Положение датчика при съёмке (вращение). Подробнее...
- Статические открытые атрибуты, унаследованные от pcl::RangeImage
static int max_no_of_threads
Максимальное число потоков OpenMP, которые можно использовать в этом классе. Подробнее...
static bool debug
Только для... Подробнее...
- Статические защищённые функции-члены, унаследованные от pcl::RangeImage
static void createLookupTables ()
Создать таблицы поиска для тригонометрических функций. Подробнее...
static float asinLookUp (float value)
Обратиться к таблице поиска asin. Подробнее...
static float atan2LookUp (float y, float x)
Обратиться к таблице поиска std::atan2. Подробнее...
static float cosLookUp (float value)
Обратиться к таблице поиска cos. Подробнее...
- Защищённые атрибуты, унаследованные от pcl::RangeImage
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
Эта точка позволяет вернуть ссылку на несуществующую точку. Подробнее...
- Статические защищённые атрибуты, унаследованные от pcl::RangeImage
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

Подробное описание

RangeImageSpherical является производным классом исходного изображения расстояний и использует несколько отличающуюся сферическую проекцию.

В исходном изображении расстояний оно выглядит всё более «уменьшенным» вдоль оси y по мере удаления точки от средней линии изображения. Этот класс устраняет такое масштабирование, что делает его особенно подходящим для вращающихся датчиков LIDAR, захватывающих обзор на 360°: теперь вращение датчика будет соответствовать простому сдвигу изображения расстояний. (Этот класс похож на RangeImagePlanar, но в меньшей степени изменяет поведение базового класса.)

Автор
Andreas Muetzel

Определение в строке 50 файла range_image_spherical.h.

Документация по псевдонимам типов-членов

BaseClass

using pcl::RangeImageSpherical::BaseClass = RangeImage

Определение в строке 54 файла range_image_spherical.h.

ConstPtr

using pcl::RangeImageSpherical::ConstPtr = shared_ptr<const RangeImageSpherical>

Определение в строке 56 файла range_image_spherical.h.

Ptr

using pcl::RangeImageSpherical::Ptr = shared_ptr<RangeImageSpherical>

Определение в строке 55 файла range_image_spherical.h.

Документация по конструкторам и деструкторам

RangeImageSpherical()

PCL_EXPORTS pcl::RangeImageSpherical::RangeImageSpherical ( )
inline

Конструктор.

Определение в строке 60 файла range_image_spherical.h.

Используется в getNew().

~RangeImageSpherical()

virtual PCL_EXPORTS pcl::RangeImageSpherical::~RangeImageSpherical ( )
virtualdefault

Деструктор.

Документация функций-членов

calculate3DPoint() [1/5]

void pcl::RangeImage::calculate3DPoint
inline

Вычисляет 3D-точку по заданной точке изображения и значению расстояния в ближайшем пикселе.

Определение в строке 445 файла range_image.hpp.

calculate3DPoint() [2/5]

void pcl::RangeImage::calculate3DPoint
inline

Вычисляет 3D-точку по заданной точке изображения и расстоянию.

Определение в строке 442 файла range_image.hpp.

calculate3DPoint() [3/5]

void pcl::RangeImageSpherical::calculate3DPoint ( float image_x,
float image_y,
float range,
Eigen::Vector3f & point
) const
inlinevirtual

Вычисляет 3D-точку по заданной точке изображения и расстоянию.

Параметры
image_x позиция x на изображении
image_y позиция y на изображении
range расстояние
point результирующая 3D-точка
Примечание
Реализация соответствует плоским изображениям расстояний (в отличие от сферических, как в исходной версии)

Повторно реализовано из pcl::RangeImage.

Определение в строке 48 файла range_image_spherical.hpp.

Ссылается на getAnglesFromImagePoint() и pcl::RangeImage::to_world_system_.

calculate3DPoint() [4/5]

void pcl::RangeImage::calculate3DPoint
inline

Вычисляет 3D-точку по заданной точке изображения и расстоянию.

Определение в строке 435 файла range_image.hpp.

calculate3DPoint() [5/5]

void pcl::RangeImage::calculate3DPoint
inline

Вычисляет 3D-точку по заданной точке изображения и значению расстояния в ближайшем пикселе.

Определение в строке 438 файла range_image.hpp.

getAnglesFromImagePoint()

void pcl::RangeImageSpherical::getAnglesFromImagePoint ( float image_x,
float image_y,
float & angle_x,
float & angle_y
) const
inline

Получает углы, соответствующие заданной точке изображения.

Определение в строке 70 файла range_image_spherical.hpp.

Ссылается на pcl::RangeImage::angular_resolution_x_, pcl::RangeImage::angular_resolution_y_, pcl::RangeImage::image_offset_x_, pcl::RangeImage::image_offset_y_ и M_PI.

Используется в calculate3DPoint().

getImagePoint() [1/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 461 файла range_image.hpp.

getImagePoint() [2/8]

void pcl::RangeImage::getImagePoint
inline

Получает точку изображения по 3D-точке в мировых координатах.

Определение в строке 453 файла range_image.hpp.

getImagePoint() [3/8]

void pcl::RangeImageSpherical::getImagePoint ( const Eigen::Vector3f & point,
float & image_x,
float & image_y,
float & range
) const
inlinevirtual

Вычисляет точку изображения и расстояние по заданной 3D-точке.

Параметры
point результирующая 3D-точка
image_x результирующая позиция x на изображении
image_y результирующая позиция y на изображении
range результирующее расстояние
Примечание
Реализация соответствует плоским изображениям расстояний (в отличие от сферических, как в исходной версии)

Повторно реализовано из pcl::RangeImage.

Определение в строке 60 файла range_image_spherical.hpp.

Ссылается на pcl::RangeImage::asinLookUp(), pcl::RangeImage::atan2LookUp(), getImagePointFromAngles() и pcl::RangeImage::to_range_image_system_.

getImagePoint() [4/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 465 файла range_image.hpp.

getImagePoint() [5/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 457 файла range_image.hpp.

getImagePoint() [6/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 473 файла range_image.hpp.

getImagePoint() [7/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 469 файла range_image.hpp.

getImagePoint() [8/8]

void pcl::RangeImage::getImagePoint
inline

То же, что и выше.

Определение в строке 477 файла range_image.hpp.

getImagePointFromAngles()

void pcl::RangeImageSpherical::getImagePointFromAngles ( float angle_x,
float angle_y,
float & image_x,
float & image_y
) const
inline

Получает точку изображения, соответствующую заданным диапазонам.

Определение в строке 77 файла range_image_spherical.hpp.

Ссылается на pcl::RangeImage::angular_resolution_x_reciprocal_, pcl::RangeImage::angular_resolution_y_reciprocal_, pcl::RangeImage::image_offset_x_, pcl::RangeImage::image_offset_y_ и M_PI.

Используется в getImagePoint().

getNew()

virtual RangeImage* pcl::RangeImageSpherical::getNew ( ) const
inlinevirtual

Возвращает вновь созданный объект RangeImagePlanar.

Повторная реализация для возврата изображения того же типа.

Повторно реализовано из pcl::RangeImage.

Определение в строке 67 файла range_image_spherical.h.

Ссылается на RangeImageSpherical().

makeShared()

Ptr pcl::RangeImageSpherical::makeShared ( )
inline

Получает разделяемый указатель boost на копию этого объекта.

Определение в строке 72 файла range_image_spherical.h.


Документация этого класса создана на основе следующих файлов:
  • pcl/range_image/range_image_spherical.h
  • pcl/range_image/impl/range_image_spherical.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_range_image_spherical.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API