基于FPGA的無(wú)損圖像壓縮系統設計
摘要:本文簡(jiǎn)要介紹了圖像壓縮的重要性和常用的無(wú)損圖像壓縮算法,分析了快速高效無(wú)損圖像壓縮算法(FELICS)的優(yōu)勢,隨后詳細分析了該算法的編碼步驟和硬件實(shí)現方案,最后公布了基于該方案的FPGA性能指標。和其他壓縮算法相比該方案可極大地減小無(wú)損圖像壓縮系統所需的存儲空間和壓縮時(shí)間。
本文引用地址:http://dyxdggzs.com/article/267434.htm引言
隨著(zhù)信息技術(shù)的巨大革新,數據存儲和傳輸開(kāi)始在人類(lèi)生活中變得越來(lái)越重要,數據壓縮技術(shù)因而應運而生,它不僅能減少數據存儲所需的空間還可以緩解傳輸帶寬的壓力。數據壓縮可以分為有損壓縮和無(wú)損壓縮兩種,其中有損壓縮技術(shù)可以獲得較高的壓縮比,但是會(huì )丟失一些圖片信息,可以應用在對圖像質(zhì)量要求不高的領(lǐng)域,但是在醫療圖像、航天圖像等特殊領(lǐng)域中,則要求圖像壓縮算法是無(wú)損的[1]。
無(wú)損壓縮技術(shù)可以去除冗余信息并保證重建的步驟不會(huì )對原始信息帶來(lái)任何損失。這樣一來(lái),解碼后的信息就和原始信息精確相等。CALIC [2]和JPEG-LS[3]等諸多算法都已經(jīng)被廣泛應用在這一領(lǐng)域。另外,離散小波變換(DWT)算法也常被用來(lái)放松對開(kāi)環(huán)視頻編碼系統存儲空間和帶寬的要求。但是,這些算法大多對數據具有嚴重的依賴(lài)性并且編碼步驟較為復雜,因此限制了其在高速產(chǎn)品中的應用??焖俑咝o(wú)損圖像壓縮系統(FELICS)于1993年由P.G.howard提出[4],這是一種以編碼效率見(jiàn)長(cháng)的無(wú)損圖像壓縮算法,并且編碼時(shí)對數據沒(méi)有依賴(lài)性,因此能應用在高速壓縮系統中[5-6]。幾種壓縮算法的壓縮比和壓縮時(shí)間對比如圖1所示,可以看出FELICS算法壓縮比適中,但壓縮效率的優(yōu)勢較為明顯。
接下來(lái)將詳細分析FELICS算法的優(yōu)勢和具體的編碼步驟,最后將針對這一壓縮算法提出一種基于FPGA的硬件實(shí)現方案。
1 整體算法設計
FELICS算法中應用到三種主要的技術(shù)手段:像素點(diǎn)分布模型的選取、修正的二元編碼和GOLOMB-RICE熵編碼。
1.1 像素點(diǎn)分布模型
整幅圖像前兩個(gè)像素點(diǎn)不進(jìn)行編碼處理直接輸出,從第三個(gè)像素點(diǎn)開(kāi)始選取與之相鄰的兩個(gè)像素點(diǎn)作為參考像素點(diǎn),參考像素點(diǎn)的選取規則如圖3所示,用i和j來(lái)表示行號和列號,P,N1和N2表示當前像素點(diǎn)和兩個(gè)參考像素點(diǎn),選取規則如下:
If (i==1 && j<3) 直接輸出,無(wú)需編碼
If (i==1 && j>2) N1=P[i,j-1],N2=P[i,j-2];
If (i>1 && j==1) N1=P[i-1,j],N2=P[i-1,j+1];
If (i>1 && j>1) N1=P[i,j-1],N2=P[i-1,j];
選出參考像素點(diǎn)N1與N2之后,將二者進(jìn)行比較,記較大者為H,較小者為L(cháng),Δ為H-L。
fpga相關(guān)文章:fpga是什么
評論