Spec-Zone.ru › PointCloudLibrary

Запись изображения в формате PCL-LZF. Подробнее...

#include <pcl/io/lzf_image_io.h>

Inheritance graph
[легенда]

Публичные члены-функции

LZFImageWriter ()=default
Конструктор по умолчанию. Подробнее...
virtual ~LZFImageWriter ()=default
Деструктор по умолчанию. Подробнее...
virtual bool write (const char *data, std::uint32_t width, std::uint32_t height, const std::string &filename)=0
Сохранение изображения в формате PCL-LZF. Подробнее...
virtual bool writeParameters (const CameraParameters &parameters, const std::string &filename)=0
Сохранение параметров камеры в файл. Подробнее...
virtual bool write (const char *data, std::uint32_t width, std::uint32_t height, const CameraParameters &parameters, const std::string &filename_data, const std::string &filename_xml)
Сохранение изображения и параметров камеры в формате PCL-LZF. Подробнее...
bool writeParameter (const double &parameter, const std::string &tag, const std::string &filename)
Сохранение одного параметра изображения/камеры в файл, заданного тегом XML. Подробнее...

Защищённые члены-функции

bool saveImageBlob (const char *data, std::size_t data_size, const std::string &filename)
Сохранение сжатого массива изображения на диск. Подробнее...
std::uint32_t compress (const char *input, std::uint32_t input_size, std::uint32_t width, std::uint32_t height, const std::string &image_type, char *output)
Сжатие LZF в реальном времени. Подробнее...

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

Запись изображений в формате PCL-LZF.

Формат PCL-LZF — это не что иное, как сжатие LZF по уже существующему типу файла (например, PNG). Однако в некоторых ситуациях, например, с данными RGB, массив [RGBRGB...RGB] будет сначала переупорядочен в [RR...RGG...GBB...B] для обеспечения лучшего сжатия.

Текущий список компрессоров/декомпрессоров включает:

  • Данные LZF, сжатые 24-битные [RR...RGG...GBB...B]
  • Данные LZF, сжатые 8-битные Bayer
  • Данные LZF, сжатые 16-битные YUV422
  • Данные LZF, сжатые 16-битные глубинные данные

Обратите внимание, что файлы, обнаруженные с использованием указанных выше расширений, будут обработаны как таковые. Наследуйте от этого класса и перезапишите методы ввода/вывода, если вы планируете изменить это поведение.

Основное преимущество использования PCL-LZF процедур ввода/вывода изображений — очень хорошее соотношение размера файла к скорости ввода/вывода. Проведённые тесты, использующие сжатие LZF, Snappy, ZIP, GZ2, BZIP2, а также PNG, JPEG и TIFF, показали, что внутренние методы PCL LZF обеспечивают лучшие результаты для типов приложений, для которых предназначен PCL.

Автор
Radu B. Rusu

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

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

LZFImageWriter()

pcl::io::LZFImageWriter::LZFImageWriter ( )
по умолчанию

Пустой конструктор.

~LZFImageWriter()

virtual pcl::io::LZFImageWriter::~LZFImageWriter ( )
виртуальныйпо умолчанию

Пустой деструктор.

Документация членов-функций

compress()

std::uint32_t pcl::io::LZFImageWriter::compress ( const char * input,
std::uint32_t input_size,
std::uint32_t width,
std::uint32_t height,
const std::string & image_type,
char * output
)
protected

Оперативное сжатие LZF.

Параметры
[in] input массив для сжатия
[in] input_size размер массива для сжатия
[in] width ширина массива данных
[in] height высота массива данных
[in] image_type тип изображения для сохранения. Должно быть строкой длиной до 16 символов, описывающей тип данных. Примеры: "bayer8", "rgb24", "yuv422", "depth16".
[out] output сжатый выходной массив (должен быть предварительно выделен!)
Возвращает
количество байт в выходном массиве

saveImageBlob()

bool pcl::io::LZFImageWriter::saveImageBlob ( const char * data,
std::size_t data_size,
const std::string & filename
)
protected

Сохранить сжатый массив изображений на диск.

Параметры
[in] data данные для сохранения
[in] data_size размер данных
[in] filename имя файла для записи данных
Возвращает
true, если операция выполнена успешно, false в противном случае

write() [1/2]

virtual bool pcl::io::LZFImageWriter::write ( const char * data,
std::uint32_t width,
std::uint32_t height,
const CameraParameters & parameters,
const std::string & filename_data,
const std::string & filename_xml
)
inlinevirtual

Сохранить изображение и его параметры камеры в формате PCL-LZF.

Параметры
[in] data массив, содержащий изображение
[in] width ширина массива данных
[in] height высота массива данных
[in] parameters параметры камеры
[in] filename_data имя файла для записи данных
[in] filename_xml имя файла для записи параметров
Возвращает
true, если операция выполнена успешно, false в противном случае

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

Ссылки на pcl::write().

write() [2/2]

virtual bool pcl::io::LZFImageWriter::write ( const char * data,
std::uint32_t width,
std::uint32_t height,
const std::string & filename
)
pure virtual

Сохранить изображение в формате PCL-LZF.

Виртуальная функция.

Параметры
[in] data массив, содержащий изображение
[in] width ширина массива данных
[in] height высота массива данных
[in] filename имя файла для записи
Возвращает
true, если операция выполнена успешно, false в противном случае

Реализовано в pcl::io::LZFBayer8ImageWriter, pcl::io::LZFYUV422ImageWriter, pcl::io::LZFRGB24ImageWriter и pcl::io::LZFDepth16ImageWriter.

writeParameter()

bool pcl::io::LZFImageWriter::writeParameter ( const double & parameter,
const std::string & tag,
const std::string & filename
)

Записать один параметр изображения/камеры в файл, используя тег XML.

Параметры
[in] parameter значение параметра для записи
[in] tag значение тега XML
[in] filename имя файла для записи
Возвращает
true, если операция выполнена успешно, иначе false Пример:
pcl::io::LZFDepthImageWriter w;
w.writeParameter (0.001, "depth.multiplication_factor", "parameters.xml");

writeParameters()

virtual bool pcl::io::LZFImageWriter::writeParameters ( const CameraParameters & parameters,
const std::string & filename
)
pure virtual

Записать параметры камеры в файл.

Виртуальный метод.

Параметры
[in] parameters параметры камеры
[in] filename имя файла для записи
Возвращает
true, если операция выполнена успешно, иначе false

Реализовано в pcl::io::LZFRGB24ImageWriter и pcl::io::LZFDepth16ImageWriter.


The documentation for this class was generated from the following file:
  • pcl/io/lzf_image_io.h

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

Spec-Zone.ru

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