Spec-Zone.ru › PointCloudLibrary

Трекер пирамидального метода Канадэ-Лукас-Томаси. Подробнее...

#include <pcl/tracking/pyramidal_klt.h>

Inheritance graph
[легенда]
Collaboration graph
[легенда]

Общедоступные типы

using TrackerBase = pcl::tracking::Tracker< PointInT, Eigen::Affine3f >
using PointCloudIn = typename TrackerBase::PointCloudIn
using PointCloudInPtr = typename PointCloudIn::Ptr
using PointCloudInConstPtr = typename PointCloudIn::ConstPtr
using FloatImage = pcl::PointCloud< float >
using FloatImagePtr = FloatImage::Ptr
using FloatImageConstPtr = FloatImage::ConstPtr
using Ptr = shared_ptr< PyramidalKLTTracker< PointInT, IntensityT > >
using ConstPtr = shared_ptr< const PyramidalKLTTracker< PointInT, IntensityT > >
- Общедоступные типы, унаследованные от pcl::tracking::Tracker< PointInT, Eigen::Affine3f >
using BaseClass = PCLBase< PointInT >
using Ptr = shared_ptr< Tracker< PointInT, Eigen::Affine3f > >
using ConstPtr = shared_ptr< const Tracker< PointInT, Eigen::Affine3f > >
using SearchPtr = typename pcl::search::Search< PointInT >::Ptr
using SearchConstPtr = typename pcl::search::Search< PointInT >::ConstPtr
using PointCloudIn = pcl::PointCloud< PointInT >
using PointCloudInPtr = typename PointCloudIn::Ptr
using PointCloudInConstPtr = typename PointCloudIn::ConstPtr
using PointCloudState = pcl::PointCloud< Eigen::Affine3f >
using PointCloudStatePtr = typename PointCloudState::Ptr
using PointCloudStateConstPtr = typename PointCloudState::ConstPtr
- Public Types унаследованные от pcl::PCLBase< PointInT >
using PointCloud = pcl::PointCloud< PointInT >
using PointCloudPtr = typename PointCloud::Ptr
using PointCloudConstPtr = typename PointCloud::ConstPtr
using PointIndicesPtr = PointIndices::Ptr
using PointIndicesConstPtr = PointIndices::ConstPtr

Общедоступные члены-функции

PyramidalKLTTracker (int nb_levels=5, int tracking_window_width=7, int tracking_window_height=7)
Конструктор. Подробнее...
~PyramidalKLTTracker () override=default
Деструктор. Подробнее...
void setNumberOfPyramidLevels (int levels)
Установить количество уровней пирамиды. Подробнее...
int getNumberOfPyramidLevels () const
void setAccuracy (float accuracy)
Установить точность. Подробнее...
float getAccuracy () const
void setEpsilon (float epsilon)
Установить значение epsilon. Подробнее...
float getEpsilon () const
void setNumberOfKeypoints (std::size_t number)
Установить максимальное количество точек отслеживания после сортировки обнаруженных ключевых точек в соответствии с их показателем отклика. Подробнее...
std::size_t getNumberOfKeypoints ()
void setTrackingWindowSize (int width, int height)
установить размер окна отслеживания Подробнее...
void setTrackingWindowWidth (int width)
Установить ширину окна отслеживания. Подробнее...
int getTrackingWindowWidth ()
void setTrackingWindowHeight (int height)
Установить высоту окна отслеживания. Подробнее...
int getTrackingWindowHeight ()
void setNumberOfThreads (unsigned int nr_threads=0)
Инициализировать планировщик и установить количество потоков для использования. Подробнее...
PointCloudInConstPtr getReferenceCloud () const
Получить указатель на облако данных в момент t-1. Подробнее...
void setMaxIterationsNumber (unsigned int max)
Установить максимальное количество итераций в цикле Lucas Kanade. Подробнее...
unsigned int getMaxIterationsNumber () const
void setPointsToTrack (const pcl::PointIndicesConstPtr &points)
Предоставьте указатель на отслеживаемые точки. Подробнее...
void setPointsToTrack (const pcl::PointCloud< pcl::PointUV >::ConstPtr &points)
Предоставьте указатель на отслеживаемые точки. Подробнее...
pcl::PointCloud< pcl::PointUV >::ConstPtr getTrackedPoints () const
pcl::PointIndicesConstPtr getPointsToTrackStatus () const
pcl::shared_ptr< const std::vector< int > > getStatusOfPointsToTrack () const
Eigen::Affine3f getResult () const override
Возвращает вычисленное преобразование из отслеживаемых точек. Подробнее...
bool getInitialized () const
- Общедоступные методы, унаследованные от pcl::tracking::Tracker< PointInT, Eigen::Affine3f >
Tracker ()
Пустой конструктор. Подробнее...
void compute ()
Базовый метод для отслеживания всех точек, заданных в <setInputCloud (), setIndices ()>, используя индексы в setIndices () Подробнее...
- Публичные члены-функции, унаследованные от pcl::PCLBase< PointInT >
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[] для сокращения кода. Подробнее...

