2017-10-08 22 views
0

我想在圖像壓縮上編寫代碼。矩陣不能編入索引

I = imread('cameraman.bmp'); 
I = im2double(I); 
T = dctmtx(8); 
dct = @(block_struct) T * block_struct.data * T'; 
B = blockproc(I,[8 8],dct); 

每當我試圖執行上面的線,我有錯誤遇到的

error: matrix cannot be indexed with . 
error: called from 
    @<anonymous> at line 1 column 45 
    blockproc at line 135 column 6 

請幫助我。 謝謝。

回答

0

@anonymous>位於第1行的列45

它寫到在 「block_struct.data」 位置的誤差。

發生錯誤是因爲你的block_struct是一個矩陣(例如[1 2; 3 4]),它不是可調用對象(換句話說,「block_struct。」是禁止的)。

嘗試刪除「.data」。