UniformSampling создает локальную трехмерную сетку для заданного PointCloud и уменьшает количество точек, а также фильтрует данные. Подробнее...
#include <pcl/filters/uniform_sampling.h>
Классы | |
| struct | Leaf |
| Простая структура для хранения центроида nD и количества точек в листе. Подробнее... |
|
Открытые типы | |
| using | Ptr = shared_ptr< UniformSampling< PointT > > |
| using | ConstPtr = shared_ptr< const UniformSampling< PointT > > |
|
| |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | Ptr = shared_ptr< FilterIndices< PointT > > |
| using | ConstPtr = shared_ptr< const FilterIndices< PointT > > |
|
| |
| using | Ptr = shared_ptr< Filter< PointT > > |
| using | ConstPtr = shared_ptr< const Filter< PointT > > |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
|
| |
| using | PointCloud = pcl::PointCloud< PointT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Открытые функции-члены | |
| PCL_MAKE_ALIGNED_OPERATOR_NEW | UniformSampling (bool extract_removed_indices=false) |
| Конструктор без параметров. Подробнее... |
|
| ~UniformSampling () override | |
| Деструктор. Подробнее... |
|
| virtual void | setRadiusSearch (double radius) |
| Задать размер ячейки 3D-сетки. Подробнее... |
|
| void | setMinimumPointsNumberPerVoxel (unsigned int min_points_per_voxel) |
| Задать минимальное количество точек, необходимое для использования вокселя. Подробнее... |
|
| unsigned int | getMinimumPointsNumberPerVoxel () const |
| Вернуть минимальное количество точек, необходимое для использования вокселя. Подробнее... |
|
|
| |
| FilterIndices (bool extract_removed_indices=false) | |
| Конструктор. Подробнее... |
|
| void | filter (Indices &indices) |
| Вызывает метод фильтрации и возвращает индексы точек отфильтрованного облака точек. Подробнее... |
|
| void | setNegative (bool negative) |
| Задать, следует ли применять обычные условия фильтрации точек или инвертированные условия. Подробнее... |
|
| bool | getNegative () const |
| Узнать, следует ли применять обычные условия фильтрации точек или инвертированные условия. Подробнее... |
|
| void | setKeepOrganized (bool keep_organized) |
| Задать, следует ли сохранять отфильтрованные точки и присваивать им значение, заданное через setUserFilterValue (по умолчанию: NaN), или удалять их из PointCloud, что может нарушить его организованную структуру. Подробнее... |
|
| bool | getKeepOrganized () const |
| Узнать, следует ли сохранять отфильтрованные точки и присваивать им значение, заданное через setUserFilterValue (по умолчанию = NaN), или удалять их из PointCloud, что может нарушить его организованную структуру. Подробнее... |
|
| void | setUserFilterValue (float value) |
| Задать значение, которое следует присвоить отфильтрованным точкам вместо их удаления. Подробнее... |
|
|
| |
| Filter (bool extract_removed_indices=false) | |
| Конструктор без параметров. Подробнее... |
|
| IndicesConstPtr const | getRemovedIndices () const |
| Получить индексы удаляемых точек. Подробнее... |
|
| void | getRemovedIndices (PointIndices &pi) |
| Получить индексы удаляемых точек. Подробнее... |
|
| void | filter (PointCloud &output) |
| Вызывает метод фильтрации и возвращает отфильтрованный набор данных в output. Подробнее... |
|
|
| |
| PCLBase () | |
| Конструктор без параметров. Подробнее... |
|
| PCLBase (const PCLBase &base) | |
| Конструктор копирования. Подробнее... |
|
| virtual | ~PCLBase ()=default |
| Деструктор. Подробнее... |
|
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Передать указатель на входной набор данных. Подробнее... |
|
| PointCloudConstPtr const | getInputCloud () const |
| Получить указатель на входной набор точек облака. Подробнее... |
|
| virtual void | setIndices (const IndicesPtr &indices) |
| Передать указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const IndicesConstPtr &indices) |
| Передать указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (const PointIndicesConstPtr &indices) |
| Передать указатель на вектор индексов, представляющий входные данные. Подробнее... |
|
| virtual void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) |
| Задать индексы точек, расположенных в интересующей области облака точек. Подробнее... |
|
| IndicesPtr | getIndices () |
| Получить указатель на используемый вектор индексов. Подробнее... |
|
| IndicesConstPtr const | getIndices () const |
| Получить указатель на используемый вектор индексов. Подробнее... |
|
| const PointT & | operator[] (std::size_t pos) const |
| Переопределить оператор [] класса PointCloud, чтобы сократить код. Подробнее... |
|
Защищённые функции-члены | |
| void | applyFilter (Indices &indices) override |
| Результаты фильтрации представлены массивом индексов. Подробнее... |
|
|
| |
| void | applyFilter (PointCloud &output) override |
| Абстрактный метод фильтрации облака точек. Подробнее... |
|
|
| |
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод следует вызывать перед началом вычислений. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод следует вызывать после завершения вычислений. Подробнее... |
|
Защищённые атрибуты | |
| std::unordered_map< std::size_t, Leaf > | leaves_ |
| Листья 3D-сетки. Подробнее... |
|
| Eigen::Vector4f | leaf_size_ |
| Размер листа. Подробнее... |
|
| Eigen::Array4f | inverse_leaf_size_ |
| Внутренние размеры листьев, хранящиеся как 1/leaf_size_ для повышения эффективности. Подробнее... |
|
| Eigen::Vector4i | min_b_ |
| Минимальные и максимальные координаты бинов, количество делений и множитель деления. Подробнее... |
|
| Eigen::Vector4i | max_b_ |
| Eigen::Vector4i | div_b_ |
| Eigen::Vector4i | divb_mul_ |
| double | search_radius_ {0.0} |
| Радиус поиска ближайших соседей для каждой точки. Подробнее... |
|
| unsigned int | min_points_per_voxel_ {0} |
| Минимальное количество точек на воксель. Подробнее... |
|
|
| |
| bool | negative_ {false} |
| False = обычное поведение фильтра (по умолчанию), true = инвертированное поведение. Подробнее... |
|
| bool | keep_organized_ {false} |
| False = удалить точки (по умолчанию), true = переопределить точки, сохранив структуру. Подробнее... |
|
| float | user_filter_value_ |
| Заданное пользователем значение, которое присваивается отфильтрованным координатам точки (по умолчанию = NaN). Подробнее... |
|
|
| |
| IndicesPtr | removed_indices_ |
| Индексы удалённых точек. Подробнее... |
|
| std::string | filter_name_ |
| Имя фильтра. Подробнее... |
|
| bool | extract_removed_indices_ |
| Установите значение true, если требуется вернуть индексы удалённых точек. Подробнее... |
|
|
| |
| PointCloudConstPtr | input_ |
| Входной набор данных облака точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор используемых индексов точек. Подробнее... |
|
| bool | use_indices_ |
| Установите значение true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, создаётся набор фиктивных индексов, имитирующих входной объект PointCloud. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::UniformSampling< PointT >
UniformSampling формирует локальную 3D-сетку на заданном облаке точек PointCloud, а также прореживает и фильтрует данные.
Класс UniformSampling создаёт 3D-сетку вокселей (представьте её как набор небольших трёхмерных кубов в пространстве) поверх входных данных облака точек. Затем все точки в каждом вокселе (то есть в трёхмерном кубе) аппроксимируются ближайшей к центру вокселя точкой (то есть выполняется прореживание).
- См. также
- VoxelGrid
Определение в строке 60 файла uniform_sampling.h.
Документация по псевдонимам типов-членов
ConstPtr
| using pcl::UniformSampling< PointT >::ConstPtr = shared_ptr<const UniformSampling<PointT> > |
Определение в строке 75 файла uniform_sampling.h.
Ptr
| using pcl::UniformSampling< PointT >::Ptr = shared_ptr<UniformSampling<PointT> > |
Определение в строке 74 файла uniform_sampling.h.
Документация по конструкторам и деструкторам
UniformSampling()
| inline |
Конструктор без параметров.
Определение в строке 80 файла uniform_sampling.h.
Ссылки: pcl::Filter< PointT >::filter_name_.
~UniformSampling()
| inlineoverride |
Деструктор.
Определение в строке 94 файла uniform_sampling.h.
Документация по функциям-членам
applyFilter()
| overrideprotectedvirtual |
Результаты фильтрации представлены массивом индексов.
- Параметры
-
[out] indices Результирующие индексы.
Реализует pcl::FilterIndices< PointT >.
Определение в строке 47 файла uniform_sampling.hpp.
Ссылки: pcl::UniformSampling< PointT >::Leaf::count, pcl::UniformSampling< PointT >::Leaf::idx и pcl::isXYZFinite().
getMinimumPointsNumberPerVoxel()
| inline |
Возвращает минимальное количество точек, необходимое для использования вокселя.
Определение в строке 123 файла uniform_sampling.h.
Ссылки: pcl::UniformSampling< PointT >::min_points_per_voxel_.
setMinimumPointsNumberPerVoxel()
| inline |
Задаёт минимальное количество точек, необходимое для использования вокселя.
- Параметры
-
[in] min_points_per_voxel минимальное количество точек, необходимое для использования вокселя
Определение в строке 118 файла uniform_sampling.h.
Ссылки: pcl::UniformSampling< PointT >::min_points_per_voxel_.
setRadiusSearch()
| inlinevirtual |
Задаёт размер листа 3D-сетки.
- Параметры
-
radius размер листа 3D-сетки
Определение в строке 103 файла uniform_sampling.h.
Ссылки: pcl::UniformSampling< PointT >::inverse_leaf_size_, pcl::UniformSampling< PointT >::leaf_size_ и pcl::UniformSampling< PointT >::search_radius_.
Документация по данным-членам
div_b_
| protected |
Определение в строке 145 файла uniform_sampling.h.
divb_mul_
| protected |
Определение в строке 145 файла uniform_sampling.h.
inverse_leaf_size_
| protected |
Внутренние размеры листьев, хранящиеся как 1/leaf_size_ для повышения эффективности.
Определение в строке 142 файла uniform_sampling.h.
Используется в: pcl::UniformSampling< PointT >::setRadiusSearch().
leaf_size_
| protected |
Размер листа.
Определение в строке 139 файла uniform_sampling.h.
Используется в: pcl::UniformSampling< PointT >::setRadiusSearch().
leaves_
| protected |
Листья трёхмерной сетки.
Определение в строке 136 файла uniform_sampling.h.
Используется в pcl::UniformSampling< PointT >::~UniformSampling().
max_b_
| protected |
Определение в строке 145 файла uniform_sampling.h.
min_b_
| protected |
Минимальные и максимальные координаты ячеек, количество делений и множитель деления.
Определение в строке 145 файла uniform_sampling.h.
min_points_per_voxel_
| protected |
Минимальное количество точек на воксель.
Определение в строке 151 файла uniform_sampling.h.
Используется в pcl::UniformSampling< PointT >::getMinimumPointsNumberPerVoxel() и pcl::UniformSampling< PointT >::setMinimumPointsNumberPerVoxel().
search_radius_
| protected |
Радиус поиска ближайших соседей для каждой точки.
Определение в строке 148 файла uniform_sampling.h.
Используется в pcl::UniformSampling< PointT >::setRadiusSearch().
Документация для этого класса создана на основе следующих файлов:
- pcl/filters/uniform_sampling.h
- pcl/filters/impl/uniform_sampling.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_uniform_sampling.html