Re: [問題] DCT轉換實作已回收

看板MATLAB作者 (ㄍㄠˊ)時間14年前 (2011/06/21 15:42), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
其實你在google上打matlab for就能找到一堆資料了 比在這等答案快多了... for i=1:10 %你要的指令 end 就等於 for (i=1;i<=10;i++) { //你要的指令 } ※ 引述《soyjay (隱鬼 桀)》之銘言: : 不好意思 我在作DCT轉換時遇到問題了(有爬過相關文及網路上的論壇 : 所以想請教版上各位高手 : 問題是這樣的: : 我要對一張512*512的圖(raw檔)作DCT轉換 : 再以8*8的矩陣做量化 反量化 : 再作IDCT : 就是作JPEG影像壓縮 但是不能使用dct2等funtion call : 於是我參考了這個網址的程式碼 : http://www.programmer-club.com.tw/ShowSameTitleN/cb/13866.html : 試著把它轉成MATLAB的格式寫法 : 我輸入程式碼如下: : f=fopen('Lena.raw','r'); % 讀檔 % : fid=fread(f,[512,512],'uint8') ; : for x=0;x<64;x++ % 把512*512切成64個8*8的block (X軸)% : for y=0;y<64;y++ % 把512*512切成64個8*8的block (Y軸)% : sum=0; : for u=0;u<8;u++ % 8*8的block裡面X軸方向的pixel % : for v=0;v<8;v++ % 8*8的block裡面Y軸方向的pixel % : sum+=fid [u][v]*cos((2x+1)*u*pi/16)*cos((2y+1)*v*pi/16); % DCT % : 寫到這行按下enter準備寫下一行 : 卻出現這個錯誤訊息: : ??? sum+=fid[u*8+v]*cos((2x+1)*u*pi/16)*cos((2y+1)*v*pi/16); : | : Error: The expression to the left of the equals sign is not a valid target for : an assignment. : 請問可以告訴我是架構錯了還是算式寫錯了嗎? : JEPG的原理還有基本的作法我已經知道了(參考的網站講解的很清楚 : 只是在寫for迴圈有很大的問題 : 請各位高手指教, 感激不盡!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.93.131

06/22 20:11, , 1F
謝謝大大解答!! 我已經找書來看了 輸入方法錯了
06/22 20:11, 1F
文章代碼(AID): #1E04jmog (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1E04jmog (MATLAB)