RadiusOutlierRemoval фильтрует точки в облаке на основе количества соседей, которые у них есть. Подробнее...
#include <pcl/filters/radius_outlier_removal.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< RadiusOutlierRemoval< PointT > > |
| using | ConstPtr = shared_ptr< const RadiusOutlierRemoval< 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 |
Общедоступные члены-функции | |
| RadiusOutlierRemoval (bool extract_removed_indices=false) | |
| Конструктор. Подробнее... |
|
| void | setRadiusSearch (double radius) |
| Установить радиус сферы, определяющей, какие точки являются соседями. Подробнее... |
|
| double | getRadiusSearch () |
| Получить радиус сферы, определяющей, какие точки являются соседями. Подробнее... |
|
| void | setMinNeighborsInRadius (int min_pts) |
| Установить количество соседей, которые должны присутствовать, чтобы быть классифицированными как внутренние точки. Подробнее... |
|
| int | getMinNeighborsInRadius () |
| Получить количество соседей, которые должны присутствовать, чтобы быть классифицированными как внутренние точки. Подробнее... |
|
|
| |
| 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, чтобы сократить код. Подробнее... |
|
Защищенные типы | |
| using | PointCloud = typename FilterIndices< PointT >::PointCloud |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | SearcherPtr = typename pcl::search::Search< PointT >::Ptr |
Защищенные члены-функции | |
| void | applyFilter (Indices &indices) override |
| Отфильтрованные результаты индексируются массивом indices. Подробнее... |
|
| void | applyFilterIndices (Indices &indices) |
| Отфильтрованные результаты индексируются массивом indices. Подробнее... |
|
|
| |
| void | applyFilter (PointCloud &output) override |
| Абстрактный метод фильтра для облака точек. Подробнее... |
|
|
| |
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен вызываться перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| bool | negative_ |
| False = стандартное поведение фильтра (по умолчанию), true = инвертированное поведение. Подробнее... |
|
| bool | keep_organized_ |
| 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. Подробнее... |
|
Подробное описание
шаблон<typename PointT>
класс pcl::RadiusOutlierRemoval< PointT >
RadiusOutlierRemoval фильтрует точки в облаке на основе количества соседей.
Итерируется по всему входу один раз, и для каждой точки извлекает количество соседей в заданном радиусе. Точка будет считаться выбросом, если у нее слишком мало соседей, как определено в setMinNeighborsInRadius(). Радиус может быть изменен с помощью setRadiusSearch().
Соседи, найденные для каждой точки запроса, будут найдены среди ВСЕХ точек setInputCloud(), а не только тех, которые индексируются setIndices(). Метод setIndices() только индексирует точки, которые будут итерироваться в качестве точек запроса поиска.
Пример использования:
pcl::RadiusOutlierRemoval<PointType> rorfilter (true); // Initializing with true will allow us to extract the removed indices rorfilter.setInputCloud (cloud_in); rorfilter.setRadiusSearch (0.1); rorfilter.setMinNeighborsInRadius (5); rorfilter.setNegative (true); rorfilter.filter (*cloud_out); // The resulting cloud_out contains all points of cloud_in that have 4 or less neighbors within the 0.1 search radius indices_rem = rorfilter.getRemovedIndices (); // The indices_rem array indexes all points of cloud_in that have 5 or more neighbors within the 0.1 search radius pcl::RadiusOutlierRemovalRadiusOutlierRemoval filters points in a cloud based on the number of neighbors they have.Definition: radius_outlier_removal.h:72 pcl::RadiusOutlierRemoval RadiusOutlierRemoval filters points in a cloud based on the number of neighbors they have. Definition: radius_outlier_removal.h:72
Определение в строке 71 файла radius_outlier_removal.h.
Документация по переопределенным типам членов
ConstPtr
| using pcl::RadiusOutlierRemoval< PointT >::ConstPtr = shared_ptr<const RadiusOutlierRemoval<PointT> > |
Определение в строке 82 файла radius_outlier_removal.h.
PointCloud
| protected |
Определение в строке 74 файла radius_outlier_removal.h.
PointCloudConstPtr
| protected |
Определение в строке 76 файла radius_outlier_removal.h.
PointCloudPtr
| protected |
Определение в строке 75 файла radius_outlier_removal.h.
Ptr
| using pcl::RadiusOutlierRemoval< PointT >::Ptr = shared_ptr<RadiusOutlierRemoval<PointT> > |
Определение в строке 81 файла radius_outlier_removal.h.
SearcherPtr
| protected |
Определение в строке 77 файла radius_outlier_removal.h.
Конструктор и деструктор документации
RadiusOutlierRemoval()
| inline |
Конструктор.
- Параметры
-
[in] extract_removed_indices Установите в значение true, если вы хотите иметь возможность извлечь индексы точек, удаляемых (по умолчанию = false).
Определение в строке 88 файла radius_outlier_removal.h.
Ссылки на pcl::Filter< PointT >::filter_name_.
Документация по членам функции
applyFilter()
| inlineoverrideprotectedvirtual |
Отфильтрованные результаты индексируются массивом индексов.
- Параметры
-
[out] indices Результирующие индексы.
Реализует pcl::FilterIndices< PointT >.
Определение в строке 156 файла radius_outlier_removal.h.
Ссылки на pcl::RadiusOutlierRemoval< PointT >::applyFilterIndices().
applyFilterIndices()
| protected |
Результаты фильтрации индексируются массивом индексов.
- Параметры
-
[out] indices Результирующие индексы.
Определение в строке 49 файла radius_outlier_removal.hpp.
Используется в pcl::RadiusOutlierRemoval< PointT >::applyFilter().
getMinNeighborsInRadius()
| inline |
Получение количества соседей, необходимого для классификации точки как внутренней.
Число точек в сфере радиусом setRadiusSearch() от точки запроса должно быть равно или больше этого числа, чтобы точка была классифицирована как внутренняя (то есть не будет отфильтрована).
- Возвращает
- Минимальное количество соседей (по умолчанию = 1).
Определение в строке 136 файла radius_outlier_removal.h.
getRadiusSearch()
| inline |
Получение радиуса сферы, определяющего, какие точки являются соседями.
Количество точек в пределах этого расстояния от точки запроса должно быть равно или больше setMinNeighborsInRadius(), чтобы точка была классифицирована как внутренняя (то есть не будет отфильтрована).
- Возвращает
- Радиус сферы для поиска ближайших соседей.
Определение в строке 114 файла radius_outlier_removal.h.
setMinNeighborsInRadius()
| inline |
Установить количество соседей, необходимое для классификации точки как внутренней.
Число точек в сфере радиусом setRadiusSearch() от точки запроса должно быть равно или больше этого числа, чтобы точка была классифицирована как внутренняя (то есть не будет отфильтрована).
- Параметры
-
min_pts Минимальное количество соседей (по умолчанию = 1).
Определение в строке 125 файла radius_outlier_removal.h.
setRadiusSearch()
| inline |
Установить радиус сферы, определяющей, какие точки являются соседями.
Количество точек в пределах этого расстояния от точки запроса должно быть равно или больше setMinNeighborsInRadius(), чтобы точка была классифицирована как внутренняя (то есть не будет отфильтрована).
- Параметры
-
[in] radius Радиус сферы для поиска ближайших соседей.
Определение в строке 103 файла radius_outlier_removal.h.
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/filters/radius_outlier_removal.h
- pcl/filters/impl/radius_outlier_removal.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_radius_outlier_removal.html