ConditionalRemoval фильтрует данные, удовлетворяющие определенным условиям. Подробнее...
#include <pcl/filters/conditional_removal.h>
Открытые типы | |
| 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) |
| Вызывает метод фильтрации и возвращает отфильтрованный набор данных в 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_ {false} |
| True, если объект готов к работе. Подробнее... |
|
| bool | keep_organized_ {false} |
| Сохранять структуру упорядоченных данных, заменяя отфильтрованные точки заданным пользователем значением (по умолчанию 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. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::ConditionalRemoval< PointT >
ConditionalRemoval фильтрует данные, удовлетворяющие определённым условиям.
Для ConditionalRemoval необходимо задать условие. Существует два типа условий: ConditionAnd и ConditionOr. Условия требуют одного или нескольких сравнений и/или других условий. Сравнение включает имя, оператор сравнения и значение.
Условие ConditionAnd принимает значение true, когда истинны ВСЕ содержащиеся в нём сравнения и условия.
Условие ConditionOr принимает значение true, когда истинно ЛЮБОЕ из содержащихся в нём сравнений или условий.
В зависимости от производного типа сравнения имя может соответствовать имени поля 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
| using 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 |
Конструктор по умолчанию.
Для всех объектов ConditionalRemoval требуется условие, которое можно задать с помощью метода 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.
setCondition()
| void pcl::ConditionalRemoval< PointT >::setCondition | ( | ConditionBasePtr | condition | ) |
Задаёт условие, используемое фильтром.
- Параметры
-
condition каждая точка должна удовлетворять этому условию, чтобы фильтр её не удалил
Для всех объектов ConditionalRemoval требуется условие.
Определение в строке 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