Защищенные методы-члены

bool initCompute () override
Этот метод должен вызываться перед началом фактических вычислений. Подробнее...
void derivatives (const FloatImage &src, FloatImage &grad_x, FloatImage &grad_y) const
Вычисление производных Шарра для облака исходных данных. Подробнее...
void downsample (const FloatImageConstPtr &input, FloatImageConstPtr &output) const
Уменьшение размера входных данных Подробнее...
void downsample (const FloatImageConstPtr &input, FloatImageConstPtr &output, FloatImageConstPtr &output_grad_x, FloatImageConstPtr &output_grad_y) const
Уменьшение размера входного изображения и вычисление градиентов вывода. Подробнее...
void convolve (const FloatImageConstPtr &input, FloatImage &output) const
Свертка изображения с разложимым ядром свертки. Подробнее...
void convolveCols (const FloatImageConstPtr &input, FloatImage &output) const
Свертка столбцов изображения. Подробнее...
void convolveRows (const FloatImageConstPtr &input, FloatImage &output) const
Свертка строк изображения. Подробнее...
virtual void spatialGradient (const FloatImage &img, const FloatImage &grad_x, const FloatImage &grad_y, const Eigen::Array2i &location, const Eigen::Array4f &weights, Eigen::ArrayXXf &win, Eigen::ArrayXXf &grad_x_win, Eigen::ArrayXXf &grad_y_win, Eigen::Array3f &covariance) const
извлечение фрагмента из предыдущего изображения, градиенты предыдущего изображения, окружающие выделение пикселей, интерполяция данных изображения и градиентов, вычисление ковариационной матрицы производных. Подробнее...
void mismatchVector (const Eigen::ArrayXXf &prev, const Eigen::ArrayXXf &prev_grad_x, const Eigen::ArrayXXf &prev_grad_y, const FloatImage &next, const Eigen::Array2i &location, const Eigen::Array4f &weights, Eigen::Array2f &b) const
virtual void computePyramids (const PointCloudInConstPtr &input, std::vector< FloatImageConstPtr > &pyramid, pcl::InterpolationType border_type) const
Вычисление пирамидального представления изображения. Подробнее...
virtual void track (const PointCloudInConstPtr &previous_input, const PointCloudInConstPtr &current_input, const std::vector< FloatImageConstPtr > &previous_pyramid, const std::vector< FloatImageConstPtr > &current_pyramid, const pcl::PointCloud< pcl::PointUV >::ConstPtr &previous_keypoints, pcl::PointCloud< pcl::PointUV >::Ptr &current_keypoints, std::vector< int > &status, Eigen::Affine3f &motion) const
void computeTracking () override
Абстрактный метод отслеживания. Подробнее...
- Защищенные члены-функции, унаследованные от pcl::tracking::Tracker< PointInT, Eigen::Affine3f >
const std::string & getClassName () const
Получить строковое представление имени этого класса. Подробнее...
void setSearchMethod (const SearchPtr &search)
Указать указатель на набор данных для добавления дополнительной информации для оценки признаков каждой точки в наборе входных данных. Подробнее...
SearchPtr getSearchMethod ()
Получить указатель на набор данных облака точек. Подробнее...
- Защищённые методы, унаследованные от pcl::PCLBase< PointInT >
bool initCompute ()
Этот метод должен вызываться перед началом фактических вычислений. Подробнее...
bool deinitCompute ()
Этот метод должен вызываться после завершения фактических вычислений. Подробнее...

Защищённые атрибуты

