Как сохранить openCV cv::Mat в изображение без изменений

Я видел другие вопросы, пытающиеся ответить на этот вопрос (в методе, аналогичном метод mkuse с использованием FileStorage ). Но кажется, что ЕДИНСТВЕННЫЙ способ сделать это - сохранить его в .xml или .yml.

Мне действительно нужен способ сохранить файл с помощью imwrite(), который не отсекает все мои 16-битные десятичные значения.

Я действительно хотел сделать это в .tif, но кажется, что Я не могу этого сделать.

ДОЛЖЕН быть другой путь!


person Jeremy Gamet    schedule 19.07.2016    source источник
comment
вы могли бы преобразовать в 16-битный целочисленный диапазон или закодировать как 16-битное целое число и сохранить png?   -  person Micka    schedule 20.07.2016


Ответы (1)


Вы можете попробовать сохранить его, используя что-то другое, кроме imwrite. Если вы записываете данные изображения в двоичный файл, используя fstream, как показано в этот вопрос StackOverflow, вы не потеряете точности. Это просто немного усложняет процесс сохранения и чтения, но вы можете легко написать для этого оболочку.

Например, как это делается для чтения">здесь.

person Sunreef    schedule 20.07.2016
comment
Спасибо @Sunreef !! На самом деле я просто решил пойти дальше и сделать это вчера, когда уходил с работы. Я просто хотел дважды убедиться, что мне нужно написать несколько оберток и что я не пропустил что-то очевидное. - person Jeremy Gamet; 20.07.2016