两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種數(shù)字圖像數(shù)據(jù)編碼方法

文檔序號:7954270閱讀:348來源:國知局
專利名稱:一種數(shù)字圖像數(shù)據(jù)編碼方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種圖像編碼技術(shù)領(lǐng)域的方法,具體是一種數(shù)字圖像數(shù)據(jù)編碼方法。
背景技術(shù)
隨著多媒體與國際互聯(lián)網(wǎng)的快速發(fā)展,圖像數(shù)據(jù)越來越隨處可見。因為數(shù)字圖像的原始數(shù)據(jù)量通常都具有非常龐大的數(shù)據(jù)量,一幅寬1024高768的32位色的數(shù)字圖像需要字3145728節(jié)容量來存儲,所以為了提高存儲與傳送圖像數(shù)據(jù)效率,圖像數(shù)據(jù)壓縮技術(shù)即圖像編碼技術(shù)越來越顯得重要。JPEG,GIF,PNG,BMP等圖像的編碼技術(shù)都是常用的靜態(tài)圖像編碼技術(shù),MPEG,H264,DIVX,XVID等是常用的運動圖像編碼技術(shù)。GIF,JPEG,PNG圖像編碼技術(shù)具有很高的壓縮效率,但是編碼運算量相對也較大,BMP圖像的編碼技術(shù)雖然編碼運算量很小但對圖像數(shù)據(jù)壓縮并無太多貢獻(xiàn);MPEG,H264,DIVX,XVID編碼技術(shù)同樣具有雖然壓縮效率高但運算量巨大的問題。
經(jīng)對現(xiàn)有技術(shù)的文獻(xiàn)檢索發(fā)現(xiàn),美國專利申請?zhí)枮閁S 6,396,955,專利名稱為Image compression and expansion device,該專利描述了一種編解碼器,方法是先將圖像數(shù)據(jù)進(jìn)行離散余弦變換,然后分別經(jīng)過量子化處理,位分離處理,分組處理,最后進(jìn)行編碼處理,最終完成圖像數(shù)據(jù)的編碼;圖像數(shù)據(jù)的解碼過程就是對編碼過程的一個逆操作過程。該發(fā)明與本發(fā)明相比較,不足之處是,在對圖像數(shù)據(jù)進(jìn)行離散余弦變換與量子化處理時對硬件計算能力支持有相對比較高的要求,對計算資源耗費比較大,并且圖像編解碼后失真現(xiàn)象不可避免。