std::vector< FloatImageConstPtr > ref_pyramid_
пирамида входных данных в момент t-1 Подробнее...
PointCloudInConstPtr ref_
облако точек в момент t-1 Подробнее...
int nb_levels_
количество уровней пирамиды Подробнее...
pcl::PointCloud< pcl::PointUV >::ConstPtr keypoints_
координаты 2D обнаруженных ключевых точек Подробнее...
pcl::shared_ptr< std::vector< int > > keypoints_status_
статус ключевых точек t-1 в момент t Подробнее...
std::size_t keypoints_nbr_
количество точек для обнаружения Подробнее...
int track_width_
ширина отслеживания Подробнее...
int track_width_2_
половина ширины окна отслеживания Подробнее...
int track_height_
высота отслеживания Подробнее...
int track_height_2_
половина высоты окна отслеживания Подробнее...
unsigned int max_iterations_
максимальное число итераций Подробнее...
float accuracy_
критерий точности для остановки итераций Подробнее...
float min_eigenvalue_threshold_
float epsilon_
epsilon для вычисления субпикселей Подробнее...
float max_residue_
unsigned int threads_
количество аппаратных потоков Подробнее...
IntensityT intensity_
доступ к интенсивности Подробнее...
bool initialized_
инициализирован ли трекер? Подробнее...
pcl::TransformationFromCorrespondences transformation_computer_
вычисление преобразования из успешно отслеженных точек Подробнее...
Eigen::Affine3f motion_
вычисленное преобразование между отслеженными точками Подробнее...
Eigen::Array< float, 5, 1 > kernel_
ядро сглаживания Подробнее...
int kernel_size_2_
половина размера ядра сглаживания Подробнее...
int kernel_last_
Индекс последнего элемента в ядре Подробнее...
- Защищенные атрибуты, унаследованные от pcl::tracking::Tracker< PointInT, Eigen::Affine3f >
std::string tracker_name_
Имя трекера. Подробнее...
SearchPtr search_
Указатель на объект пространственного поиска. Подробнее...
- Защищенные атрибуты, унаследованные от pcl::PCLBase< PointInT >
PointCloudConstPtr input_
Набор входных данных облака точек. Подробнее...
IndicesPtr indices_
Указатель на вектор индексов точек для использования. Подробнее...
bool use_indices_
Принимает значение true, если используются индексы точек. Подробнее...
bool fake_indices_
Если набор индексов не задан, мы создаём набор фиктивных индексов, имитирующих входной PointCloud. Подробнее...

Подробное описание

шаблон<typename PointInT, typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
класс pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >

Трекер пирамидального Kanade Lucas Tomasi.

Это реализация трекера пирамидального Kanade Lucas Tomasi, работающего с организованными 3D ключевыми точками с информацией о цвете/интенсивности (это поведение по умолчанию, но вы можете изменить его, предоставив другой оператор в качестве второго шаблонного аргумента). Это аффинный трекер, который итеративно вычисляет оптический поток, чтобы найти лучшее предположение для точки p в момент t, учитывая её положение в момент t-1. Пользователю рекомендуется соблюдать условие Томази: вычисляемая реакция является максимальным собственным значением матрицы второго момента, но к отслеживаемым точкам не применяются ограничения, поэтому вы можете использовать детектор по своему выбору, чтобы указать точки для отслеживания.

Автор
Nizar Sallem

Определение в строке 64 файла pyramidal_klt.h.

Документация по typedef-членам

ConstPtr

шаблон<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
используя pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::ConstPtr = shared_ptr<const PyramidalKLTTracker<PointInT, IntensityT> >

Определение в строке 74 файла pyramidal_klt.h.

FloatImage

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::FloatImage = pcl::PointCloud<float>

Определение в строке 70 файла pyramidal_klt.h.

FloatImageConstPtr

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::FloatImageConstPtr = FloatImage::ConstPtr

Определение в строке 72 файла pyramidal_klt.h.

FloatImagePtr

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::FloatImagePtr = FloatImage::Ptr

Определение в строке 71 файла pyramidal_klt.h.

PointCloudIn

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PointCloudIn = typename TrackerBase::PointCloudIn

Определение в строке 67 файла pyramidal_klt.h.

PointCloudInConstPtr

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PointCloudInConstPtr = typename PointCloudIn::ConstPtr

Определение в строке 69 файла pyramidal_klt.h.

PointCloudInPtr

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PointCloudInPtr = typename PointCloudIn::Ptr

Определение в строке 68 файла pyramidal_klt.h.

