新聞中心

        EEPW首頁 > 網(wǎng)絡與存儲 > 設計應用 > 基于FPGA的無損圖像壓縮系統(tǒng)設計

        基于FPGA的無損圖像壓縮系統(tǒng)設計

        作者:于瀟 時間:2014-12-29 來源:電子產(chǎn)品世界 收藏
        編者按:  摘要:本文簡要介紹了圖像壓縮的重要性和常用的無損圖像壓縮算法,分析了快速高效無損圖像壓縮算法(FELICS)的優(yōu)勢,隨后詳細分析了該算法的編碼步驟和硬件實現(xiàn)方案,最后公布了基于該方案的FPGA性能指標。和其他壓縮算法相比該方案可極大地減小無損圖像壓縮系統(tǒng)所需的存儲空間和壓縮時間。   引言   隨著信息技術的巨大革新,數(shù)據(jù)存儲和傳輸開始在人類生活中變得越來越重要,數(shù)據(jù)壓縮技術因而應運而生,它不僅能減少數(shù)據(jù)存儲所需的空間還可以緩解傳輸帶寬的壓力。數(shù)據(jù)壓縮可以分為有損壓縮和無損壓縮兩種,其中有損壓縮技

          依照當前P位于區(qū)間[L,H]的位置信息,分為三種情況采用不同的編碼方式:

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

          If (L≤P≤H) 選用修正的二元編碼,并用1比特’0’來表示P落于[L,H]內(nèi),殘余值R=P-L;

          If (P≤L) 選用編碼,并用2比特’10’表示P落于小于下界L的區(qū)間內(nèi),殘余值R=L-P-1;

          If (H≤P) 同樣選用編碼,并用2比特’11’表示P落于大于上界H的區(qū)間內(nèi),殘余值R=P-H-1。

          1.2 修正的二元編碼

          在修正二元編碼的編碼區(qū)間[L,H]內(nèi),中間部分和兩邊部分相比,有出現(xiàn)的概率要略高一些,所以對二進制編碼進行修正,對中間部分的殘余值R賦予較短的編碼,對兩邊部分像素點的殘余值R賦予較長的編碼。例如當△為5時,P值的可能值為0、1、2、3、4、5。在編碼時,將處在區(qū)間中央的2、3分別編碼為00和11,而將0、1、4、5分別編碼為110、111、100和101。

          1.3 熵編碼

          GOLOMB-RICE熵編碼是GOLOMB編碼的一種特殊情況,屬于指數(shù)編碼的一種。FELICS算法中像素點概率分布模型在小于下界L和大于上界H的部分是以指數(shù)形式分布的,符合GOLOMB-RICE編碼的適用范圍,因此選用這種編碼方法。編碼步驟如下:

          (1)選定參數(shù)K

          在整幅圖像編碼開始之前,建立一個U×V×T比特大小的累加表,其中U,V和T分別代表背景值Δ的個數(shù)、備選K值的個數(shù)和每一個K值下累計編碼的長度。在每一次進行GOLOMB-RICE編碼之前,按照Δ的數(shù)值定位到累加表的相應行,選出累計編碼長度最短的K值作為當前像素殘余值GOLOMB-RICE編碼的K值。

          (2)分別確定一進制和二進制編碼

          一進制編碼:unary=R/2K的整數(shù)部分;

          二進制編碼:binary=R/2K的余數(shù)部分;

          最終的GOLOMB-RICE編碼由三部分組成:unary個’1’,binary的二進制形式和1比特’0’,其中’0’置于一進制編碼和二進制編碼之間,作為解碼時的標志位。

          (3)更新累加表

          編碼完成之后要依次用備選的K值對殘余值R進行GOLOMB-RICE編碼,計算出編碼的長度并累加到累加表中K值相應的位置處,以用于后續(xù)像素點進行GOLOMB-RICE編碼時K值的選取。

          2 壓縮系統(tǒng)硬件設計

          設計采用 4 級流水線結構,系統(tǒng)只有一個主時鐘CLK作為工作時鐘。硬件實現(xiàn)包括控制單元、上下文模型選取單元、預測單元、熵編碼單元和并串轉(zhuǎn)換單元,硬件結構框圖如圖 4。

        fpga相關文章:fpga是什么




        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 华亭县| 武夷山市| 垫江县| 垦利县| 察雅县| 武川县| 嵊州市| 衡阳县| 陆川县| 高雄县| 土默特左旗| 阳新县| 黄梅县| 高碑店市| 南宫市| 石河子市| 蓬莱市| 高要市| 阜宁县| 祁阳县| 酒泉市| 宜阳县| 苗栗县| 临沭县| 巧家县| 霍林郭勒市| 江孜县| 都安| 明水县| 樟树市| 电白县| 扶风县| 太白县| 岐山县| 天峨县| 团风县| 定襄县| 冀州市| 久治县| 鹤壁市| 沈阳市|