GDAL with OpenCV

Ответить
Pepslee
Новоприбывший
Сообщения: 2
Зарегистрирован: 28 июл 2015, 14:49
Репутация: 0

GDAL with OpenCV

Сообщение Pepslee » 28 июл 2015, 14:56

Помогите разобраться, как данные GDAL записать в матрицу OpenCV.

Имеется изображения TIFF 16 bit, нужно открыть его с помощью GDAL и потом записать в OpenCV.

стандартные функции типа
Mat image = imread("/home/user/mozgovoy/16bit_t.tif", cv::IMREAD_LOAD_GDAL | cv::IMREAD_ANYDEPTH );

не работают, ( работают только для 8 бит).
Всё что нашёл в интернете, это для 8 битных изображений.

работаю на С/С++, может кто делал подобное ?

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: GDAL with OpenCV

Сообщение Дмитрий Барышников » 29 июл 2015, 20:41

А как вы обычно помещаете 16бит данные в opencv? Например из массива? Нужен пример кода.

[ Сообщение с мобильного устройства ]

gamm
Гуру
Сообщения: 4049
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1050
Ваше звание: программист
Откуда: Казань

Re: GDAL with OpenCV

Сообщение gamm » 30 июл 2015, 09:12

Pepslee писал(а):Помогите разобраться, как данные GDAL записать в матрицу OpenCV.
а в чем проблема написать несколько строк самому? У Mat() есть конструктор, который просто отображает матрицу на готовый массив значений. Читаете изображение с помощью GDAL в память, и отображаете на нее Mat(). Ниже пример отображения на матрицу float, укладка по строкам.

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

float *src_buf;
...
читаем канал снимка формата float в src_buf
cv::Mat band_mat(ny,nx,CV_32FC1,src_buf);

Pepslee
Новоприбывший
Сообщения: 2
Зарегистрирован: 28 июл 2015, 14:49
Репутация: 0

Re: GDAL with OpenCV

Сообщение Pepslee » 04 авг 2015, 11:20

Спасибо, я уже разобрался, с OpenCV проблем не было, было проблема с GDAL, я не знал как считать в буфер матрицу

Ответить

Вернуться в «GDAL/OGR»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя