2012-04-18 112 views
-2

如何將圖像轉換爲單元格?將圖像轉換爲單元格

close all; 
I=imread('D:\prj2.jpg'); 
Imshow(I); 
C=mat2cell(I,[130 97],[130 97]); 
+1

你得到什麼錯誤?我的大小是多少? (運行'size(I)'來找出) – 2012-04-18 03:45:48

+1

???在使用==> mat2cell時發生錯誤96 輸入向量自變量的數目2與輸入矩陣的維數數量不匹配3. 錯誤在==> prj at 4 C = mat2cell(I,[130 97] ,[130 97]); – user1340253 2012-04-18 04:36:35

回答

1

從文檔mat2cell:而在mat2cell轉換運行這一個,我得到一個錯誤

mat2cell Break matrix up into a cell array of matrices. 
    C = mat2cell(X,M,N) breaks up the 2-D array X into a cell array... 

這是你目前如何使用該功能mat2cell。但是,從您的錯誤消息看來,您的矩陣I不是一個二維矩陣。如果在命令行中鍵入ndims(I),則可以看到陣列有多少個維度。

從您的錯誤消息,你可以看到你的I有3個維度(圖像的第三維是每個顏色通道)。因此您必須以不同的方式使用mat2cell。鍵入help mat2cell進入命令提示符,並閱讀有關使用mat2cell多維數組。

此外,也可以是分開的圖像首先提取每個顏色通道,並在每個顏色通道單獨運行mat2cell

red_channel = I(:, :, 1); 
green_channel = I(:, :, 2); 
blue_channel = I(:, :, 3); 
+0

如何將rgb轉換爲幀M(1)= im2frame(red_channel,map); M(2)= im2frame(green_channel,map); M(3)= im2frame(blue_channel,map); ???未定義的函數或變量「映射」。 錯誤==> prj at 7 M(1)= im2frame(red_channel,map); – user1340253 2012-04-18 10:48:21

+0

嗨任何人都可以幫助我寫作matlab代碼將圖像轉換爲幀,然後應用湍流模擬,然後將幀轉換爲視頻。 – user1340253 2012-04-18 11:32:05

+0

偉大的評論。也許這些將會是最好的單獨問題,在這裏很難回答。 – 2012-04-18 15:01:44