Libraw и OpenCVC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Libraw и OpenCV

Сообщение Anonymous »

Я использую Canon EOS 1200d.
Эта камера создает файлы JPEG с разрешением 5184 x 3456.
Камера создает также файлы CR2. < /p>
Я использую Libraw, чтобы открыть этот файл.

Код: Выделить всё

LibRaw processor;
processor.open_file("test1.CR2");
< /code>
Если я отлаживаю свою программу, я вижу: < /p>
processor.imgdata.sizes.raw_height = 3516
processor.imgdata.sizes.raw_width = 5344
processor.imgdata.sizes.height = 3465
processor.imgdata.sizes.width = 5202
processor.imgdata.sizes.top_margin = 51
processor.imgdata.sizes.left_margin = 142
processor.imgdata.sizes.iheight = 3465
processor.imgdata.sizes.iwidth = 5202
< /code>

 Почему разрешение 5184 x 3456 не появляется?[0] {t_width=5184 t_height=3456 bps=8 ...}
[1] {t_width=160 t_height=120 bps=8 ...}
[2] {t_width=668 t_height=432 bps=16 ...}
[3] {t_width=5344 t_height=3516 bps=14 ...}
< /code>

  Каковы эти четыре объекта? /> Преобразует ли он из формата RGBG в формат RGB? CV_16UC3? />  Спасибо. < /p>
 edit < /strong> < /p>
ОК, поэтому я должен использовать: < /p>
processor.imgdata.params.output_bps = 16;
processor.open_file("test1.CR2");
processor.unpack();
processor.dcraw_process();
libraw_processed_image_t* output = processor.dcraw_make_mem_image();
< /code>
Но как я могу указать, чтобы использовать разрешение JPEG?
Я думаю, что это с: < /p>
processor.imgdata.params.cropbox
Но как указать разрешение JPEG без жесткого кодирования?

Подробнее здесь: https://stackoverflow.com/questions/350 ... and-opencv
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»