ModelOutlierRemoval фильтрует точки в облаке на основе расстояния между моделью и точкой. Подробнее...
#include <pcl/filters/model_outlier_removal.h>
Публичные типы | |
| using | PointCloudNPtr = pcl::PointCloud< pcl::Normal >::Ptr |
| using | PointCloudNConstPtr = pcl::PointCloud< pcl::Normal >::ConstPtr |
|
| |
| 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 |
Публичные члены-функции | |
| ModelOutlierRemoval (bool extract_removed_indices=false) | |
| Конструктор. Подробнее... |
|
| void | setModelCoefficients (const pcl::ModelCoefficients &model_coefficients) |
| устанавливает коэффициенты модели Подробнее... |
|
| pcl::ModelCoefficients | getModelCoefficients () const |
| возвращает коэффициенты модели Подробнее... |
|
| void | setModelType (pcl::SacModel model) |
| Установить тип модели SAC. Подробнее... |
|
| pcl::SacModel | getModelType () const |
| Получить тип модели SAC. Подробнее... |
|
| void | setThreshold (float thresh) |
| Установить порог. Подробнее... |
|
| float | getThreshold () const |
| Получить порог. Подробнее... |
|
| void | setInputNormals (const PointCloudNConstPtr normals_ptr) |
| Установить облако нормалей. Подробнее... |
|
| PointCloudNConstPtr | getInputNormals () const |
| Получить облако нормалей. Подробнее... |
|
| void | setNormalDistanceWeight (const double weight) |
| Установить весовой коэффициент расстояния нормалей. Подробнее... |
|
| double | getNormalDistanceWeight () const |
| Получить весовой коэффициент расстояния нормалей Подробнее... |
|
| void | setThresholdFunction (std::function< bool(double)> thresh) |
| Зарегистрировать другую функцию порога. Подробнее... |
|
| template<typename T > | |
| void | setThresholdFunction (bool(T::*thresh_function)(double), T &instance) |
| Зарегистрировать другую функцию порога. Подробнее... |
|
|
| |
| 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 | SampleConsensusModelPtr = typename SampleConsensusModel< PointT >::Ptr |
Защищенные члены-функции | |
| void | applyFilter (Indices &indices) override |
| Результаты фильтрации индексируются массивом indices. Подробнее... |
|
| void | applyFilterIndices (Indices &indices) |
| Результаты фильтрации индексируются массивом indices. Подробнее... |
|
| bool | checkSingleThreshold (double value) |
|
| |
| void | applyFilter (PointCloud &output) override |
| Абстрактный метод фильтра для облака точек. Подробнее... |
|
|
| |
| const std::string & | getClassName () const |
| Получить строковое представление имени этого класса. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен вызываться перед началом фактического вычисления. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен вызываться после завершения фактического вычисления. Подробнее... |
|
Защищённые атрибуты | |
| double | normals_distance_weight_ |
| PointCloudNConstPtr | cloud_normals_ |
| SampleConsensusModelPtr | model_ |
| Модель, используемая для расчёта расстояний. Подробнее... |
|
| float | thresh_ |
| Порог, используемый для разделения выбросов (removed_indices) и инлайнеров (indices). Подробнее... |
|
| Eigen::VectorXf | model_coefficients_ |
| Коэффициенты модели. Подробнее... |
|
| pcl::SacModel | model_type_ |
| Тип используемой модели (параметр, заданный пользователем). Подробнее... |
|
| std::function< bool(double)> | threshold_function_ |
|
| |
| 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. Подробнее... |
|
Подробное описание
template<typename PointT>
class pcl::ModelOutlierRemoval< PointT >
ModelOutlierRemoval фильтрует точки в облаке на основе расстояния между моделью и точкой.
Проходит по всему входному облаку один раз, автоматически фильтруя не конечные точки и точки, находящиеся вне модели, заданной setSampleConsensusModelPointer(), и порога, заданного setThreholdFunctionPointer().
Пример использования:
pcl::ModelCoefficients model_coeff; model_coeff.values.resize(4); model_coeff.values[0] = 0; model_coeff.values[1] = 0; model_coeff.values[2] = 1.5; model_coeff.values[3] = 0.5; pcl::ModelOutlierRemoval<pcl::PointXYZ> filter; filter.setModelCoefficients (model_coeff); filter.setThreshold (0.1); filter.setModelType (pcl::SACMODEL_PLANE); filter.setInputCloud (*cloud_in); filter.setFilterLimitsNegative (false); filter.filter (*cloud_out); pcl::FilterIndices::filtervoid filter(Indices &indices)Calls the filtering method and returns the filtered point cloud indices.Definition: filter_indices.h:101 pcl::FilterIndices::filter void filter(Indices &indices) Calls the filtering method and returns the filtered point cloud indices. Definition: filter_indices.h:101 pcl::ModelOutlierRemovalModelOutlierRemoval filters points in a cloud based on the distance between model and point.Definition: model_outlier_removal.h:69 pcl::ModelOutlierRemoval ModelOutlierRemoval filters points in a cloud based on the distance between model and point. Definition: model_outlier_removal.h:69 pcl::SACMODEL_PLANE@ SACMODEL_PLANEDefinition: model_types.h:47 pcl::SACMODEL_PLANE @ SACMODEL_PLANE Definition: model_types.h:47 pcl::ModelCoefficientsDefinition: ModelCoefficients.h:12 pcl::ModelCoefficients Definition: ModelCoefficients.h:12 pcl::ModelCoefficients::valuesstd::vector< float > valuesDefinition: ModelCoefficients.h:17 pcl::ModelCoefficients::values std::vector< float > values Definition: ModelCoefficients.h:17
Определение в строке 68 файла model_outlier_removal.h.
Документация по определениям типов членов
PointCloud
| protected |
Определение в строке 71 файла model_outlier_removal.h.
PointCloudConstPtr
| protected |
Определение в строке 73 файла model_outlier_removal.h.
PointCloudNConstPtr
| protected |
Определение в строке 78 файла model_outlier_removal.h.
PointCloudNPtr
| using pcl::ModelOutlierRemoval< PointT >::PointCloudNPtr = pcl::PointCloud<pcl::Normal>::Ptr |
Определение в строке 77 файла model_outlier_removal.h.
PointCloudPtr
| protected |
Определение в строке 72 файла model_outlier_removal.h.
SampleConsensusModelPtr
| protected |
Определение в строке 74 файла model_outlier_removal.h.
Конструктор & Деструктор
ModelOutlierRemoval()
| inline |
Конструктор.
- Parameters
-
[in] extract_removed_indices Установите в значение true, если необходимо извлечь индексы удаленных точек (по умолчанию = false).
Определение в строке 84 файла model_outlier_removal.h.
Ссылки на pcl::Filter< PointT >::filter_name_, pcl::ModelOutlierRemoval< PointT >::normals_distance_weight_, pcl::ModelOutlierRemoval< PointT >::setThresholdFunction() и pcl::ModelOutlierRemoval< PointT >::thresh_.
Документация по функциям
applyFilter()
| inlineoverrideprotectedvirtual |
Отфильтрованные результаты индексируются массивом индексов.
- Parameters
-
[out] indices Результирующие индексы.
Реализует pcl::FilterIndices< PointT >.
Определение в строке 206 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::applyFilterIndices().
applyFilterIndices()
| protected |
Отфильтрованные результаты индексируются массивом индексов.
- Parameters
-
[out] indices Результирующие индексы.
Определение в строке 145 файла model_outlier_removal.hpp.
Ссылки на pcl::isFinite().
Используется в pcl::ModelOutlierRemoval< PointT >::applyFilter().
checkSingleThreshold()
| inlineprotected |
Определение в строке 235 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::thresh_.
getInputNormals()
| inline |
Получить облако нормалей.
Определение в строке 153 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::cloud_normals_.
getModelCoefficients()
| inline |
Возвращает коэффициенты модели.
Определение в строке 107 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::model_coefficients_ и pcl::ModelCoefficients::values.
getModelType()
| inline |
Получить тип используемой модели SAC.
Определение в строке 125 файла model_outlier_removal.h.
getNormalDistanceWeight()
| inline |
Получить вес расстояния до нормали.
Определение в строке 167 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::normals_distance_weight_.
getThreshold()
| inline |
Получить значение порога.
Определение в строке 139 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::thresh_.
Установить облако нормалей
| inline |
Установить облако нормалей.
Определение в строке 146 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::cloud_normals_.
Установить коэффициенты модели
| inline |
Устанавливает коэффициенты модели.
Определение в строке 95 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::model_coefficients_ и pcl::ModelCoefficients::values.
Установить тип модели
| inline |
Установить тип используемой модели SAC.
Определение в строке 118 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::model_type_.
Установить вес расстояния до нормали
| inline |
Установить вес расстояния до нормали.
Определение в строке 160 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::normals_distance_weight_.
setThreshold()
| inline |
Установить порог.
Определение в строке 132 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::thresh_.
setThresholdFunction() [1/2]
| inline |
Зарегистрировать другую функцию порога.
- Параметры
-
[in] thresh_function указатель на функцию порога [in] instance
Определение в строке 186 файла model_outlier_removal.h.
Ссылается на pcl::ModelOutlierRemoval< PointT >::setThresholdFunction().
setThresholdFunction() [2/2]
| inline |
Зарегистрировать другую функцию порога.
- Параметры
-
[in] thresh указатель на функцию порога
Определение в строке 176 файла model_outlier_removal.h.
Ссылки на pcl::ModelOutlierRemoval< PointT >::threshold_function_.
Используется в pcl::ModelOutlierRemoval< PointT >::ModelOutlierRemoval() и pcl::ModelOutlierRemoval< PointT >::setThresholdFunction().
Документация данных членов
cloud_normals_
| protected |
Определение в строке 219 файла model_outlier_removal.h.
Используется в pcl::ModelOutlierRemoval< PointT >::getInputNormals() и pcl::ModelOutlierRemoval< PointT >::setInputNormals().
model_
| protected |
Модель, используемая для расчёта расстояний.
Определение в строке 222 файла model_outlier_removal.h.
model_coefficients_
| protected |
Коэффициенты модели.
Определение в строке 228 файла model_outlier_removal.h.
Используется в pcl::ModelOutlierRemoval< PointT >::getModelCoefficients() и pcl::ModelOutlierRemoval< PointT >::setModelCoefficients().
model_type_
| protected |
Тип используемой модели (параметр, задаваемый пользователем).
Определение в строке 231 файла model_outlier_removal.h.
Используется в pcl::ModelOutlierRemoval< PointT >::getModelType() и pcl::ModelOutlierRemoval< PointT >::setModelType().
normals_distance_weight_
| protected |
thresh_
| protected |
Порог, используемый для разделения выбросов (removed_indices) и инлайнов (indices).
Определение в строке 225 файла model_outlier_removal.h.
Используется в pcl::ModelOutlierRemoval< PointT >::checkSingleThreshold(), pcl::ModelOutlierRemoval< PointT >::getThreshold(), pcl::ModelOutlierRemoval< PointT >::ModelOutlierRemoval() и pcl::ModelOutlierRemoval< PointT >::setThreshold().
threshold_function_
| protected |
Определение в строке 232 файла model_outlier_removal.h.
Используется в pcl::ModelOutlierRemoval< PointT >::setThresholdFunction().
Документация для этого класса была сгенерирована из следующих файлов:
- pcl/filters/model_outlier_removal.h
- pcl/filters/impl/model_outlier_removal.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_model_outlier_removal.html