Ptr

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::Ptr = shared_ptr<PyramidalKLTTracker<PointInT, IntensityT> >

Определение в строке 73 файла pyramidal_klt.h.

TrackerBase

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
using pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::TrackerBase = pcl::tracking::Tracker<PointInT, Eigen::Affine3f>

Определение в строке 66 файла pyramidal_klt.h.

Документация конструктора и деструктора

PyramidalKLTTracker()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker ( int nb_levels = 5,
int tracking_window_width = 7,
int tracking_window_height = 7
)
inline

Конструктор.

Определение в строке 81 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::accuracy_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::epsilon_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_last_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_size_2_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_nbr_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::max_iterations_, pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::min_eigenvalue_threshold_, и pcl::tracking::Tracker< PointInT, Eigen::Affine3f >::tracker_name_.

~PyramidalKLTTracker()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::~PyramidalKLTTracker ( )
overridedefault

Деструктор.

Функции-члены

computePyramids()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::computePyramids ( const PointCloudInConstPtr & input,
std::vector< FloatImageConstPtr > & pyramid,
pcl::InterpolationType border_type
) const
protectedvirtual

Вычислить пирамидальное представление изображения.

Параметры
[in] input облако входных данных
[out] pyramid вычисленные уровни пирамиды вместе с соответствующими градиентами
[in] border_type

Определение в строке 364 файла pyramidal_klt.hpp.

Ссылки на pcl::BORDER_CONSTANT, и pcl::copyPointCloud().

computeTracking()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::computeTracking
overrideprotectedvirtual

Абстрактный метод отслеживания.

Реализует pcl::tracking::Tracker< PointInT, Eigen::Affine3f >.

Определение в строке 713 файла pyramidal_klt.hpp.

Ссылки на pcl::BORDER_REFLECT_101 и pcl::PointCloud< PointT >::reserve().

convolve()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::convolve ( const FloatImageConstPtr & input,
FloatImage & output
) const
protected

Раздельно свёртка изображения с разложимым ядром свёртки.

Параметры
[in] input входное изображение для свёртки
[out] output результирующее изображение после свёртки

Определение в строке 284 файла pyramidal_klt.hpp.

convolveCols()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::convolveCols ( const FloatImageConstPtr & input,
FloatImage & output
) const
protected

Свертка столбцов изображения.

Параметры
[вход] input входное изображение для свертки
[выход] output результат свертки изображения

Определение в строке 329 файла pyramidal_klt.hpp.

convolveRows()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::convolveRows ( const FloatImageConstPtr & input,
FloatImage & output
) const
protected

Выполнить свёртку строк изображения.

Параметры
[вход] input входное изображение для свёртки
[выход] output результирующее изображение после свёртки

Определение в строке 295 файла pyramidal_klt.hpp.

derivatives()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::derivatives ( const FloatImage & src,
FloatImage & grad_x,
FloatImage & grad_y
) const
protected

вычислить производные Шарра облака исходных точек.

Параметры
[in] src изображение, для которого требуется вычислить градиенты
[out] grad_x градиент изображения по направлению X
[out] grad_y градиент изображения по направлению Y

Определение в строке 171 файла pyramidal_klt.hpp.

Ссылается на pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::size() и pcl::PointCloud< PointT >::width.

downsample() [1/2]

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::downsample ( const FloatImageConstPtr & input,
FloatImageConstPtr & output
) const
protected

уменьшение размера входных данных

Parameters
[in] input изображение для уменьшения размера
[out] output изображение после уменьшения размера

Определение в строке 235 файла pyramidal_klt.hpp.

Ссылки на pcl::PointCloud< PointT >::height и pcl::PointCloud< PointT >::width.

downsample() [2/2]

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::downsample ( const FloatImageConstPtr & input,
FloatImageConstPtr & output,
FloatImageConstPtr & output_grad_x,
FloatImageConstPtr & output_grad_y
) const
protected

Уменьшение размера входных данных и вычисление градиентов выходных данных.

Параметры
[in] input изображение для уменьшения размера
[out] output изображение с уменьшенным размером
[out] output_grad_x градиент изображения с уменьшенным размером по направлению X
[out] output_grad_y градиент изображения с уменьшенным размером по направлению Y

Определение в строке 267 файла pyramidal_klt.hpp.

getAccuracy()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getAccuracy ( ) const
inline
Возвращает
точность

Определение в строке 132 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::accuracy_.

