Matlab пишет 1-битный BMP - PullRequest
       13

Matlab пишет 1-битный BMP

2 голосов
/ 11 августа 2010

Как мне написать 1-битное BMP-изображение в Matlab, используя imwrite или любую другую функцию.значение по умолчанию для imwrite для bmp - 8 бит.

Большое спасибо:)

Ответы [ 2 ]

2 голосов
/ 11 августа 2010

Вы должны преобразовать изображение в логическое (т.е. 1-битное) перед вызовом imwrite.

%# assuming the image is stored in a variable 'img'
imwrite(logical(img),'test.bmp','bmp')
1 голос
/ 11 августа 2010

Согласно документации IMWRITE :

Если входной массив имеет класс logical, imwrite предполагает, что данные являются двоичным изображением, и записывает их вфайл с битовой глубиной 1, если формат позволяет.Форматы BMP, PNG или TIFF принимают двоичные изображения в качестве входных массивов.

Следовательно, если вы преобразуете данные изображения в логическую матрицу, прежде чем передать ее IMWRITE , вы сможете создать 1-битный BMPизображение:

imwrite(logical(imageData),'image.bmp');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...