發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有技術(shù)的不足,提供一種數(shù)字圖像數(shù)據(jù)編碼方法,使其將原始圖像數(shù)據(jù)壓縮成數(shù)據(jù)量較小的圖像數(shù)據(jù),通過較小編碼運算來獲得較高的壓縮效率,適用于16位,24位,32位色數(shù)字圖像壓縮。
本發(fā)明是通過以下技術(shù)方案的,本發(fā)明首先對原始圖像按從左到右從上到下的順序取得像素點8×8矩形圖像數(shù)據(jù)塊,以8×8圖像數(shù)據(jù)塊作為編碼基本單元,然后分別采用色表編碼與位編碼對每一個數(shù)據(jù)塊進(jìn)行數(shù)據(jù)編碼,對于尺寸不足8×8圖像數(shù)據(jù)塊,應(yīng)用色表編碼時,用本塊中像素點最多的顏色值來補足,應(yīng)用位編碼時,不需要補足。根據(jù)兩種編碼結(jié)果,取編碼效率較高的編碼數(shù)據(jù)作為最終數(shù)據(jù)。編碼后的圖像數(shù)據(jù)分成三個部分塊單色表部分,色表部分,塊編碼部分,其中塊編碼部分中的每一塊編碼數(shù)據(jù)包括說明字節(jié)與編碼數(shù)據(jù)。塊單色表部分用于存儲最多126個顏色值,用于8×8圖像塊為一種顏色值時的編碼索引。色表部分用于存儲色表編碼或者位編碼統(tǒng)計出來的顏色值,顏色值按塊序列順序保存。塊編碼部分,即用于保存對8×8圖像塊編碼后產(chǎn)生的數(shù)據(jù);每一塊8×8圖像塊編碼后產(chǎn)生的數(shù)據(jù)之前都有一個說明字節(jié)。
所述色表編碼,只允許每個8×8圖像塊中最多有8種顏色,并取塊中出現(xiàn)最多的8種顏色,這8種顏色值按順序放到色表中;對于多出的顏色的像素點值被替換,替換規(guī)則是首先按顏色所擁用的像素點的數(shù)量從多到少排序,將最后一種顏色值三元色紅(R)綠(G)藍(lán)(B)分別減去前面幾中顏色值的三元色,分別將差取絕對值相加,然后找到和為最小那個顏色,就將最后一種顏色的所有像素點數(shù)據(jù)替換成這個找到的顏色值,然后再按顏色排序重復(fù)這種操作,一直到顏色數(shù)量少于等于8種,最后對所擁有少于4個像素點的顏色也被同樣替換;塊中顏色少于等于4種,則像素點編碼用2位(bit)數(shù)據(jù)來表示其在本塊顏色序列中的索引;塊中顏色等于2種,則像素點編碼用1位(bit)數(shù)據(jù)來表示其在本塊顏色序列中的索引;塊中顏色多于4種,則像素點編碼用3位(bit)數(shù)據(jù)來表示其在本塊顏色序列中的索引。
所述位編碼,對每個8×8圖像塊中的像素點按顏色統(tǒng)計,并按每種顏色所擁有像素點從多到少排序顏色值;并將顏色值按順序保存到色表中;從像素點最多的顏色開始逐個按顏色做如下編碼在塊中從左到右從上到下,將像素點為當(dāng)前顏色的用1位(bit)數(shù)據(jù)1表示,不是當(dāng)前顏色的用1位數(shù)據(jù)(bit)0表示,對第一種顏色與第二種顏色編碼每8位用一個字節(jié)保存,對第三種顏色及以后的顏色編碼每七位保存到一個字節(jié)的低七位中,高一位為1表示是一種顏色編碼數(shù)據(jù)的開始,為0表示與前一個字節(jié)編碼數(shù)據(jù)是同一種顏色;第一種顏色編碼完成后,將編碼為0的像素點數(shù)據(jù)按從左到右從上到下順序按次序重新排列,然后重復(fù)前面的編碼過程,最終完成編碼。
對同一8×8圖像塊分別用色表編碼與位編碼,塊顏色數(shù)量少于等于8種時,取編碼后數(shù)據(jù)量較小的編碼數(shù)據(jù);否則,計算位編碼后所得編碼數(shù)據(jù)字節(jié)數(shù)減去色表編碼后所得編碼數(shù)據(jù)字節(jié)數(shù),結(jié)果小于16個字節(jié)則保存位編碼的編碼數(shù)據(jù),否則保存色表編碼的編碼數(shù)據(jù),未保存的編碼數(shù)據(jù)丟棄。
每一塊編碼數(shù)據(jù)都包括說明字節(jié)與編碼數(shù)據(jù),說明字節(jié)用于說明本塊數(shù)據(jù)如何編碼的;最高位為0,表示本圖像塊只有一種顏色,其余七位(bit)數(shù)據(jù)值不為127時表示本塊顏色值在塊單色表中的索引,且編碼數(shù)據(jù)中只有說明字節(jié),否則表示編碼數(shù)據(jù)保存的為本塊顏色值;最高位為1,則看第7位(bit),該位為0,表示本圖像塊數(shù)據(jù)是用色表編碼來編碼的,該位為1,表示用位編碼,其余低6位保存本圖像塊中所擁有的顏色數(shù)量減1的差值。
編碼數(shù)據(jù)中色表部分可以二次編碼,以最大限度壓縮數(shù)字圖像,但本發(fā)明不再提供這個編碼方法。用本發(fā)明的方法編碼數(shù)字圖像,解碼圖像的編碼數(shù)據(jù)就是編碼的逆過程,本發(fā)明不再提供詳細(xì)解碼方法。