getEpsilon()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getEpsilon ( ) const
inline
Возвращает
значение epsilon

Определение в строке 148 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::epsilon_.

getInitialized()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
bool pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getInitialized ( ) const
inline
Возвращает
состояние инициализации

Определение в строке 294 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::initialized_.

getMaxIterationsNumber()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
unsigned int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getMaxIterationsNumber ( ) const
inline
Возвращает
максимальное число итераций

Определение в строке 233 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::max_iterations_.

getNumberOfKeypoints()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
std::size_t pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getNumberOfKeypoints ( )
inline
Возвращает
максимальное количество ключевых точек для сохранения

Определение в строке 165 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_nbr_.

getNumberOfPyramidLevels()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getNumberOfPyramidLevels ( ) const
inline
Возвращает
количество уровней пирамиды

Определение в строке 116 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::nb_levels_.

getPointsToTrackStatus()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::PointIndicesConstPtr pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getPointsToTrackStatus ( ) const
inline
Возвращает
состояние точек для отслеживания. Status == 0 --> точки успешно отслежены; Status < 0 --> точка потеряна; Status == -1 --> точка выходит за пределы; Status == -2 --> оптический поток не может быть вычислен для этой точки.
Устаревшее:
Планируется удалить в версии 1 . 15 : "используйте getStatusOfPointsToTrack вместо этого"

Определение в строке 265 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_status_.

getReferenceCloud()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
PointCloudInConstPtr pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getReferenceCloud ( ) const
inline

Получить указатель на облако точек в момент t-1.

Определение в строке 217 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::ref_.

getResult()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
Eigen::Affine3f pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getResult ( ) const
inlineoverridevirtual

Возвращает вычисленное преобразование из отслеживаемых точек.

Реализует pcl::tracking::Tracker< PointInT, Eigen::Affine3f >.

Определение в строке 287 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::motion_.

getStatusOfPointsToTrack()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::shared_ptr<const std::vector<int> > pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getStatusOfPointsToTrack ( ) const
inline
Возвращает
статус точек для отслеживания. Статус == 0 --> точки успешно отслежены; Статус < 0 --> точка потеряна; Статус == -1 --> точка выходит за пределы области; Статус == -2 --> оптический поток не может быть вычислен для этой точки.

Определение в строке 280 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_status_.

getTrackedPoints()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::PointCloud<pcl::PointUV>::ConstPtr pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackedPoints ( ) const
inline
Возвращает
указатель на точки, успешно отслеженные.

Определение в строке 252 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_.

getTrackingWindowHeight()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackingWindowHeight ( )
inline
Возвращает
размер окна отслеживания

Определение в строке 200 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_height_.

getTrackingWindowWidth()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackingWindowWidth ( )
inline
Возвращает
размер окна отслеживания

Определение в строке 186 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_width_.

initCompute()

template<typename PointInT , typename IntensityT >
bool pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::initCompute
overrideprotectedvirtual

Этот метод должен вызываться перед запуском фактического вычисления.

Переопределено из pcl::tracking::Tracker< PointInT, Eigen::Affine3f >.

Определение в строке 98 файла pyramidal_klt.hpp.

Ссылки на pcl::BORDER_REFLECT_101.

mismatchVector()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::mismatchVector ( const Eigen::ArrayXXf & prev,
const Eigen::ArrayXXf & prev_grad_x,
const Eigen::ArrayXXf & prev_grad_y,
const FloatImage & next,
const Eigen::Array2i & location,
const Eigen::Array4f & weights,
Eigen::Array2f & b
) const
protected

Определение в строке 518 файла pyramidal_klt.hpp.

Ссылки на pcl::PointCloud< PointT >::width.

setAccuracy()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setAccuracy ( float accuracy )
inline

Установить точность.

Параметры
[in] accuracy желаемая точность.

Определение в строке 125 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::accuracy_.

setEpsilon()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setEpsilon ( float epsilon )
inline

Установить epsilon.

Параметры
[in] epsilon желаемое значение epsilon.

Определение в строке 141 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::epsilon_.

setMaxIterationsNumber()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setMaxIterationsNumber ( unsigned int max )
inline

Установить максимальное число итераций в цикле Лукаса-Кэнаде.

Parameters
[in] max желаемое максимальное число итераций

Определение в строке 226 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::max_iterations_.

setNumberOfKeypoints()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfKeypoints ( std::size_t number )
inline

