странный результат преобразования изображений в формат avi с использованием matlab

#image #matlab #avi

#изображение #matlab #avi

Вопрос:

Я пытаюсь преобразовать серию изображений в avi с помощью matlab. Код показан ниже.

aviobj = avifile(navi);

aviobj.Quality = 100;

%aviobj.Fps = 25;

aviobj.compression=’None’;

cola = 0: 1/255:1;

cola=[cola;cola;cola];%% серое изображение

кола = кола ‘;

aviobj.colormap=cola;

для i=pfrom:pto

 strImgName=Files(i).name;

    adata=imread(strImgName);

    figure;

    imshow(adata); % the loading image seems good

     aviobj = addframe(aviobj,uint8(adata));
  

конец

aviobj=закрыть (aviobj);

Полученный avi выглядит странно. Я прикрепил одно изображение и один кадр avi следующим образом. В чем проблема?

введите описание изображения здесь

Ответ №1:

Я считаю, что это как-то связано с цветовой картой. imread возвращает изображение размером m * n * 3, поэтому цветовая карта не требуется.

попробуйте удалить строку:

 aviobj.colormap=cola;
  

и посмотрите, что произойдет.

Комментарии:

1. Спасибо за ваш ответ. Проблема связана с кодировщиком компьютера. Я перезагружаю компьютер, и проблема решена. Код, который я опубликовал, правильный.