Реализация двустороннего фильтра, основанная на следующей статье: Подробнее...
#include <pcl/surface/bilateral_upsampling.h>
Общедоступные типы | |
| using | Ptr = shared_ptr< BilateralUpsampling< PointInT, PointOutT > > |
| using | ConstPtr = shared_ptr< const BilateralUpsampling< PointInT, PointOutT > > |
| using | PointCloudOut = pcl::PointCloud< PointOutT > |
|
| |
| using | Ptr = shared_ptr< CloudSurfaceProcessing< PointInT, PointOutT > > |
| using | ConstPtr = shared_ptr< const CloudSurfaceProcessing< PointInT, PointOutT > > |
|
| |
| using | PointCloud = pcl::PointCloud< PointInT > |
| using | PointCloudPtr = typename PointCloud::Ptr |
| using | PointCloudConstPtr = typename PointCloud::ConstPtr |
| using | PointIndicesPtr = PointIndices::Ptr |
| using | PointIndicesConstPtr = PointIndices::ConstPtr |
Общедоступные члены-функции | |
| BilateralUpsampling () | |
| Конструктор. Подробнее... |
|
| void | setWindowSize (int window_size) |
| Метод, устанавливающий размер окна фильтра. Подробнее... |
|
| int | getWindowSize () const |
| Возвращает размер окна фильтра. Подробнее... |
|
| void | setSigmaColor (const float &sigma_color) |
| Метод, устанавливающий параметр sigma_color. Подробнее... |
|
| float | getSigmaColor () const |
| Возвращает текущее значение sigma_color. Подробнее... |
|
| void | setSigmaDepth (const float &sigma_depth) |
| Метод, устанавливающий параметр sigma_depth. Подробнее... |
|
| float | getSigmaDepth () const |
| Возвращает текущее значение sigma_depth. Подробнее... |
|
| void | setProjectionMatrix (const Eigen::Matrix3f &projection_matrix) |
| Метод, устанавливающий проекционную матрицу, используемую при обратном проектировании точек из изображения глубины в (x,y,z) координаты. Подробнее... |
|
| Eigen::Matrix3f | getProjectionMatrix () const |
| Возвращает текущую проекционную матрицу. Подробнее... |
|
| void | process (pcl::PointCloud< PointOutT > &output) override |
| Метод, выполняющий фактическую обработку входного облака точек. Подробнее... |
|
|
| |
| CloudSurfaceProcessing () | |
| Конструктор. Подробнее... |
|
| ~CloudSurfaceProcessing () override=default | |
| Пустой деструктор. Подробнее... |
|
|
| |
| 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 PointInT & | operator[] (std::size_t pos) const |
| Переопределить PointCloud оператор[] для сокращения кода. Подробнее... |
|
Общедоступные атрибуты | |
| Eigen::Matrix3f | KinectVGAProjectionMatrix |
| Eigen::Matrix3f | KinectSXGAProjectionMatrix |
Защищенные методы | |
| void | performProcessing (pcl::PointCloud< PointOutT > &output) override |
| Метод абстрактной обработки облака. Подробнее... |
|
| void | computeDistances (Eigen::MatrixXf &val_exp_depth, Eigen::VectorXf &val_exp_rgb) |
| Вычисляет расстояние для глубины и RGB-цвета. Подробнее... |
|
|
| |
| bool | initCompute () |
| Этот метод должен вызываться перед началом фактических вычислений. Подробнее... |
|
| bool | deinitCompute () |
| Этот метод должен вызываться после завершения фактических вычислений. Подробнее... |
|
Дополнительные унаследованные члены | |
|
| |
| PointCloudConstPtr | input_ |
| Входной набор точек. Подробнее... |
|
| IndicesPtr | indices_ |
| Указатель на вектор индексов точек для использования. Подробнее... |
|
| bool | use_indices_ |
| Устанавливается в true, если используются индексы точек. Подробнее... |
|
| bool | fake_indices_ |
| Если набор индексов не задан, мы создаём набор фиктивных индексов, имитирующих входной PointCloud. Подробнее... |
|
Подробное описание
template<typename PointInT, typename PointOutT>
class pcl::BilateralUpsampling< PointInT, PointOutT >
Реализация двустороннего фильтра, основанная на следующей статье:
- Kopf, Johannes and Cohen, Michael F. and Lischinski, Dani and Uyttendaele, Matt - Joint Bilateral Upsampling,
- ACM Transactions in Graphics, июль 2007
Принимает на вход цветную упорядоченную облако точек (например, PointXYZRGB или PointXYZRGBA), которая может содержать значения nan для информации о глубине, и вернёт увеличенную версию этого облака, основанную на формуле:
где S — изображение глубины, I — изображение RGB, а f и g — гауссовы функции, центрированные в 0 и со стандартными отклонениями и
Определение в строке 63 файла bilateral_upsampling.h.
Документация по типам-переменным
ConstPtr
| using pcl::BilateralUpsampling< PointInT, PointOutT >::ConstPtr = shared_ptr<const BilateralUpsampling<PointInT, PointOutT> > |
Определение в строке 67 файла bilateral_upsampling.h.
PointCloudOut
| using pcl::BilateralUpsampling< PointInT, PointOutT >::PointCloudOut = pcl::PointCloud<PointOutT> |
Определение в строке 75 файла bilateral_upsampling.h.
Ptr
| using pcl::BilateralUpsampling< PointInT, PointOutT >::Ptr = shared_ptr<BilateralUpsampling<PointInT, PointOutT> > |
Определение в строке 66 файла bilateral_upsampling.h.
Документация по конструкторам и деструкторам
BilateralUpsampling()
| inline |
Конструктор.
Определение в строке 80 файла bilateral_upsampling.h.
Ссылки на pcl::BilateralUpsampling< PointInT, PointOutT >::KinectSXGAProjectionMatrix, и pcl::BilateralUpsampling< PointInT, PointOutT >::KinectVGAProjectionMatrix.
Документация по функциям-членам
computeDistances()
| protected |
Вычисляет расстояние для глубины и RGB.
- Parameters
-
[out] val_exp_depth значения расстояния для глубины [out] val_exp_rgb значения расстояния для RGB
Определение в строке 156 файла bilateral_upsampling.hpp.
getProjectionMatrix()
| inline |
Возвращает текущую матрицу проекции.
Определение в строке 133 файла bilateral_upsampling.h.
getSigmaColor()
| inline |
Возвращает текущее значение sigma цвета.
Определение в строке 111 файла bilateral_upsampling.h.
getSigmaDepth()
| inline |
Возвращает текущее значение sigma глубины.
Определение в строке 121 файла bilateral_upsampling.h.
getWindowSize()
| inline |
Возвращает размер окна фильтра.
Определение в строке 101 файла bilateral_upsampling.h.
performProcessing()
| overrideprotectedvirtual |
Абстрактный метод обработки облака.
Реализует pcl::CloudSurfaceProcessing< PointInT, PointOutT >.
Определение в строке 88 файла bilateral_upsampling.hpp.
Ссылки на pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::resize(), и pcl::PointCloud< PointT >::width.
process()
| overridevirtual |
Метод, который выполняет фактическую обработку входного облака.
- Параметры
-
[out] output контейнер результирующего облака с апскейлингом
Реализация метода pcl::CloudSurfaceProcessing< PointInT, PointOutT >.
Определение в строке 50 файла bilateral_upsampling.hpp.
Ссылки на pcl::PointCloud< PointT >::clear(), pcl::PointCloud< PointT >::header, pcl::PointCloud< PointT >::height, и pcl::PointCloud< PointT >::width.
setProjectionMatrix()
| inline |
Метод, который устанавливает матрицу проекции, используемую при переводе точек изображения глубины обратно в координаты (x, y, z).
- Примечание
- В классе уже заданы 2 матрицы, используемые для 2 режимов, доступных для Kinect. Они настроены так же, как и в OpenNiGrabber
- Параметры
-
[in] projection_matrix новая матрица проекции, которая должна быть установлена
Определение в строке 129 файла bilateral_upsampling.h.
setSigmaColor()
| inline |
Метод, устанавливающий параметр sigma цвета.
- Параметры
-
[in] sigma_color новое значение для установки
Определение в строке 107 файла bilateral_upsampling.h.
setSigmaDepth()
| inline |
Метод, устанавливающий параметр sigma глубины.
- Параметры
-
[in] sigma_depth новое устанавливаемое значение
Определение в строке 117 файла bilateral_upsampling.h.
setWindowSize()
| inline |
Метод, устанавливающий размер окна для фильтра.
- Параметры
-
[in] window_size заданный размер окна
Определение в строке 97 файла bilateral_upsampling.h.
Документация по данным членам
KinectSXGAProjectionMatrix
| Eigen::Matrix3f pcl::BilateralUpsampling< PointInT, PointOutT >::KinectSXGAProjectionMatrix |
Определение в строке 77 файла bilateral_upsampling.h.
Используется в pcl::BilateralUpsampling< PointInT, PointOutT >::BilateralUpsampling().
KinectVGAProjectionMatrix
| Eigen::Matrix3f pcl::BilateralUpsampling< PointInT, PointOutT >::KinectVGAProjectionMatrix |
Определение в строке 77 файла bilateral_upsampling.h.
Используется в pcl::BilateralUpsampling< PointInT, PointOutT >::BilateralUpsampling().
Документация для данного класса была сгенерирована из следующих файлов:
- pcl/surface/bilateral_upsampling.h
- pcl/surface/impl/bilateral_upsampling.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_bilateral_upsampling.html