一種形狀自適應(yīng)編碼的證件照片壓縮方法
【專利摘要】本發(fā)明公開一種形狀自適應(yīng)編碼的證件照片壓縮方法,其步驟主要有:利用圖像區(qū)域分割與圖像邊緣檢測相結(jié)合的方法精準(zhǔn)分割證件照片;利用4-方向鏈碼方法編碼證件照片前景區(qū)域輪廓;利用提升形狀自適應(yīng)離散小波變換去除前景區(qū)域圖像像素相關(guān)性;利用基于上下文預(yù)測編碼方法編碼小波低頻系數(shù);利用形狀自適應(yīng)零樹編碼法編碼小波高頻系數(shù);提取背景信息;整合輪廓編碼、零樹編碼和預(yù)測編碼的編碼序列,利用整數(shù)自適應(yīng)算術(shù)編碼法進(jìn)行二次編碼。本發(fā)明具有對證件照片高效壓縮和良好視覺效果的優(yōu)點(diǎn)。
【專利說明】一種形狀自適應(yīng)編碼的證件照片壓縮方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種圖像壓縮技術(shù),特別涉及一種形狀自適應(yīng)編碼的證件照片壓縮方法。
【背景技術(shù)】
[0002]圖像之所以能夠被壓縮,是因?yàn)樗哂写罅康臄?shù)據(jù)信息,而這些數(shù)據(jù)信息存在著冗余數(shù)據(jù)。傳統(tǒng)圖像壓縮是將整幅圖像的所有區(qū)域作為同等重要的一個(gè)對象進(jìn)行壓縮,然而人類視覺系統(tǒng)對于圖像信息的感知是具有選擇性的,人們在觀察和分析圖像的時(shí)候,往往會(huì)被圖像中的某些區(qū)域引起特別的關(guān)注。
[0003]人們通過證件照片辨識(shí)人的信息主要在照片的前景區(qū)域,對于背景區(qū)域幾乎可以忽略不計(jì)。針對證件照片的這個(gè)特點(diǎn),目前也有很多針對證件照片的壓縮算法。基于特征校正的二級矢量量化算法實(shí)現(xiàn)了對黑白照片的壓縮,結(jié)合二級矢量量化算法和改進(jìn)嵌入式零樹編碼的混合算法實(shí)現(xiàn)了對彩色照片的壓縮,三級質(zhì)量分級算法也實(shí)現(xiàn)了對彩色照片的壓縮。但是這三種方法都有共同的特點(diǎn),區(qū)分證件照片關(guān)注區(qū)域和非關(guān)注區(qū)域采用不同的編碼方法提高壓縮的效率,但是它們也都存在一定的局限性,對于關(guān)注區(qū)域的設(shè)定不是任意形狀區(qū)域,而是簡單的矩形區(qū)域。本發(fā)明克服了這個(gè)局限性,實(shí)現(xiàn)了證件照片的精準(zhǔn)分割并引入形狀自適應(yīng)編碼算法應(yīng)用到證件照片的壓縮中,不僅提高照片的壓縮效率,同時(shí)還能保持良好的人眼視覺效果。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,提供一種形狀自適應(yīng)編碼的證件照片壓縮方法,該證件照片壓縮方法是一種基于輪廓的任意形狀的壓縮方法,其壓縮效率高,重構(gòu)的證件照片有清晰輪廓,具有良好的人眼視覺效果,支持對照片前景區(qū)域的單獨(dú)編輯和訪問。
[0005]本發(fā)明的目的通過下述技術(shù)方案實(shí)現(xiàn):一種形狀自適應(yīng)編碼的證件照片壓縮方法,主要包括以下步驟:證件照片精準(zhǔn)分割、證件照片前景區(qū)域輪廓編碼、形狀自適應(yīng)圖像編碼;整數(shù)自適應(yīng)算術(shù)編碼。
[0006]證件照片精準(zhǔn)分割步驟,結(jié)合四叉樹分裂合并分割與Canny邊緣檢測的分割方法精準(zhǔn)的提取證件照片前景區(qū)域。利用四叉樹分裂合并分割取得照片前景區(qū)域的粗略位置,結(jié)合Canny邊緣檢測提取照片的邊界輪廓,最后結(jié)合坐標(biāo)系旋轉(zhuǎn)與最小二乘法曲線擬合技術(shù)連接間斷輪廓形成閉合輪廓。
[0007]前景區(qū)域輪廓編碼步驟,首先提取需要編碼的輪廓,然后對輪廓采用4-方向鏈碼進(jìn)行編碼。需要提取的輪廓是指與照片邊框重疊之外的前景區(qū)域輪廓。
[0008]任意形狀圖像編碼中,利用形狀自適應(yīng)提升小波變換去除照片前景區(qū)域圖像相關(guān)性,得到相應(yīng)小波系數(shù);用基于上下文的預(yù)測編碼法編碼小波低頻系數(shù);用形狀自適應(yīng)小波零樹編碼法編碼小波高頻系數(shù)。
[0009]整數(shù)自適應(yīng)算術(shù)編碼步驟,整合輪廓編碼與前景區(qū)域編碼序列,利用整數(shù)自適應(yīng)算術(shù)編碼進(jìn)行二次編碼。
[0010]本發(fā)明的具體方案可以如下:一種形狀自適應(yīng)編碼的證件照片壓縮方法,包括以下步驟:
[0011]步驟1、證件照片分割;
[0012]步驟2、證件照片前景區(qū)域輪廓編碼;
[0013]步驟3、形狀自適應(yīng)圖像編碼;
[0014]步驟4、整數(shù)自適應(yīng)算術(shù)編碼;整合輪廓編碼與前景區(qū)域編碼序列,利用整數(shù)自適應(yīng)算術(shù)編碼進(jìn)行二次編碼;
[0015]所述步驟I包括以下步驟:
[0016]步驟11、四叉樹分裂合并分割證件照片,得到照片前景區(qū)域的初始掩膜;
[0017]步驟12、邊緣檢測提取證件照片輪廓圖像;
[0018]步驟13、將步驟(11)中的掩膜縮小至一個(gè)像素寬度,得到縮小后的掩膜;
[0019]步驟14、將步驟(11)中的初始掩膜與步驟(13)中縮小后的掩膜進(jìn)行減法運(yùn)算,生成最終的掩膜;
[0020]步驟15、將步驟(14)中最終的掩膜與步驟(12)中的輪廓圖像進(jìn)行與運(yùn)算,生成與運(yùn)算后的輪廓;
[0021]步驟16、采取坐標(biāo)系旋轉(zhuǎn)和最小二乘法,曲線擬合并連接步驟(15)中與運(yùn)算后的輪廓,得到照片前景區(qū)域的輪廓;
[0022]步驟17、根據(jù)步驟(16)中的照片前景區(qū)域的輪廓生成前景區(qū)域的掩膜;
[0023]步驟18、根據(jù)步驟(17)中前景區(qū)域的掩膜,提取證件照片前景區(qū)域圖像;
[0024]所述步驟2包括以下步驟:
[0025]步驟21、提取需要編碼的輪廓;
[0026]步驟22、對需要編碼的輪廓采用4-方向鏈碼進(jìn)行編碼。
[0027]所述步驟3包括以下步驟:
[0028]步驟31、證件照片前景區(qū)域掩膜分解;
[0029]步驟32、采用形狀自適應(yīng)提升小波變換去除照片前景區(qū)域圖像相關(guān)性,得到相應(yīng)小波系數(shù);
[0030]步驟33、采用形狀自適應(yīng)小波零樹編碼法編碼小波高頻系數(shù)。
[0031]步驟34、采用基于上下文的預(yù)測編碼法編碼小波低頻系數(shù);
[0032]所述步驟31包括以下步驟:
[0033]步驟Al、從任意形狀的前景掩膜中取出第一列掩膜;
[0034]步驟A2、在每一列內(nèi),確定由連續(xù)掩膜點(diǎn)組成的第一個(gè)分段;
[0035]步驟A3、分別用偶采樣和奇采樣取得低頻和高頻的掩膜數(shù)目;
[0036]步驟A4、將低頻掩膜放在低頻子帶內(nèi)相應(yīng)的列中,高頻掩膜放在高頻子帶內(nèi)相應(yīng)的列中;
[0037]步驟A5、對該列中由連續(xù)掩膜組成的下一個(gè)分段進(jìn)行上述操作;
[0038]步驟A6、對下一列的掩膜進(jìn)行上述分解操作,直到所有列分解完畢為止;
[0039]步驟A7、對低頻和高頻區(qū)域的掩膜進(jìn)行轉(zhuǎn)秩運(yùn)算;
[0040]步驟A8、重復(fù)執(zhí)行步驟Al?A6 ;
[0041]步驟A9、對低頻和高頻區(qū)域的掩膜進(jìn)行轉(zhuǎn)秩運(yùn)算;
[0042]步驟A10、對低頻-低頻子帶重復(fù)執(zhí)行步驟Al?A9,直到完成掩膜分解級數(shù)為止。
[0043]所述步驟32包括以下步驟:
[0044]步驟B1、利用掩膜分解的位置信息確定要需要變換的第一列系數(shù);
[0045]步驟B2、在每一列內(nèi),利用掩膜分解信息確定需要變換的第一個(gè)分段;
[0046]步驟B3、將當(dāng)前分段系數(shù)采用一維適形離散小波變換的提升方案進(jìn)行處理;
[0047]步驟B4、低通小波系數(shù)根據(jù)分解的掩膜信息放在低通子帶內(nèi)相應(yīng)的列中,高通小波系數(shù)則放在高通子帶內(nèi)相應(yīng)的列中;
[0048]步驟B5、對該行中由連續(xù)系數(shù)組成的下一個(gè)分段進(jìn)行上述操作;
[0049]步驟B6、對下一列的像素進(jìn)行上述操作;
[0050]步驟B7、將上述變換得到的低通、高通區(qū)域進(jìn)行轉(zhuǎn)秩運(yùn)算;
[0051]步驟B8、重復(fù)步驟BI?B6,得到四個(gè)子帶;
[0052]步驟B9、對步驟B8中所述的四個(gè)子帶進(jìn)行轉(zhuǎn)秩運(yùn)算;
[0053]步驟B10、對低頻-低頻子帶重復(fù)執(zhí)行步驟BI?B9,直到完成小波分解級數(shù)為止。
[0054]所述步驟33包括以下步驟:
[0055]Cl、在小波樹根節(jié)點(diǎn)層,利用掩膜信息判斷當(dāng)前節(jié)點(diǎn)是否是外節(jié)點(diǎn):如果當(dāng)前節(jié)點(diǎn)是外節(jié)點(diǎn),則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,在解碼時(shí)標(biāo)記為TBD;如果當(dāng)前節(jié)點(diǎn)不是外節(jié)點(diǎn),則用自適應(yīng)算術(shù)編碼器/解碼器對當(dāng)前節(jié)點(diǎn)進(jìn)行編碼;如果當(dāng)前符號是孤立零點(diǎn)或者是值,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,解碼時(shí)標(biāo)記為TBD ;如果當(dāng)前符號是零樹根或者零樹根值,那么將當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)標(biāo)記為NC ;如果當(dāng)前符號是VAL或者VZTR,使用算術(shù)編碼器/解碼器將這個(gè)節(jié)點(diǎn)編碼/解碼成一個(gè)非O小波系數(shù);如果當(dāng)前符號是IZ或者ZTR,把當(dāng)前節(jié)點(diǎn)對應(yīng)的小波系數(shù)設(shè)置為O ;
[0056]C2、介于根節(jié)點(diǎn)層和葉子層中所有的節(jié)點(diǎn),利用掩膜信息判斷節(jié)點(diǎn)是否是外節(jié)點(diǎn):如果當(dāng)前節(jié)點(diǎn)是外節(jié)點(diǎn),則對該節(jié)點(diǎn)不進(jìn)行編碼,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)根據(jù)該節(jié)點(diǎn)被標(biāo)記的狀態(tài)TBE或者NC對應(yīng)標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為TBE或者NC,在解碼時(shí)根據(jù)該節(jié)點(diǎn)被標(biāo)記的狀態(tài)TBD或者NC對應(yīng)標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為TBD或者NC ;如果當(dāng)前節(jié)點(diǎn)不是外節(jié)點(diǎn),判斷當(dāng)前節(jié)點(diǎn)是否被標(biāo)記為NC,如果是,則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼,并將當(dāng)前節(jié)點(diǎn)對應(yīng)的小波系數(shù)設(shè)置為O ;否則,用自適應(yīng)算術(shù)編碼器/解碼器對當(dāng)前節(jié)點(diǎn)編碼一個(gè)符號:如果當(dāng)前符號是IZ或者VAL,標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,在解碼時(shí)標(biāo)記為TBD ;如果當(dāng)前符號是ZTR或者VZTR,標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為NC ;如果當(dāng)前符號是VAL或者VZTR,使用算術(shù)編碼器/解碼器將當(dāng)前節(jié)點(diǎn)編碼/解碼成一個(gè)非O小波系數(shù);如果當(dāng)前符號是IZ或者ZTR,那么將當(dāng)前節(jié)點(diǎn)所對應(yīng)的小波系數(shù)設(shè)置為O ;
[0057]C3、葉子層節(jié)點(diǎn),利用掩膜信息判斷節(jié)點(diǎn)是否是外節(jié)點(diǎn),如果是,則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼;否則,判斷當(dāng)前節(jié)點(diǎn)是否被標(biāo)記為NC,如果是,則對當(dāng)前節(jié)點(diǎn)不使用位,并將該節(jié)點(diǎn)對應(yīng)的小波系數(shù)值設(shè)置為O ;否則,用自適應(yīng)算術(shù)編碼器/解碼器設(shè)置當(dāng)前節(jié)點(diǎn)編碼/解碼一個(gè)非O小波系數(shù);
[0058]所述步驟34包括以下步驟:
[0059]Dl、根據(jù)低頻掩膜,提取有效DC系數(shù);
[0060]D2、對步驟Dl中的DC系數(shù)采用均勻量化方法,同時(shí)將量化步長編入比特流中;
[0061]D3、計(jì)算掩膜范圍內(nèi)DC系數(shù)的均值,并將其編入比特流中,將掩膜區(qū)域外的點(diǎn)填均值;
[0062]D4、如果Wc和Vx分別表示A、B、C和X的像素值,對掩膜區(qū)域內(nèi)的DC系數(shù)進(jìn)行預(yù)測;
[0063]D5、將步驟D4預(yù)測到的DC系數(shù)進(jìn)行偏移,偏移量是系數(shù)偏移后最小系數(shù)值,以確保DC系數(shù)為非負(fù)實(shí)數(shù),將系數(shù)偏移后的最小值和最大值編入比特流中;
[0064]D6、采用位平面編碼方法從高比特平面到低比特平面的順序編碼偏移后的DC系數(shù);
[0065]
【權(quán)利要求】
1.一種形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,包括以下步驟: 步驟1、證件照片分割; 步驟2、證件照片前景區(qū)域輪廓編碼; 步驟3、形狀自適應(yīng)圖像編碼; 步驟4、整數(shù)自適應(yīng)算術(shù)編碼;整合輪廓編碼與前景區(qū)域編碼序列,利用整數(shù)自適應(yīng)算術(shù)編碼進(jìn)行二次編碼; 所述步驟I包括以下步驟: 步驟11、四叉樹分裂合并分割證件照片,得到照片前景區(qū)域的初始掩膜; 步驟12、邊緣檢測提取證件照片輪廓圖像; 步驟13、將步驟(11)中的掩膜縮小至一個(gè)像素寬度,得到縮小后的掩膜; 步驟14、將步驟(11)中的初始掩膜與步驟(13)中縮小后的掩膜進(jìn)行減法運(yùn)算,生成最終的掩膜; 步驟15、將步驟(14)中最終的掩膜與步驟(12)中的輪廓圖像進(jìn)行與運(yùn)算,生成與運(yùn)算后的輪廓; 步驟16、采取坐標(biāo)系旋轉(zhuǎn)和最小二乘法,曲線擬合并連接步驟(15)中與運(yùn)算后的輪廓,得到照片前景區(qū)域的輪廓; 步驟17、根據(jù)步驟(16)中的照片前景區(qū)域的輪廓生成前景區(qū)域的掩膜; 步驟18、根據(jù)步驟(17)中前景區(qū)域的掩膜,提取證件照片前景區(qū)域圖像。
2.根據(jù)權(quán)利要求1所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟2包括以下步驟: 步驟21、提取需要編碼的輪廓; 步驟22、對需要編碼的輪廓采用4-方向鏈碼進(jìn)行編碼。
3.根據(jù)權(quán)利要求1所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟3包括以下步驟: 步驟31、證件照片前景區(qū)域掩膜分解; 步驟32、證件照片前景區(qū)域提升自適應(yīng)小波變換; 步驟33、小波高頻系數(shù)形狀自適應(yīng)零樹編碼; 步驟34、小波低頻系數(shù)基于上下文預(yù)測編碼。
4.根據(jù)權(quán)利要求3所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟31包括以下步驟: 步驟Al、從任意形狀的前景掩膜中取出第一列掩膜; 步驟A2、在每一列內(nèi),確定由連續(xù)掩膜點(diǎn)組成的第一個(gè)分段; 步驟A3、分別用偶采樣和奇采樣取得低頻和高頻的掩膜數(shù)目; 步驟A4、將低頻掩膜放在低頻子帶內(nèi)相應(yīng)的列中,高頻掩膜放在高頻子帶內(nèi)相應(yīng)的列中; 步驟A5、對該列中由連續(xù)掩膜組成的下一個(gè)分段進(jìn)行上述操作; 步驟A6、對下一列的掩膜進(jìn)行上述分解操作,直到所有列分解完畢為止; 步驟A7、對低頻和高頻區(qū)域的掩膜進(jìn)行轉(zhuǎn)秩運(yùn)算; 步驟A8、重復(fù)執(zhí)行步驟Al?A6 ; 步驟A9、對低頻和高頻區(qū)域的掩膜進(jìn)行轉(zhuǎn)秩運(yùn)算; 步驟A10、對低頻-低頻子帶重復(fù)執(zhí)行步驟Al?A9,直到完成掩膜分解級數(shù)為止。
5.根據(jù)權(quán)利要求3所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟32包括以下步驟: 步驟B1、利用掩膜分解的位置信息確定要需要變換的第一列系數(shù); 步驟B2、在每一列內(nèi),利用掩膜分解信息確定需要變換的第一個(gè)分段; 步驟B3、將當(dāng)前分段系數(shù)采用一維適形離散小波變換的提升方案進(jìn)行處理; 步驟B4、低通小波系數(shù)根據(jù)分解的掩膜信息放在低通子帶內(nèi)相應(yīng)的列中,高通小波系數(shù)則放在高通子帶內(nèi)相應(yīng)的列中; 步驟B5、對該行中由連續(xù)系數(shù)組成的下一個(gè)分段進(jìn)行上述操作; 步驟B6、對下一列的像素進(jìn)行上述操作; 步驟B7、將上述變換得到的低通、高通區(qū)域進(jìn)行轉(zhuǎn)秩運(yùn)算; 步驟B8、重復(fù)步驟BI?B6,得到四個(gè)子帶; 步驟B9、對步驟B8中所述的四個(gè)子帶進(jìn)行轉(zhuǎn)秩運(yùn)算; 步驟B10、對低頻-低頻子帶重復(fù)執(zhí)行步驟BI?B9,直到完成小波分解級數(shù)為止。
6.根據(jù)權(quán)利要求3所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟33包括以下步驟: Cl、在小波樹根節(jié)點(diǎn)層,利用掩膜信息判斷當(dāng)前節(jié)點(diǎn)是否是外節(jié)點(diǎn):如果當(dāng)前節(jié)點(diǎn)是外節(jié)點(diǎn),則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,在解碼時(shí)標(biāo)記為TBD ;如果當(dāng)前節(jié)點(diǎn)不是外節(jié)點(diǎn),則用自適應(yīng)算術(shù)編碼器/解碼器對當(dāng)前節(jié)點(diǎn)進(jìn)行編碼;如果當(dāng)前符號是孤立零點(diǎn)或者是值,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,解碼時(shí)標(biāo)記為TBD ;如果當(dāng)前符號是零樹根或者零樹根值,那么將當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)標(biāo)記為NC ;如果當(dāng)前符號是VAL或者VZTR,使用算術(shù)編碼器/解碼器將這個(gè)節(jié)點(diǎn)編碼/解碼成一個(gè)非O小波系數(shù);如果當(dāng)前符號是IZ或者ZTR,把當(dāng)前節(jié)點(diǎn)對應(yīng)的小波系數(shù)設(shè)置為O ; C2、介于根節(jié)點(diǎn)層和葉子層中所有的節(jié)點(diǎn),利用掩膜信息判斷節(jié)點(diǎn)是否是外節(jié)點(diǎn):如果當(dāng)前節(jié)點(diǎn)是外節(jié)點(diǎn),則對該節(jié)點(diǎn)不進(jìn)行編碼,并標(biāo)記當(dāng)前節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)根據(jù)該節(jié)點(diǎn)被標(biāo)記的狀態(tài)TBE或者NC對應(yīng)標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為TBE或者NC,在解碼時(shí)根據(jù)該節(jié)點(diǎn)被標(biāo)記的狀態(tài)TBD或者NC對應(yīng)標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為TBD或者NC ;如果當(dāng)前節(jié)點(diǎn)不是外節(jié)點(diǎn),判斷當(dāng)前節(jié)點(diǎn)是否被標(biāo)記為NC,如果是,則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼,并將當(dāng)前節(jié)點(diǎn)對應(yīng)的小波系數(shù)設(shè)置為O ;否則,用自適應(yīng)算術(shù)編碼器/解碼器對當(dāng)前節(jié)點(diǎn)編碼一個(gè)符號:如果當(dāng)前符號是IZ或者VAL,標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn),編碼時(shí)標(biāo)記為TBE,在解碼時(shí)標(biāo)記為TBD ;如果當(dāng)前符號是ZTR或者VZTR,標(biāo)記該節(jié)點(diǎn)的4個(gè)孩子節(jié)點(diǎn)為NC ;如果當(dāng)前符號是VAL或者VZTR,使用算術(shù)編碼器/解碼器將當(dāng)前節(jié)點(diǎn)編碼/解碼成一個(gè)非O小波系數(shù);如果當(dāng)前符號是IZ或者ZTR,那么將當(dāng)前節(jié)點(diǎn)所對應(yīng)的小波系數(shù)設(shè)置為O ; C3、葉子層節(jié)點(diǎn),利用掩膜信息判斷節(jié)點(diǎn)是否是外節(jié)點(diǎn),如果是,則對當(dāng)前節(jié)點(diǎn)不進(jìn)行編碼;否則,判斷當(dāng)前節(jié)點(diǎn)是否被標(biāo)記為NC,如果是,則對當(dāng)前節(jié)點(diǎn)不使用位,并將該節(jié)點(diǎn)對應(yīng)的小波系數(shù)值設(shè)置為O ;否則,用自適應(yīng)算術(shù)編碼器/解碼器設(shè)置當(dāng)前節(jié)點(diǎn)編碼/解碼一個(gè)非O小波系數(shù)。
7.根據(jù)權(quán)利要求3所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,所述步驟34包括以下步驟: Dl、根據(jù)低頻掩膜,提取有效DC系數(shù); D2、對步驟Dl中的DC系數(shù)采用均勻量化方法,同時(shí)將量化步長編入比特流中; D3、計(jì)算掩膜范圍內(nèi)DC系數(shù)的均值,并將其編入比特流中,將掩膜區(qū)域外的點(diǎn)填均值; D4、如果VA、VB、V。和Vx分別表示A、B、C和X的像素值,對掩膜區(qū)域內(nèi)的DC系數(shù)進(jìn)行預(yù)測; D5、將步驟D4預(yù)測到的DC系數(shù)進(jìn)行偏移,偏移量是系數(shù)偏移后最小系數(shù)值,以確保DC系數(shù)為非負(fù)實(shí)數(shù),將系數(shù)偏移后的最小值和最大值編入比特流中; D6、采用位平面編碼方法從高比特平面到低比特平面的順序編碼偏移后的DC系數(shù);
Vx = Vx-pred, (2) 其中,pred表示偏移后的DC系數(shù),Va表示A的像素值,Vb表示B的像素值,V。表示C的像素值,Vx表示X的像素值。
8.根據(jù)權(quán)利要求1所述的形狀自適應(yīng)編碼的證件照片壓縮方法,其特征在于,在步驟4中,整合背景信息、輪廓編碼序列和前景區(qū)域編碼序列進(jìn)行整數(shù)自適應(yīng)算術(shù)編碼,去除編碼的信息冗余;設(shè)字符串s的字符來自符號集s = {ai,a2,-,Bjjp(Bi)表示字符%的概率,S后跟字符Bi擴(kuò)展成字符串sai;所述步驟4主要包括如下步驟: 步驟41、初始化;編碼區(qū)間[low(s), high (S)]初始化為[O, Integer), Integer是一個(gè)大于m的整數(shù);字符Bi的概率P (Bi)初始化為等值概率,如公式(3);
Pfe1) = P (a2)=…=p(am) = [Integer/m], (3) (2)刷新字符概率,如公式(4);
Pia1) = p(ai)+l, (4) (3)刷新字符累積概率,如公式(5):
(4)刷新編碼區(qū)間,如公式(6)~⑶;
A(Sai) = [low (Sai),high (Sai)) (6)
1w(Sai) = low(s) + [ (high (s)-low(s)+l) Xp (a^/p (am) ], (7)
high (Sai) = low(s) + [ (high (s)-low(s)+l) X (p (a^+p (a^)/p (am) ]-1, (8) (5)輸出字符串概率值,如公式(9):
P encode = 1W(Sai), (9) 步驟42、對于區(qū)間[low, high]進(jìn)行區(qū)間擴(kuò)展;在計(jì)算機(jī)中整數(shù)區(qū)間[low, high]的上限和下限是以二進(jìn)制進(jìn)行表示的,根據(jù)二進(jìn)制值的最高兩位,有四個(gè)區(qū)間值,low和high在所述四個(gè)區(qū)間中存在第一種分布情況、第二種分布情況、第三種分布情況、第四種分布情況、第五種分布情況和第六種分布情況,在所述第一種分布情況、第四種分布情況和第六種分布情況中,對區(qū)間[low, high]進(jìn)行擴(kuò)展,在所述第二種分布情況、第三種分布情況和第五種分布情況中不對區(qū)間[low, high]進(jìn)行擴(kuò)展;所述對區(qū)間[low, high]進(jìn)行擴(kuò)展的擴(kuò)展方法如下: 在所述第一種分布情況中,對區(qū)間[low,high]進(jìn)行擴(kuò)展的擴(kuò)展方法為:所述第一種分布情況的區(qū)間上限和下限二進(jìn)制值的最高位都是1,在后續(xù)編碼區(qū)間更新過程中,區(qū)間上限和下限的最高位二進(jìn)制值保持不變;移除區(qū)間上限和下限的二進(jìn)制最高位“1”,然后在區(qū)間上限high的二進(jìn)制值的最后一位補(bǔ)“1”,在區(qū)間下限low的二進(jìn)制值的最后一位補(bǔ)“O”;然后檢查二進(jìn)制值的次高位,如果區(qū)間上限high的二進(jìn)制值的次高位是“0”,而區(qū)間下限low的二進(jìn)制值的次高位是“1”,需要進(jìn)行忽略次高位的操作,并在最低位補(bǔ)位和記錄次高位的忽略次數(shù),使解碼時(shí)能夠還原到相應(yīng)的編碼區(qū)間;通過移除高位、忽略次高位以及低位補(bǔ)位的操作,更新編碼區(qū)間的上限值與下限值,以放大編碼區(qū)間[low,high]; 在第四種分布情況中,對區(qū)間[low,high]進(jìn)行擴(kuò)展的擴(kuò)展方法為:第四種分布情況的區(qū)間上限和下限二進(jìn)制值的最高位分別是“I”和“O”;檢查二進(jìn)制值的次高位,該檢查方法與第一種分布情況中檢查次高位的方法相同,如果區(qū)間上限二進(jìn)制值的次高位是“0”,而下限二進(jìn)制值的次高位是“ 1”,忽略次高位的操作,并在最低位補(bǔ)位和記錄次高位的忽略次數(shù),為解碼提供相應(yīng)的信息; 在第六種分布情況中,對區(qū)間[low, high]進(jìn)行擴(kuò)展的擴(kuò)展方法為:第六種分布情況的區(qū)間上限和下限二進(jìn)制值的最高位都是O ;移除二進(jìn)制值的最高位并在最低位進(jìn)行補(bǔ)位;同時(shí)檢查二進(jìn)制值的次高位,如果區(qū)間上限high的二進(jìn)制值的次高位是“0”,而區(qū)間下限low的二進(jìn)制值的次高位是“1”,需要進(jìn)行忽略次高位的操作,并在最低位補(bǔ)位和記錄次高位的忽略次數(shù),使解碼時(shí)能夠還原到相應(yīng)的編碼區(qū)間;通過移除高位、忽略次高位以及低位補(bǔ)位的操作,更新編碼區(qū)間的上限值與下限值,以放大編碼區(qū)間[low,high]。
【文檔編號】G06T9/40GK104134224SQ201410360901
【公開日】2014年11月5日 申請日期:2014年7月25日 優(yōu)先權(quán)日:2014年7月25日
【發(fā)明者】沃焱, 楊鋒林, 吳文波 申請人:華南理工大學(xué)