圖1為編碼數(shù)據(jù)保存結(jié)構(gòu)2為色表編碼流程3為位編碼流程4為數(shù)字圖像編碼流程圖具體實現(xiàn)方式為了更清楚的理解本發(fā)明,以下結(jié)合附圖和實施例對本發(fā)明作進(jìn)一步的詳細(xì)描述。
如圖4所示,首先對原始圖像按從左到右從上到下的順序取得像素點8×8矩形圖像數(shù)據(jù)塊,以8×8圖像數(shù)據(jù)塊作為編碼基本單元,分別進(jìn)行色表編碼和位編碼,編碼完成后,本塊圖像的原始顏色如果不多于8種,則保存編碼數(shù)據(jù)量少的編碼數(shù)據(jù),如果多于8種,計算位編碼數(shù)據(jù)量減色表編碼數(shù)量的差,如果差不少于16,則保存色表編碼數(shù)據(jù),否則保存位編碼數(shù)據(jù),沒有被保存的編碼數(shù)據(jù)丟棄。然后檢測繼續(xù)取下一塊圖像數(shù)據(jù),重復(fù)如上編碼操作,直至最后一塊圖像編碼結(jié)束。
如圖2所示,是色表編碼流程圖。首先對本塊圖像統(tǒng)計顏色,并統(tǒng)計出每種顏色擁有像素點的數(shù)量,檢查本塊圖像是否只有一種顏色,如果是一種顏色則完成本塊編碼,否則繼續(xù)檢查本塊圖像是否滿足高寬都是8個像素,不足8個像素,用本塊中出現(xiàn)最多的顏色來補足8×8高寬。然后檢測本塊中的顏色是否多于8種,如果多于8種,則按如下三步操作1)則按所擁有的像素點數(shù)量給顏色排序;2)將排在最后一位的顏色所扔用的像素點替換掉;3)檢測顏色仍是否多于8種,如果多于8種,循環(huán)返回第1步繼續(xù)操作,否則退出循環(huán)。
如上第2)步中,替換像素點需遵循如下規(guī)則將最后一種顏色的三元色紅(R)綠(G)藍(lán)(B)的值分別減去前面幾中顏色的三元色的值,分別將差取絕對值相加,然后找到和為最小那個顏色,將最后一種顏色的所有像素點數(shù)據(jù)替換成這個找到的顏色值。如上操作完成后,接著按如下步驟循環(huán)操作A.則按所擁有的像素點數(shù)量給顏色排序;B.按顏色所擁有像素由少到多,檢測是否有少于4個像素點的顏色,如果有,則繼續(xù)操作下面的操作,如果沒有,則退出循環(huán);C.用前面的方法替換少于4個像素點的顏色的所有像素點數(shù)據(jù),然后返回第1步;如上循環(huán)完成后,檢測本塊圖像現(xiàn)在的顏色數(shù),多于4種則用3位(bit)數(shù)據(jù)編碼,少于4種用2位(bit)數(shù)據(jù)編碼,等于2種用1位(bit)數(shù)據(jù)編碼,就是將本圖像塊中的像素點根據(jù)基顏色在前面排序的位置,用1,2或者3位來表示它的位置索引,位置索引從0基數(shù)開始,即排名第一的顏色序號為0。每8位保存在一個字節(jié)中,按照從低位向高位保存,如果當(dāng)前的字節(jié)沒有足夠空間來保存3位數(shù)據(jù),則將未保存的高位數(shù)據(jù)保存到下一個字節(jié)中。最終完成本塊圖像的色表編碼。
如圖3所示,是位編碼流程圖。首先對本塊圖像統(tǒng)計顏色,并統(tǒng)計出每種顏色擁有像素點的數(shù)量,然后按所擁有的像素點數(shù)量給顏色排序,接著初始化計數(shù)器count為0,然后按如下步驟循環(huán)操作1.取序號為count的顏色為參照值;2.如果count大于1,則用7位(bit)數(shù)據(jù)編碼,否則用8位(bit)數(shù)據(jù)編碼;3.將編碼后,非參照顏色的像素點按從左到右從上到下的順序取出,并按順序重組;計數(shù)器count加1;4.檢測計數(shù)器count是否大于等于本塊顏色數(shù)量,如果否,則循環(huán)返回步驟,否則退出循環(huán)。
步驟2中,用8位數(shù)據(jù)編碼,即將像素點的顏色與參照顏色相同時,用1位(bit)數(shù)據(jù)1表示,否則用1位(bit)數(shù)據(jù)0表示,每8位保存在一個字節(jié)中,按照從低向高位保存,不足一個字節(jié)用一個字節(jié)保存;用7位數(shù)據(jù)編碼,作最高位(bit)有特定意義外,其它都與用8位數(shù)據(jù)編碼一至。用7位數(shù)據(jù)編碼,最高位(bit)數(shù)據(jù)為1時,表示本字節(jié)為一種顏色編碼數(shù)據(jù)的開始,為0,則表示本字節(jié)所編碼的像素點的顏色與前一個字節(jié)相同。
色表編碼與位編碼完成后,統(tǒng)計兩種編碼數(shù)據(jù)量。色表編碼,當(dāng)塊為單色是,數(shù)據(jù)量為0,否則編碼數(shù)據(jù)由經(jīng)檢查替換后的顏色值與編碼數(shù)據(jù)組成,數(shù)據(jù)量就是二者字節(jié)數(shù)之和。位編碼是則顏色值與編碼數(shù)據(jù)組成,數(shù)據(jù)量是二者字節(jié)數(shù)之和。
如圖1所示,是編碼數(shù)據(jù)結(jié)構(gòu)圖。當(dāng)色表編碼的數(shù)據(jù)量為0,即當(dāng)塊為單色時,在塊單色表中查詢是否有相同顏色值,如果沒有,則在塊單色表中追加新的顏色值;說明字節(jié)中保存顏色值在塊單色表中的索引,完成編碼保存;如果本塊圖像的原始顏色如果不多于8種,則保存編碼數(shù)據(jù)量少的編碼數(shù)據(jù),如果多于8種,計算位編碼數(shù)據(jù)量減色表編碼數(shù)量的差,如果差不少于16,則保存色表編碼數(shù)據(jù),否則保存位編碼數(shù)據(jù),沒有被保存的編碼數(shù)據(jù)丟棄。保存編碼數(shù)據(jù)時,將塊排過序的顏色序列按順序保存到色表中,每一塊顏色序列都緊隨上一塊的保存。每一塊編碼數(shù)據(jù)都前綴一個說明字節(jié)數(shù)據(jù)描述編碼信息。說明字節(jié)最高位為0,表示本圖像塊只有一種顏色,其余七位(bit)數(shù)據(jù)值不為127時表示本塊顏色值在塊單色表中的索引,否則表示編碼數(shù)據(jù)保存的為本塊顏色值;最高位為1,則看第7位(bit)數(shù)據(jù),該位為0,表示本圖像塊數(shù)據(jù)是用色表編碼來編碼的,該位為1,表示用位編碼,其余低6位保存本圖像塊中所擁有顏色數(shù)量減1的差值。編碼信息也是按順序保存,每一塊編碼數(shù)據(jù)緊隨前一塊的保存。
權(quán)利要求
1.一種數(shù)字圖像數(shù)據(jù)編碼方法,將原始圖像數(shù)據(jù)壓縮成小數(shù)據(jù)量的圖像數(shù)據(jù),其特征在于對原始圖像按從左到右從上到下的順序取得像素點8×8矩形圖像數(shù)據(jù)塊,然后分別采用色表編碼與位編碼對每一個數(shù)據(jù)塊進(jìn)行數(shù)據(jù)編碼,根據(jù)編碼結(jié)果,取編碼效率高的編碼數(shù)據(jù)作為最終數(shù)據(jù),編碼后的圖像數(shù)據(jù)分成三個部分塊單色表部分,色表部分,塊編碼部分,其中塊編碼部分中的每一塊編碼數(shù)據(jù)包括說明字節(jié)與編碼數(shù)據(jù)。
2.如權(quán)利要求1所述的一種數(shù)字圖像數(shù)據(jù)編碼方法,其特征是所述色表編碼,只允許每個8×8圖像塊中最多有8種顏色,并取塊中出現(xiàn)最多的8種顏色,這8種顏色值按順序放到色表中;對于多出的顏色的像素點被替換,替換規(guī)則是首先按顏色所擁用的像素點的數(shù)量從多到少排序,將最后一種顏色的三元色紅綠藍(lán)的值分別減去前面幾中顏色的三元色的值,分別將差取絕對值相加,然后找到和為最小那個顏色,就將最后一種顏色的所有像素點數(shù)據(jù)替換成這個找到的顏色值,然后再按顏色排序重復(fù)這種操作,一直到顏色數(shù)量少于等于8種,最后對所擁有少于4個像素點的顏色也被同樣替換;塊中顏色少于等于4種,則像素點編碼用2位數(shù)據(jù)來表示其在本塊顏色序列中的索引;塊中顏色等于2種,則像素點編碼用1位數(shù)據(jù)來表示其在本塊顏色序列中的索引;塊中顏色多于4種,則像素點編碼用3位數(shù)據(jù)來表示其在本塊顏色序列中的索引。
3.如權(quán)利要求1所述的一種數(shù)字圖像數(shù)據(jù)編碼方法,其特征是所述位編碼,對每個8×8圖像塊中的像素點按顏色統(tǒng)計,并按每種顏色所擁有像素點從多到少排序顏色值;并將顏色值按順序保存到色表中;從像素點最多的顏色開始逐個按顏色做如下編碼在塊中從左到右從上到下,將像素點為當(dāng)前顏色的用1位數(shù)據(jù)1表示,不是當(dāng)前顏色的用1位數(shù)據(jù)0表示,對第一種顏色與第二種顏色編碼每8位用一個字節(jié)保存,對第三種顏色及以后的顏色編碼每七位保存到一個字節(jié)的低七位中,高一位為1表示是一種顏色編碼數(shù)據(jù)的開始,為0表示與前一個字節(jié)編碼數(shù)據(jù)是同一種顏色;第一種顏色編碼完成后,將編碼為0的像素點數(shù)據(jù)按從左到右從上到下按順序重新排列重組,然后重復(fù)前面的編碼過程,循環(huán)操作直至完成本塊圖像數(shù)據(jù)編碼。
4.如權(quán)利要求2或3的所述的一種數(shù)字圖像數(shù)據(jù)編碼方法,其特征是對同一8×8圖像塊分別用色表編碼與位編碼,塊顏色數(shù)量少于等于8種時,取編碼后數(shù)據(jù)量較小的編碼數(shù)據(jù);否則,計算位編碼后所得編碼數(shù)據(jù)字節(jié)數(shù)減去色表編碼后所得編碼數(shù)據(jù)字節(jié)數(shù),結(jié)果小于16個字節(jié)則保存位編碼的編碼數(shù)據(jù),否則保存色表編碼的編碼數(shù)據(jù)。
5.如權(quán)利要求1所述的一種數(shù)字圖像數(shù)據(jù)編碼方法,其特征是所述塊單色表部分,用于存儲8×8圖像塊中只有一種顏色時的顏色值,最多只保存126種顏色值。
6.如權(quán)利要求1所述的一種數(shù)字圖像數(shù)據(jù)編碼方法,其特征是所述說明字節(jié),用于說明本塊數(shù)據(jù)如何編碼的;最高位為0,表示本圖像塊只有一種顏色,其余七位數(shù)據(jù)值不為127時表示本塊顏色值在塊單色表中的索引,否則表示編碼數(shù)據(jù)保存的為本塊顏色值;最高位為1,則看第7位數(shù)據(jù),該位為0,表示本圖像塊數(shù)據(jù)是用色表編碼來編碼的,該位為1,表示用位編碼,其余低6位保存本圖像塊中所擁有顏色數(shù)量減1的差值。
全文摘要
本發(fā)明是一種數(shù)字圖像數(shù)據(jù)編碼方法,屬于圖像編碼技術(shù)領(lǐng)域。本發(fā)明將原始圖像數(shù)據(jù)壓縮成小數(shù)據(jù)量的圖像數(shù)據(jù),其特征在于對原始圖像按從左到右從上到下的順序取得像素點8×8矩形圖像數(shù)據(jù)塊,然后分別采用色表編碼與位編碼對每一個數(shù)據(jù)塊進(jìn)行數(shù)據(jù)編碼,根據(jù)編碼結(jié)果,取編碼效率高的編碼數(shù)據(jù)作為最終數(shù)據(jù),編碼后的圖像數(shù)據(jù)分成三個部分塊單色表部分,色表部分,塊編碼部分,其中塊編碼部分中的每一塊編碼數(shù)據(jù)包括說明字節(jié)與編碼數(shù)據(jù)。本發(fā)明將原始圖像數(shù)據(jù)壓縮成數(shù)據(jù)量較小的圖像數(shù)據(jù),通過較小編碼運算來獲得較高的壓縮效率,適用于16位,24位,32位色數(shù)字圖像壓縮。
文檔編號H04N7/24GK1904943SQ20061002969
公開日2007年1月31日 申請日期2006年8月3日 優(yōu)先權(quán)日2006年8月3日
發(fā)明者沈家明, 申瑞民, 王加俊 申請人:上海交通大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
调兵山市| 赤水市| 孟州市| 同德县| 错那县| 三门县| 陈巴尔虎旗| 定结县| 清远市| 塔城市| 敦化市| 德阳市| 普洱| 门头沟区| 滁州市| 凌云县| 巧家县| 卢龙县| 霍林郭勒市| 吉安县| 平顶山市| 丽江市| 六枝特区| 镇雄县| 庆阳市| 财经| 福海县| 孟连| 鄂托克旗| 漳州市| 陵川县| 浪卡子县| 达州市| 德清县| 巴林左旗| 岑溪市| 辽宁省| 东台市| 南溪县| 息烽县| 故城县|