#include <pcl/2d/edge.h>
Общедоступные типы | |
| enum |
OUTPUT_TYPE { OUTPUT_Y , OUTPUT_X , OUTPUT_X_Y , OUTPUT_MAGNITUDE , OUTPUT_DIRECTION , OUTPUT_MAGNITUDE_DIRECTION , OUTPUT_ALL } |
| enum |
DETECTOR_KERNEL_TYPE { CANNY , SOBEL , PREWITT , ROBERTS , LOG , DERIVATIVE_CENTRAL , DERIVATIVE_FORWARD , DERIVATIVE_BACKWARD } |
| using | Ptr = shared_ptr< Edge< PointInT, PointOutT > > |
| using | ConstPtr = shared_ptr< const Edge< PointInT, PointOutT > > |
Общедоступные функции-члены | |
| Edge () | |
| void | setOutputType (OUTPUT_TYPE output_type) |
| Задать тип выходных данных. Подробнее... |
|
| void | setHysteresisThresholdLow (float threshold) |
| void | setHysteresisThresholdHigh (float threshold) |
| void | sobelMagnitudeDirection (const pcl::PointCloud< PointInT > &input_x, const pcl::PointCloud< PointInT > &input_y, pcl::PointCloud< PointOutT > &output) |
| void | canny (const pcl::PointCloud< PointInT > &input_x, const pcl::PointCloud< PointInT > &input_y, pcl::PointCloud< PointOutT > &output) |
| Выполняет обнаружение границ методом Кэнни с двумя отдельными входными изображениями для горизонтальных и вертикальных производных. Подробнее... |
|
| void | detectEdge (pcl::PointCloud< PointOutT > &output) |
| Вспомогательная функция для обнаружения границ с использованием переменной detector_kernel_type_. Подробнее... |
|
| void | detectEdgeCanny (pcl::PointCloud< PointOutT > &output) |
| Все границы с величиной выше t_high всегда классифицируются как границы. Подробнее... |
|
| void | detectEdgeSobel (pcl::PointCloud< PointOutT > &output) |
| Для обнаружения границ используется оператор Собеля. Подробнее... |
|
| void | detectEdgePrewitt (pcl::PointCloud< PointOutT > &output) |
| Для обнаружения границ используется оператор Прюитта. Подробнее... |
|
| void | detectEdgeRoberts (pcl::PointCloud< PointOutT > &output) |
| Для обнаружения границ используется оператор Робертса. Подробнее... |
|
| void | detectEdgeLoG (const float kernel_sigma, const float kernel_size, pcl::PointCloud< PointOutT > &output) |
| Для обнаружения границ используется оператор LoG. Подробнее... |
|
| void | computeDerivativeXCentral (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси X с использованием ядра kernel::derivativeYCentralKernel. Подробнее... |
|
| void | computeDerivativeYCentral (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси Y с использованием ядра kernel::derivativeYCentralKernel. Подробнее... |
|
| void | computeDerivativeXForward (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси X с использованием ядра kernel::derivativeYForwardKernel. Подробнее... |
|
| void | computeDerivativeYForward (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси Y с использованием ядра kernel::derivativeYForwardKernel. Подробнее... |
|
| void | computeDerivativeXBackward (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси X с использованием ядра kernel::derivativeXBackwardKernel. Подробнее... |
|
| void | computeDerivativeYBackward (pcl::PointCloud< PointOutT > &output) |
| Вычисляет производные изображения по оси Y с использованием ядра kernel::derivativeYBackwardKernel. Подробнее... |
|
| void | applyFilter (pcl::PointCloud< PointOutT > &) |
| Переопределяемая функция для реализации интерфейса pcl::Filter. Подробнее... |
|
| void | setInputCloud (PointCloudInPtr input) |
| Задать указатель на входное облако точек. Подробнее... |
|
Подробное описание
template<typename PointInT, typename PointOutT>
class pcl::Edge< PointInT, PointOutT >
Документация псевдонимов типов-членов
ConstPtr
Ptr
Документация перечислений-членов
DETECTOR_KERNEL_TYPE
| enum pcl::Edge::DETECTOR_KERNEL_TYPE |
OUTPUT_TYPE
| enum pcl::Edge::OUTPUT_TYPE |
Документация конструкторов и деструкторов
Edge()
Документация функций-членов
applyFilter()
| void pcl::Edge< PointInT, PointOutT >::applyFilter | ( | pcl::PointCloud< PointOutT > & | ) |
Переопределяемая функция для реализации интерфейса pcl::Filter.
canny()
| void pcl::Edge< PointInT, PointOutT >::canny | ( | const pcl::PointCloud< PointInT > & | input_x, |
| const pcl::PointCloud< PointInT > & | input_y, | ||
| pcl::PointCloud< PointOutT > & | output | ||
| ) |
Выполняет обнаружение границ методом Кэнни с двумя отдельными входными изображениями для горизонтальных и вертикальных производных.
Все границы с величиной выше t_high всегда классифицируются как границы. Все границы ниже t_low отбрасываются. Значения границ между t_low и t_high классифицируются как границы, только если они соединены с границами, величина которых > t_high, и расположены в направлении, перпендикулярном такой сильной границе.
- Параметры
-
[in] input_x Входное облако точек, переданное по ссылке, для первой производной в горизонтальном направлении [in] input_y Входное облако точек, переданное по ссылке, для первой производной в вертикальном направлении [out] output Выходное облако точек, переданное по ссылке
Определение в строке 374 файла edge.hpp.
Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::makeShared(), pcl::PointCloud< PointT >::resize() и pcl::PointCloud< PointT >::width.
Используется в pcl::OrganizedEdgeFromNormals< PointT, PointNT, PointLT >::extractEdges().
computeDerivativeXBackward()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeXBackward | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по оси X с использованием ядра kernel::derivativeXBackwardKernel.
Эта функция НЕ включает этап сглаживания. Перед использованием этой функции изображение следует сгладить, чтобы уменьшить шум.
- Параметры
-
output Выходное облако точек, переданное по ссылке
computeDerivativeXCentral()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeXCentral | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по оси X с использованием ядра kernel::derivativeYCentralKernel.
Эта функция НЕ включает этап сглаживания. Перед использованием этой функции изображение следует сгладить, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, переданное по ссылке
computeDerivativeXForward()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeXForward | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по направлению X с использованием ядра kernel::derivativeYForwardKernel.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
computeDerivativeYBackward()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeYBackward | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по направлению Y с использованием ядра kernel::derivativeYBackwardKernel.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
computeDerivativeYCentral()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeYCentral | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по направлению Y с использованием ядра kernel::derivativeYCentralKernel.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
computeDerivativeYForward()
| void pcl::Edge< PointInT, PointOutT >::computeDerivativeYForward | ( | pcl::PointCloud< PointOutT > & | output | ) |
Вычисляет производные изображения по направлению Y с использованием ядра kernel::derivativeYForwardKernel.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
detectEdge()
| void pcl::Edge< PointInT, PointOutT >::detectEdge | ( | pcl::PointCloud< PointOutT > & | output | ) |
Это вспомогательная функция, выполняющая обнаружение границ на основе переменной detector_kernel_type_.
- Параметры
-
[out] output
detectEdgeCanny()
| void pcl::Edge< PointInT, PointOutT >::detectEdgeCanny | ( | pcl::PointCloud< PointOutT > & | output | ) |
Все границы с величиной выше t_high всегда классифицируются как границы.
Все границы с величиной ниже t_low отбрасываются. Значения границ между t_low и t_high классифицируются как границы, только если они соединены с границами, величина которых > t_high, и расположены в направлении, перпендикулярном такой сильной границе.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
Определение в строке 310 файла edge.hpp.
Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::resize() и pcl::PointCloud< PointT >::width.
Используется в: pcl::OrganizedEdgeFromRGB< PointT, PointLT >::extractEdges().
detectEdgeLoG()
| void pcl::Edge< PointInT, PointOutT >::detectEdgeLoG | ( | const float | kernel_sigma, |
| const float | kernel_size, | ||
| pcl::PointCloud< PointOutT > & | output | ||
| ) |
Использует ядро LoG для обнаружения границ.
Переходы через ноль оператора Лапласа, применённого к изображению, указывают на границы. Перед применением оператора Лапласа изображение сглаживается с помощью гауссова ядра. Это необходимо, поскольку оператор Лапласа использует производную изображения второго порядка и поэтому очень чувствителен к шуму. Реализация не является двухэтапной: ядро LoG применяется напрямую.
- Параметры
-
[in] kernel_sigma Дисперсия используемого ядра LoG. [in] kernel_size Используется ядро LoG размером kernel_size x kernel_size. [out] output Выходное облако точек, передаваемое по ссылке.
detectEdgePrewitt()
| void pcl::Edge< PointInT, PointOutT >::detectEdgePrewitt | ( | pcl::PointCloud< PointOutT > & | output | ) |
Использует ядро Превитта для обнаружения границ.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
Определение в строке 126 файла edge.hpp.
Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.
detectEdgeRoberts()
| void pcl::Edge< PointInT, PointOutT >::detectEdgeRoberts | ( | pcl::PointCloud< PointOutT > & | output | ) |
detectEdgeSobel()
| void pcl::Edge< PointInT, PointOutT >::detectEdgeSobel | ( | pcl::PointCloud< PointOutT > & | output | ) |
Использует ядро Собеля для обнаружения границ.
Эта функция НЕ выполняет сглаживание. Перед использованием функции следует сгладить изображение, чтобы уменьшить шум.
- Параметры
-
[out] output Выходное облако точек, передаваемое по ссылке
Определение в строке 48 файла edge.hpp.
Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.
setHysteresisThresholdHigh()
| inline |
Определение в строке 146 файла edge.h.
Используется в: pcl::OrganizedEdgeFromRGB< PointT, PointLT >::extractEdges() и pcl::OrganizedEdgeFromNormals< PointT, PointNT, PointLT >::extractEdges().
setHysteresisThresholdLow()
| inline |
Определение в строке 140 файла edge.h.
Используется в: pcl::OrganizedEdgeFromRGB< PointT, PointLT >::extractEdges() и pcl::OrganizedEdgeFromNormals< PointT, PointNT, PointLT >::extractEdges().
setInputCloud()
| inline |
Задаёт указатель на входное облако точек.
- Параметры
-
[in] input указатель на входное облако точек
Определение в строке 295 файла edge.h.
Используется в: pcl::OrganizedEdgeFromRGB< PointT, PointLT >::extractEdges().
setOutputType()
| inline |
sobelMagnitudeDirection()
| void pcl::Edge< PointInT, PointOutT >::sobelMagnitudeDirection | ( | const pcl::PointCloud< PointInT > & | input_x, |
| const pcl::PointCloud< PointInT > & | input_y, | ||
| pcl::PointCloud< PointOutT > & | output | ||
| ) |
- Параметры
-
[in] input_x [in] input_y [out] output
Определение в строке 85 файла edge.hpp.
Ссылки: pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::makeShared(), pcl::PointCloud< PointT >::resize(), pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.
Документация для этого класса создана на основе следующих файлов:
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_edge.html