Matlab 彩色圖像轉化成灰度視頻的花屏問題

   利用matlab將圖像轉化成avi視頻,需要用到avifile和addframe函數,下面附一段代碼。 在將彩色圖像轉化成灰度圖像並保存爲視頻時,經常會出現花屏的現象。造成這種現象的原因是,avi灰度視頻的每一幀圖像仍是三通道的,而直接灰度化的圖像是單通道的,因此需要利用cat函數將單通道的灰度圖像轉化成三通道的圖像。(見紅色代碼)

【例】
   aviobj=avifile(aviFilename,'FPS',25,'COMPRESSION','None');%定義一個結構體

    for j=1:length(img_list)
         img=imread(readpath);%readpath是圖像的路徑
         imgGray=rgb2gray(img);
         imgGray=cat(3,imgGray,imgGray,imgGray);//轉化成三通道圖像
         disp(readpath);
         aviobj=addframe(aviobj,imgGray);
  end
  aviobj=close(aviobj);
 

 

發佈了33 篇原創文章 · 獲贊 17 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章