PointRepresentation предоставляет набор методов для преобразования структуры/объекта точки в n-мерный вектор. Подробнее...
#include <pcl/point_representation.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< PointRepresentation< PointT > > |
| using | ConstPtr = shared_ptr< const PointRepresentation< PointT > > |
Общедоступные функции-члены | |
| virtual | ~PointRepresentation ()=default |
| Пустой деструктор. Подробнее... |
|
| virtual void | copyToFloatArray (const PointT &p, float *out) const =0 |
| Копирует данные точки из входной точки в массив float. Подробнее... |
|
| bool | isTrivial () const |
| Возвращает, является ли это представление точки тривиальным. Подробнее... |
|
| virtual bool | isValid (const PointT &p) const |
| Проверяет, является ли входная точка допустимой. Подробнее... |
|
| template<typename OutputType > | |
| void | vectorize (const PointT &p, OutputType &out) const |
| Преобразует входную точку в векторное представление, масштабируя его с коэффициентом alpha. Подробнее... |
|
| void | vectorize (const PointT &p, float *out) const |
| void | vectorize (const PointT &p, std::vector< float > &out) const |
| void | setRescaleValues (const float *rescale_array) |
| Задаёт значения масштабирования, используемые при векторизации точек. Подробнее... |
|
| int | getNumberOfDimensions () const |
| Возвращает количество измерений в векторном представлении точки. Подробнее... |
|
Защищённые атрибуты | |
| int | nr_dimensions_ = 0 |
| Количество измерений в векторе этой точки (т. е. Подробнее... |
|
| std::vector< float > | alpha_ |
| Вектор, содержащий коэффициент масштабирования для каждого измерения. Подробнее... |
|
| bool | trivial_ = false |
| Указывает, является ли это представление точки тривиальным. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::PointRepresentation< PointT >
PointRepresentation предоставляет набор методов для преобразования структуры/объекта точки в n-мерный вектор.
- Примечание
- Это абстрактный класс. Подклассы должны задать nr_dimensions_ соответствующим значением в конструкторе и реализовать чисто виртуальный метод copyToFloatArray.
Определение в строке 59 файла point_representation.h.
Описание псевдонимов типов-членов
ConstPtr
| using pcl::PointRepresentation< PointT >::ConstPtr = shared_ptr<const PointRepresentation<PointT> > |
Определение в строке 79 файла point_representation.h.
Ptr
| using pcl::PointRepresentation< PointT >::Ptr = shared_ptr<PointRepresentation<PointT> > |
Определение в строке 78 файла point_representation.h.
Описание конструктора и деструктора
~PointRepresentation()
| virtualdefault |
Пустой деструктор.
Описание функций-членов
copyToFloatArray()
| pure virtual |
Копирует данные точки из входной точки в массив float.
Этот метод должен быть переопределён во всех подклассах.
- Параметры
-
[in] p Входная точка [out] out Указатель на массив float.
Реализовано в pcl::DefaultFeatureRepresentation< VFHSignature308 >, pcl::DefaultPointRepresentation< UniqueShapeContext1960 >, pcl::DefaultPointRepresentation< SHOT352 >, pcl::DefaultPointRepresentation< SHOT1344 >, pcl::DefaultPointRepresentation< ShapeContext1980 >, pcl::DefaultPointRepresentation< PPFSignature >, pcl::DefaultFeatureRepresentation< PPFSignature >, pcl::GeneralizedIterativeClosestPoint6D::MyPointRepresentation, pcl::DefaultPointRepresentation< PointXYZI >, pcl::DefaultPointRepresentation< PointXYZ >, pcl::registration::TransformationValidationEuclidean< PointSource, PointTarget, Scalar >::MyPointRepresentation, pcl::DefaultPointRepresentation< PointNormal >, pcl::CustomPointRepresentation< PointDefault >, pcl::DefaultFeatureRepresentation< PointDefault >, pcl::DefaultPointRepresentation< PointDefault >, pcl::DefaultFeatureRepresentation< PFHSignature125 >, pcl::DefaultFeatureRepresentation< PFHRGBSignature250 >, pcl::DefaultFeatureRepresentation< NormalBasedSignature12 >, pcl::DefaultPointRepresentation< Narf36 >, pcl::DefaultFeatureRepresentation< GASDSignature984 >, pcl::DefaultFeatureRepresentation< GASDSignature7992 >, pcl::DefaultFeatureRepresentation< GASDSignature512 > и pcl::DefaultFeatureRepresentation< FPFHSignature33 >.
Используется в pcl::PointRepresentation< PointT >::isValid() и pcl::PointRepresentation< PointT >::vectorize().
getNumberOfDimensions()
| inline |
Возвращает количество измерений в векторном представлении точки.
Определение в строке 190 файла point_representation.h.
Ссылается на pcl::PointRepresentation< PointT >::nr_dimensions_.
isTrivial()
| inline |
Возвращает, является ли это представление точки тривиальным.
Представление является тривиальным тогда и только тогда, когда выполняются следующие условия:
- соответствующие данные состоят только из значений float
- операция vectorize напрямую копирует первые nr_dimensions_ элементов PointT в массив out
- sizeof(PointT) кратно sizeof(float). Иными словами, тривиальное представление точки преобразует входную точку в массив float, совпадающий с результатом reinterpret_cast точки в массив float длины nr_dimensions_.
Определение в строке 98 файла point_representation.h.
Ссылается на pcl::PointRepresentation< PointT >::alpha_ и pcl::PointRepresentation< PointT >::trivial_.
isValid()
| inlinevirtual |
Проверяет, является ли входная точка допустимой.
- Параметры
-
p Точка для проверки
Определение в строке 104 файла point_representation.h.
Ссылки на pcl::PointRepresentation< PointT >::copyToFloatArray(), pcl::PointRepresentation< PointT >::nr_dimensions_ и pcl::PointRepresentation< PointT >::trivial_.
setRescaleValues()
| inline |
Задаёт коэффициенты масштабирования, используемые при преобразовании точек в вектор.
- Параметры
-
[in] rescale_array Массив/вектор коэффициентов масштабирования. Может иметь любой тип, поддерживающий оператор [].
Определение в строке 183 файла point_representation.h.
Ссылки на pcl::PointRepresentation< PointT >::alpha_ и pcl::PointRepresentation< PointT >::nr_dimensions_.
vectorize() [1/3]
| inline |
Определение в строке 162 файла point_representation.h.
Ссылки на pcl::PointRepresentation< PointT >::alpha_, pcl::PointRepresentation< PointT >::copyToFloatArray() и pcl::PointRepresentation< PointT >::nr_dimensions_.
vectorize() [2/3]
| inline |
Преобразует входную точку в векторное представление, масштабируя его с коэффициентом alpha.
- Параметры
-
[in] p входная точка [out] out Выходной вектор. Может иметь любой тип, поддерживающий оператор [].
Определение в строке 144 файла point_representation.h.
Ссылки на pcl::PointRepresentation< PointT >::alpha_, pcl::PointRepresentation< PointT >::copyToFloatArray() и pcl::PointRepresentation< PointT >::nr_dimensions_.
vectorize() [3/3]
| inline |
Определение в строке 171 файла point_representation.h.
Ссылки на pcl::PointRepresentation< PointT >::alpha_, pcl::PointRepresentation< PointT >::copyToFloatArray() и pcl::PointRepresentation< PointT >::nr_dimensions_.
Документация по данным-членам
alpha_
| protected |
Вектор, содержащий коэффициент масштабирования для каждого измерения.
Определение в строке 65 файла point_representation.h.
На это ссылаются pcl::PointRepresentation< PointT >::isTrivial(), pcl::PointRepresentation< PointT >::setRescaleValues() и pcl::PointRepresentation< PointT >::vectorize().
nr_dimensions_
| protected |
Число измерений вектора этой точки (т. е.
«k» в «k-D»)
Определение в строке 63 файла point_representation.h.
На это ссылаются pcl::PointRepresentation< PointT >::getNumberOfDimensions(), pcl::PointRepresentation< PointT >::isValid(), pcl::PointRepresentation< PointT >::setRescaleValues() и pcl::PointRepresentation< PointT >::vectorize().
trivial_
| protected |
Указывает, является ли это представление точки тривиальным.
Оно является тривиальным тогда и только тогда, когда выполняются следующие условия:
- соответствующие данные состоят только из значений типа float
- операция vectorize напрямую копирует первые nr_dimensions_ элементов PointT в массив out
- sizeof(PointT) кратно sizeof(float). Иными словами, тривиальное представление точки преобразует входную точку в массив float, совпадающий с результатом reinterpret_cast точки в массив float длиной nr_dimensions_ . Это значение указывает, что данное представление может быть тривиальным; оно является тривиальным, только если не был вызван метод setRescaleValues().
Определение в строке 75 файла point_representation.h.
На это ссылаются pcl::PointRepresentation< PointT >::isTrivial() и pcl::PointRepresentation< PointT >::isValid().
Документация этого класса создана на основе следующего файла:
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_point_representation.html
