新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于DSP的圖像壓縮系統設計

        基于DSP的圖像壓縮系統設計

        作者: 時間:2014-05-20 來源:網絡 收藏

         

        本文引用地址:http://www.104case.com/article/247104.htm

        和差都是已知系數,可通過查表獲得。

        由此計算可知,一個8點DCT的Loeffler算法共需要11次乘法和29次加法。從DSP匯編語言編程的角度來看,一個代數運算應包括取操作數、運算、存操作數三個步驟。因此,該算法大約需要120條指令。C5409的運算能力很強,支持單周期加/減法和單周期乘法運算,并且能夠在單周期內完成兩個16位數的加/減法運算,再加上DSP中有3組數據總線,因而可以利用長操作數(32位)進行長字運算。在長字指令中,給出的地址存取的總是高16位操作數,因而只需5條長字指令即可計算2個蝶形運算。加上采取其它優化措施,大約需90條指令完成Loeffler算法。

        雖然Loeffler算法運算量最小,但是運用于本文系統并不是最優。因為該算法是為高級語言設計,沒有利用匯編語言的特點和DSP硬件的特點。本文提出了基于DSP乘法累加單元的DCT快速算法。

        DSP的乘法累加單元能在單周期內完成一次乘法和一次累加運算。如匯編指令運用于DCT運算,將大大簡化程序的復雜度并減少計算時間。具體算法如下,利用蝶形運算:

         

         

        從上面表達式可以看出,y(0)-y(7)都是乘法累加運算,而s0-s7可由x(0)一x(7)經過蝶形運算得到,因此,DCT算法由原來的4級運算變成兩級,即第一級蝶形運算和第二級乘法累加運算,第一級蝶形運算共要10+4=14(10次計算操作和4次輔助操作)條指令,第二級運算中,每個輸出要4+1+1=6條指令(做4次乘法累加運算、1次讀取操作和1次存儲操作),一共48條指令,這樣,計算一個8點DCT要62條指令,大大縮減了運算時間,提高了CPU的工作效率,增強系統的實時性。

        量化運算優化

        本文提出了基于實際情況的自適應量化方法,即量化階段采用二次計算的方法,其算法主要分為兩步:(1)對變換后的圖像系數進行自適應處理;(2)構造新的量化表。具體方法如下:

         

         

        首先求出亮度分量和兩個色度分量在頻域中所有8×8子塊的63個交流系數絕對值的平均值P(u,v),其中,u,v=0…7為位置信息。接下來求出163個交流系數平均值中的最大值,Z1(u,v)=MAX[P1(u,v)],最后將63個交流系數平均值進行歸一化處理,同時加入頻率位置信息,分別得出亮度和色度量化表中63個交流分量的矯正系數,計算過程為:

        由此可以得到量化表的矯正式Qpl(u,v)=Q1(u,v)/X1(u,v),對JPEG量化表進行矯正。

        將上述矯正后的量化表作為最終的量化表,對圖像進行標準JPEG壓縮,形成完全符合JPEG格式的壓縮文件。本算法的解碼過程與標準。JPEG解碼過程完全相同,可以看出它也是標準。IPEG編碼過程的逆過程。

        實驗結果

        快速DCT運算

        將本文提出的算法、Loeffler的DSP優化算法和純Loeffler算法分別進行測試。結果見表1,可以看到本文算法較Loeffler的DSP優化算法大約節省了1/4的時間,較純Loeffler算法大約節省了一半時間,其效果是十分明顯的。

        自適應量化

        對自適應量化器進行仿真。本文采用中等復雜度的標準圖像作為測試圖,與基本JPEG系統進行性能比較(基于峰值信噪比(PSNR))。只將JPEG標準方法中的量化表更改為修正的量化表,就可以在同等壓縮比下,提高恢復圖像的質量。表2為不同壓縮比下,采用JPEG量化表和自適應量化表兩種方法的峰值信噪比。從壓縮比和峰值信噪比的對比結果可看出,自適應量化JPEG方法的壓縮比略高于標準JPEG方法。

        結語

        該系統的優點是提高了JPEG的運行速度,增強了圖像的壓縮率和質量,并且易于硬件實現。這一方案可應用于需要對視頻圖像進行實時采集、壓縮及存儲的絕大部分場合。

        移動電源相關文章:移動電源是什么


        51單片機相關文章:51單片機教程


        存儲器相關文章:存儲器原理



        上一頁 1 2 下一頁

        關鍵詞: TI C5000

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南和县| 龙山县| 合水县| 花莲县| 安陆市| 上高县| 崇阳县| 高邮市| 依安县| 黄陵县| 保靖县| 康平县| 庄浪县| 顺昌县| 宣武区| 天门市| 北京市| 桐城市| 曲麻莱县| 漳浦县| 安宁市| 红桥区| 富锦市| 卫辉市| 古浪县| 正蓝旗| 海城市| 榆树市| 湖口县| 漳平市| 孟州市| 龙泉市| 隆尧县| 鞍山市| 巍山| 攀枝花市| 达孜县| 济阳县| 神池县| 边坝县| 固镇县|