Установите максимальное количество точек для отслеживания после сортировки обнаруженных ключевых точек в соответствии с их мерой отклика.

Параметры
[in] number желаемое количество точек для обнаружения.

Определение в строке 158 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_nbr_.

setNumberOfPyramidLevels()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfPyramidLevels ( int levels )
inline

Установите количество уровней пирамиды.

Параметры
levels требуемое количество уровней пирамиды

Определение в строке 109 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::nb_levels_.

setNumberOfThreads()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfThreads ( unsigned int nr_threads = 0 )
inline

Инициализировать планировщик и установить количество потоков для использования.

Параметры
nr_threads количество аппаратных потоков для использования (0 устанавливает значение обратно к автоматическому).

Определение в строке 210 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::threads_.

setPointsToTrack() [1/2]

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setPointsToTrack ( const pcl::PointCloud< pcl::PointUV >::ConstPtr & points )
inline

Укажите указатель на точки для отслеживания.

Параметры
points постоянный указатель boost shared на сообщение PointIndices

Определение в строке 59 файла pyramidal_klt.hpp.

Ссылки на pcl::PointCloud< PointT >::push_back(), pcl::PointCloud< PointT >::reserve(), pcl::PointCloud< PointT >::resize() и pcl::PointCloud< PointT >::size().

setPointsToTrack() [2/2]

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setPointsToTrack ( const pcl::PointIndicesConstPtr & points )
inline

Предоставьте указатель на точки для отслеживания.

Параметры
points постоянная boost-совместимая ссылка на сообщение PointIndices

Определение в строке 79 файла pyramidal_klt.hpp.

Ссылается на pcl::PointCloud< PointT >::push_back(), pcl::PointCloud< PointT >::reserve(), pcl::PointUV::u и pcl::PointUV::v.

setTrackingWindowHeight()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setTrackingWindowHeight ( int height )
inline

Установить высоту окна отслеживания.

Определение в строке 193 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_height_.

setTrackingWindowSize()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setTrackingWindowSize ( int width,
int height
)
inline

Установить размер окна отслеживания.

Параметры
[in] width ширина окна отслеживания
[in] height высота окна отслеживания

Определение в строке 50 файла pyramidal_klt.hpp.

setTrackingWindowWidth()

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setTrackingWindowWidth ( int width )
inline

Установить ширину окна отслеживания.

Определение в строке 179 файла pyramidal_klt.h.

Ссылки на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_width_.

spatialGradient()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::spatialGradient ( const FloatImage & img,
const FloatImage & grad_x,
const FloatImage & grad_y,
const Eigen::Array2i & location,
const Eigen::Array4f & weights,
Eigen::ArrayXXf & win,
Eigen::ArrayXXf & grad_x_win,
Eigen::ArrayXXf & grad_y_win,
Eigen::Array3f & covariance
) const
protectedvirtual

извлечь область из предыдущего изображения, градиенты предыдущего изображения, окружающие выделение пикселей, при интерполяции данных изображения и градиентов, и вычислить ковариационную матрицу производных.

Параметры
[in] img исходное изображение
[in] grad_x градиент исходного изображения по направлению X
[in] grad_y градиент исходного изображения по направлению Y
[in] location пиксель в центре области
[in] weights веса билинейной интерполяции в этой точке, вычисленные из подпиксельной координаты
[out] win область с интерполированными значениями интенсивности
[out] grad_x_win область с интерполированными значениями градиента по направлению X
[out] grad_y_win область с интерполированными значениями градиента по направлению Y
[out] covariance коэффициенты ковариационной матрицы

!! сохранить эти значения

Определение в строке 474 файла pyramidal_klt.hpp.

Ссылки на pcl::PointCloud< PointT >::width.

track()

template<typename PointInT , typename IntensityT >
void pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track ( const PointCloudInConstPtr & previous_input,
const PointCloudInConstPtr & current_input,
const std::vector< FloatImageConstPtr > & previous_pyramid,
const std::vector< FloatImageConstPtr > & current_pyramid,
const pcl::PointCloud< pcl::PointUV >::ConstPtr & previous_keypoints,
pcl::PointCloud< pcl::PointUV >::Ptr & current_keypoints,
std::vector< int > & status,
Eigen::Affine3f & motion
) const
protectedvirtual

Определение в строке 548 файла pyramidal_klt.hpp.

