ConditionalRemoval фильтрует данные, удовлетворяющие определённым условиям. Подробнее...
#include <pcl/filters/conditional_removal.h>
Public Types | |
| using | ConditionBase = pcl::ConditionBase< PointT > |
| using | ConditionBasePtr = typename ConditionBase::Ptr |
| using | ConditionBaseConstPtr = typename ConditionBase::ConstPtr |
| using | Ptr = shared_ptr< ConditionalRemoval< PointT > > |
| using | ConstPtr = shared_ptr< const ConditionalRemoval< 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 |
Публичные члены-функции | |
| ConditionalRemoval (int extract_removed_indices=false) | |
| Конструктор по умолчанию. Подробнее... |
|
| void | setKeepOrganized (bool val) |
| Устанавливает, должны ли отфильтрованные точки быть сохранены и установлены в значение, заданное с помощью setUserFilterValue (по умолчанию: NaN), или удалены из PointCloud, что может нарушить его структуру. Подробнее... |
|
| bool | getKeepOrganized () const |
| void | setUserFilterValue (float val) |
| Укажите значение, в которое должны быть установлены отфильтрованные точки вместо их удаления. Подробнее... |
|
| void | setCondition (ConditionBasePtr condition) |
| Устанавливает условие, которое будет использовать фильтр. Подробнее... |
|
|
| |
| Filter (bool extract_removed_indices=false) | |
| Пустой конструктор. Подробнее... |
|
| IndicesConstPtr const | getRemovedIndices () const |
| Получить индексы удаляемых точек. Подробнее... |
|
| void | getRemovedIndices (PointIndices &pi) |
| Получить индексы удаляемых точек. Подробнее... |
|
| void | filter (PointCloud &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 (PointCloud &output) override |
|
Фильтр облака точек. Подробнее... |
|
|
| |
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен быть вызван перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен быть вызван после завершения фактического вычисления. Подробнее... |
|
Защищенные атрибуты | |
| bool | capable_ |
| Истинно, если способно. Подробнее... |
|
| bool | keep_organized_ |
| Сохранять структуру данных упорядоченной, задавая отфильтрованные точки заданным значением (по умолчанию NaN). Подробнее... |
|
| ConditionBasePtr | condition_ |
| Условие, используемое для фильтрации. Подробнее... |
|
| float | user_filter_value_ |
| Заданное пользователем значение, которое будет установлено для любой отфильтрованной точки. Подробнее... |
|
|
| |
| 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::ConditionalRemoval< PointT >
ConditionalRemoval фильтрует данные, удовлетворяющие определенным условиям.
Для ConditionalRemoval необходимо предоставить условие. Существуют два типа условий: ConditionAnd и ConditionOr. Условия требуют одного или нескольких сравнений и/или других условий. Сравнение имеет имя, оператор сравнения и значение.
ConditionAnd будет оцениваться как истинное, когда ВСЕ его заключённые сравнения и условия истинны.
ConditionOr будет оцениваться как истинное, когда ЛЮБОЕ из его заключённых сравнений и условий истинно.
В зависимости от производного типа сравнения, имя может соответствовать имени поля PointCloud или компоненту цвета в цветовом пространстве rgb или hsi.
Вот пример использования:
// Build the condition
pcl::ConditionAnd<PointT>::Ptr range_cond (new pcl::ConditionAnd<PointT> ());
range_cond->addComparison (pcl::FieldComparison<PointT>::Ptr (new pcl::FieldComparison<PointT>("z", pcl::ComparisonOps::LT, 2.0)));
range_cond->addComparison (pcl::FieldComparison<PointT>::Ptr (new pcl::FieldComparison<PointT>("z", pcl::ComparisonOps::GT, 0.0)));
// Build the filter
pcl::ConditionalRemoval<PointT> range_filt;
range_filt.setCondition (range_cond);
range_filt.setKeepOrganized (false);
pcl::ConditionAndAND condition.Definition: conditional_removal.h:505
pcl::ConditionAnd
AND condition.
Definition: conditional_removal.h:505
pcl::ConditionAnd::Ptrshared_ptr< ConditionAnd< PointT > > PtrDefinition: conditional_removal.h:510
pcl::ConditionAnd::Ptr
shared_ptr< ConditionAnd< PointT > > Ptr
Definition: conditional_removal.h:510
pcl::ConditionalRemovalConditionalRemoval filters data that satisfies certain conditions.Definition: conditional_removal.h:592
pcl::ConditionalRemoval
ConditionalRemoval filters data that satisfies certain conditions.
Definition: conditional_removal.h:592
pcl::ConditionalRemoval::setConditionvoid setCondition(ConditionBasePtr condition)Set the condition that the filter will use.Definition: conditional_removal.hpp:617
pcl::ConditionalRemoval::setCondition
void setCondition(ConditionBasePtr condition)
Set the condition that the filter will use.
Definition: conditional_removal.hpp:617
pcl::ConditionalRemoval::setKeepOrganizedvoid setKeepOrganized(bool val)Set whether the filtered points should be kept and set to the value given through setUserFilterValue ...Definition: conditional_removal.h:635
pcl::ConditionalRemoval::setKeepOrganized
void setKeepOrganized(bool val)
Set whether the filtered points should be kept and set to the value given through setUserFilterValue ...
Definition: conditional_removal.h:635
pcl::FieldComparisonThe field-based specialization of the comparison object.Definition: conditional_removal.h:130
pcl::FieldComparison
The field-based specialization of the comparison object.
Definition: conditional_removal.h:130
pcl::FieldComparison::Ptrshared_ptr< FieldComparison< PointT > > PtrDefinition: conditional_removal.h:136
pcl::FieldComparison::Ptr
shared_ptr< FieldComparison< PointT > > Ptr
Definition: conditional_removal.h:136
pcl::ComparisonOps::GT@ GTDefinition: conditional_removal.h:54
pcl::ComparisonOps::GT
@ GT
Definition: conditional_removal.h:54
pcl::ComparisonOps::LT@ LTDefinition: conditional_removal.h:54
pcl::ComparisonOps::LT
@ LT
Definition: conditional_removal.h:54
Определение в строке 591 файла conditional_removal.h.
Документация по псевдонимам типов членов
ConditionBase
| используя pcl::ConditionalRemoval< PointT >::ConditionBase = pcl::ConditionBase<PointT> |
Определение в строке 605 файла conditional_removal.h.
ConditionBaseConstPtr
| using pcl::ConditionalRemoval< PointT >::ConditionBaseConstPtr = typename ConditionBase::ConstPtr |
Определение в строке 607 файла conditional_removal.h.
ConditionBasePtr
| using pcl::ConditionalRemoval< PointT >::ConditionBasePtr = typename ConditionBase::Ptr |
Определение в строке 606 файла conditional_removal.h.
ConstPtr
| using pcl::ConditionalRemoval< PointT >::ConstPtr = shared_ptr<const ConditionalRemoval<PointT> > |
Определение в строке 610 файла conditional_removal.h.
Ptr
| using pcl::ConditionalRemoval< PointT >::Ptr = shared_ptr<ConditionalRemoval<PointT> > |
Определение в строке 609 файла conditional_removal.h.
Конструктор & Деструктор документации
ConditionalRemoval()
| inline |
Конструктор по умолчанию.
Все ConditionalRemovals требуют условия, которое может быть установлено с помощью метода setCondition
- Параметры
-
extract_removed_indices извлекать отфильтрованные индексы из вектора индексов
Определение в строке 619 файла conditional_removal.h.
Ссылки на pcl::Filter< PointT >::filter_name_.
Документация функций-членов
applyFilter()
| overrideprotectedvirtual |
Фильтровать облако точек.
- Параметры
-
output результирующее сообщение облака точек
Реализует pcl::Filter< PointT >.
Определение в строке 625 файла conditional_removal.hpp.
Ссылки на pcl::copyPoint(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::is_dense, pcl::PointCloud< PointT >::resize(), и pcl::PointCloud< PointT >::width.
getKeepOrganized()
| inline |
Определение в строке 641 файла conditional_removal.h.
Ссылки на pcl::ConditionalRemoval< PointT >::keep_organized_.
setCondition()
| void pcl::ConditionalRemoval< PointT >::setCondition | ( | ConditionBasePtr | condition | ) |
Устанавливает условие, которое будет использовать фильтр.
- Параметры
-
condition каждая точка должна удовлетворять этому условию, чтобы избежать удаления фильтром
Все ConditionalRemovals требуют условия
Определение в строке 617 файла conditional_removal.hpp.
Ссылка на pcl::kinfuLS::WorldModel< PointT >::getExistingData(), и pcl::kinfuLS::WorldModel< PointT >::setSliceAsNans().
setKeepOrganized()
| inline |
Установить, должны ли отфильтрованные точки сохраняться и устанавливаться в значение, заданное через setUserFilterValue (по умолчанию: NaN), или удаляться из PointCloud, тем самым потенциально нарушая его структурированность.
По умолчанию, точки удаляются.
- Параметры
-
val установить в true, если отфильтрованные точки должны сохраняться и устанавливаться в заданное значение пользователя (по умолчанию: NaN)
Определение в строке 635 файла conditional_removal.h.
Ссылки на pcl::ConditionalRemoval< PointT >::keep_organized_.
Используется в pcl::kinfuLS::WorldModel< PointT >::getExistingData() и pcl::kinfuLS::WorldModel< PointT >::setSliceAsNans().
setUserFilterValue()
| inline |
Указать значение, которое должны получить отфильтрованные точки вместо их удаления.
Используется совместно с setKeepOrganized ().
- Параметры
-
val заданное пользователем значение, в которое должны быть установлены измерения отфильтрованной точки
Определение в строке 652 файла conditional_removal.h.
Ссылки на pcl::ConditionalRemoval< PointT >::user_filter_value_.
Документация по данным-членам
capable_
| protected |
True, если возможно.
Определение в строке 674 файла conditional_removal.h.
condition_
| protected |
Условие для фильтрации.
Определение в строке 682 файла conditional_removal.h.
keep_organized_
| protected |
Сохранить структуру данных упорядоченной, установив отфильтрованные точки в заданное пользователем значение (по умолчанию NaN).
Определение в строке 679 файла conditional_removal.h.
Ссылки на pcl::ConditionalRemoval< PointT >::getKeepOrganized() и pcl::ConditionalRemoval< PointT >::setKeepOrganized().
user_filter_value_
| protected |
Заданное пользователем значение, которое будет установлено для любой отфильтрованной точки.
Преобразовано к соответствующему типу поля.
Определение в строке 687 файла conditional_removal.h.
Ссылки на pcl::ConditionalRemoval< PointT >::setUserFilterValue().
Документация по этому классу сгенерирована из следующих файлов:
- pcl/filters/conditional_removal.h
- pcl/filters/impl/conditional_removal.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_conditional_removal.html