Ссылки на pcl::TransformationFromCorrespondences::add(), pcl::TransformationFromCorrespondences::getTransformation(), pcl::PointCloud< PointT >::height, pcl::PointCloud< PointT >::push_back(), pcl::PointCloud< PointT >::size(), pcl::PointUV::u, pcl::PointUV::v и pcl::PointCloud< PointT >::width.

Документация по данным членам

accuracy_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::accuracy_
protected

критерий точности для остановки итераций

Определение в строке 431 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getAccuracy(), pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setAccuracy().

epsilon_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::epsilon_
protected

значение epsilon для вычисления субпикселей

Определение в строке 434 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getEpsilon(), pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setEpsilon().

initialized_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
bool pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::initialized_
protected

Инициализирован ли трекер?

Определение в строке 441 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getInitialized().

intensity_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
IntensityT pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::intensity_
protected

интенсивность доступа

Определение в строке 439 файла pyramidal_klt.h.

kernel_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
Eigen::Array<float, 5, 1> pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_
protected

ядро сглаживания

Определение в строке 447 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker().

kernel_last_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_last_
protected

индекс последнего элемента в ядре

Определение в строке 451 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker().

kernel_size_2_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::kernel_size_2_
protected

половина размера ядра сглаживания

Определение в строке 449 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker().

keypoints_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::PointCloud<pcl::PointUV>::ConstPtr pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_
protected

обнаруженные ключевые точки 2D координаты

Определение в строке 415 файла pyramidal_klt.h.

Ссылка на pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackedPoints().

keypoints_nbr_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
std::size_t pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_nbr_
protected

количество точек для обнаружения

Определение в строке 419 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getNumberOfKeypoints(), pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfKeypoints().

keypoints_status_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::shared_ptr<std::vector<int> > pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::keypoints_status_
protected

статус ключевых точек t-1 в момент t

Определение в строке 417 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getPointsToTrackStatus() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getStatusOfPointsToTrack().

max_iterations_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
unsigned int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::max_iterations_
protected

максимальное количество итераций

Определение в строке 429 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getMaxIterationsNumber(), pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setMaxIterationsNumber().

max_residue_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::max_residue_
protected

Определение в строке 435 файла pyramidal_klt.h.

min_eigenvalue_threshold_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
float pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::min_eigenvalue_threshold_
protected

Определение в строке 432 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::PyramidalKLTTracker().

motion_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
Eigen::Affine3f pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::motion_
protected

Вычисленное преобразование между отслеживаемыми точками

Определение в строке 445 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getResult().

nb_levels_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::nb_levels_
protected

количество уровней пирамиды

Определение в строке 413 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getNumberOfPyramidLevels() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfPyramidLevels().

ref_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
PointCloudInConstPtr pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::ref_
protected

облако точек в момент t-1

Определение в строке 411 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getReferenceCloud().

ref_pyramid_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
std::vector<FloatImageConstPtr> pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::ref_pyramid_
protected

входная пирамида в момент t-1

Определение в строке 409 файла pyramidal_klt.h.

threads_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
unsigned int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::threads_
protected

число аппаратных потоков

Определение в строке 437 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setNumberOfThreads().

track_height_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_height_
protected

высота отслеживания

Определение в строке 425 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackingWindowHeight(), и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setTrackingWindowHeight().

track_height_2_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_height_2_
protected

половина высоты окна отслеживания

Определение в строке 427 файла pyramidal_klt.h.

track_width_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_width_
protected

ширина отслеживания

Определение в строке 421 файла pyramidal_klt.h.

Используется в pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::getTrackingWindowWidth() и pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::setTrackingWindowWidth().

track_width_2_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
int pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::track_width_2_
protected

половина ширины окна отслеживания

Определение в строке 423 файла pyramidal_klt.h.

transformation_computer_

template<typename PointInT , typename IntensityT = pcl::common::IntensityFieldAccessor<PointInT>>
pcl::TransformationFromCorrespondences pcl::tracking::PyramidalKLTTracker< PointInT, IntensityT >::transformation_computer_
protected

вычисление преобразования из успешно отслеженных точек

Определение в строке 443 файла pyramidal_klt.h.


The documentation for this class was generated from the following files:
  • pcl/tracking/pyramidal_klt.h
  • pcl/tracking/impl/pyramidal_klt.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1tracking_1_1_pyramidal_k_l_t_tracker.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API