PNG圖片格式的bin文件無損壓縮算法及全液晶儀表顯示系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種32位PNG圖片格式圖片轉(zhuǎn)化為bin文件后的壓縮算法及全液晶儀表顯示系統(tǒng)。
【背景技術(shù)】
[0002]在目前的汽車界,搭載全液晶儀表已經(jīng)成為一種新風(fēng)尚。由于全液晶儀表更能體現(xiàn)當(dāng)今技術(shù)發(fā)展,能夠顯示更加豐富的信息,界面設(shè)計(jì)更加人性化和時(shí)尚化,因此受到汽車界的青睞。目前改款的寶馬7系、凱迪拉克XTS等國外車型以及比亞迪秦、哈佛H7都有全液晶儀表的身影,全液晶儀表已經(jīng)在汽車業(yè)掀起新的潮流。
[0003]因?yàn)槿壕x表顯示的信息豐富,風(fēng)格多樣,這就使其硬件設(shè)計(jì)和軟件設(shè)計(jì)相當(dāng)復(fù)雜,需要更多的圖片,視頻等文件導(dǎo)入flash。flash大小的選擇尤為重要。然而從成本角度分析,flash越小,成本越低。為了降低成本,必須使文件足夠小。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的是提供一種PNG圖片格式的bin文件無損壓縮算法及全液晶儀表顯示系統(tǒng),以解決對(duì)bin文件進(jìn)行有效壓縮,以節(jié)約flash模塊的存儲(chǔ)空間。
[0005]為了解決上述技術(shù)問題,本發(fā)明提供了一種PNG圖片格式的bin文件無損壓縮算法,包括:從開始位置依次讀取bin文件的各RGBN像素點(diǎn),統(tǒng)計(jì)相鄰且相同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值,并將該相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間中,以及同時(shí)還將統(tǒng)計(jì)的不同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值作為特征值存儲(chǔ)在所述內(nèi)存空間中,并在內(nèi)存空間之后依次存儲(chǔ)相應(yīng)不同的像素值,以構(gòu)成壓縮的bin文件。
[0006]進(jìn)一步,所述步驟內(nèi)存空間的分配方法包括:
步驟SlOl,根據(jù)原始bin文件的目錄地址讀取bin文件,分配地址空間;
步驟S102,通過文件管理指令獲取原始bin文件大小;
步驟S103,根據(jù)原始bin文件大小分配用于存放壓縮的bin文件的內(nèi)存空間。
[0007]進(jìn)一步,所述將相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間的方法包括:用五個(gè)字節(jié)表示RGBN像素點(diǎn)的像素值及個(gè)數(shù)值,即R、G、B、N、conter,其中,conter表示個(gè)數(shù)值。
[0008]又一方面,本發(fā)明還提供了一種全液晶儀表顯示系統(tǒng),包括:處理器模塊,與該處理器模塊相連的液晶顯示模塊,以及該處理器模塊還與flash模塊相連。
[0009]進(jìn)一步,所述處理器模塊適于將導(dǎo)入的PNG圖片格式轉(zhuǎn)換為bin文件,再對(duì)該bin文件進(jìn)行壓縮后存入所述flash模塊。
[0010]進(jìn)一步,所述處理器模塊適于從開始位置依次讀取bin文件的各RGBN像素點(diǎn),統(tǒng)計(jì)相鄰且相同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值,并將該相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間中,以及同時(shí)還將統(tǒng)計(jì)的不同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值作為特征值存儲(chǔ)在所述內(nèi)存空間中,并在內(nèi)存空間之后依次存儲(chǔ)相應(yīng)不同的像素值,以構(gòu)成壓縮的bin文件。
[0011]本發(fā)明的有益效果是,(I)本發(fā)明的PNG圖片格式的bin文件無損壓縮算法及全液晶儀表顯示系統(tǒng)能實(shí)現(xiàn)無損壓縮,并且具有壓縮比高,操作簡單,壓縮速度快,解壓速度快的優(yōu)點(diǎn);(2)本發(fā)明的全液晶儀表顯示系統(tǒng)還能在不降低圖像顯示效果的基礎(chǔ)上,減小flash模塊的存儲(chǔ)空間,節(jié)約顯示系統(tǒng)的制作成本。
【附圖說明】
[0012]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明進(jìn)一步說明。
[0013]圖1是本發(fā)明的PNG圖片格式的bin文件無損壓縮算法流程圖;
圖2是本發(fā)明的內(nèi)存空間的分配方法的流程圖;
圖3是本發(fā)明的全液晶儀表顯示系統(tǒng)的原理框圖。
【具體實(shí)施方式】
[0014]現(xiàn)在結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。這些附圖均為簡化的示意圖,僅以示意方式說明本發(fā)明的基本結(jié)構(gòu),因此其僅顯示與本發(fā)明有關(guān)的構(gòu)成。
[0015]實(shí)施例1
如圖1所示,本發(fā)明提供了一種PNG圖片格式的bin文件無損壓縮算法,包括:步驟SI,從開始位置依次讀取bin文件的各RGBN像素點(diǎn),統(tǒng)計(jì)相鄰且相同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值,并將該相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間中;步驟S2,同時(shí)還將統(tǒng)計(jì)的不同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值作為特征值存儲(chǔ)在所述內(nèi)存空間中,并在內(nèi)存空間之后依次存儲(chǔ)相應(yīng)不同的像素值,以構(gòu)成壓縮的bin文件。
[0016]具體的,通過將相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間中,以節(jié)約大量存儲(chǔ)空間。
[0017]如圖2所示,進(jìn)一步,所述內(nèi)存空間的分配方法包括:
步驟SlOl,根據(jù)原始bin文件的目錄地址讀取bin文件,分配地址空間。
[0018]步驟S102,通過文件管理指令獲取原始bin文件大小。
[0019]步驟S103,根據(jù)原始bin文件大小分配用于存放壓縮的bin文件的內(nèi)存空間。
[0020]進(jìn)一步,所述將相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間的方法包括:用五個(gè)字節(jié)表示RGBN像素點(diǎn)的像素值及個(gè)數(shù)值,即R、G、B、N、conter,其中,conter表示個(gè)數(shù)值。
[0021]實(shí)施例2
如圖2所示,在實(shí)施例1基礎(chǔ)上,本發(fā)明還提供了一種全液晶儀表顯示系統(tǒng),包括:處理器模塊,與該處理器模塊相連的液晶顯示模塊,以及該處理器模塊還與flash模塊相連。
[0022]進(jìn)一步,所述處理器模塊適于將導(dǎo)入的PNG圖片格式轉(zhuǎn)換為bin文件,再對(duì)該bin文件進(jìn)行壓縮后存入所述flash模塊。
[0023]進(jìn)一步,所述處理器模塊適于從開始位置依次讀取bin文件的各RGBN像素點(diǎn),統(tǒng)計(jì)相鄰且相同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值,并將該相同的RGBN像素點(diǎn)的像素值及個(gè)數(shù)值存儲(chǔ)于內(nèi)存空間中;以及同時(shí)還將統(tǒng)計(jì)的不同像素值的RGBN像素點(diǎn)的個(gè)數(shù)值作為特征值存儲(chǔ)在所述內(nèi)存空間中,并在內(nèi)存空間之后依次存儲(chǔ)相應(yīng)不同的像素值,以構(gòu)成壓縮的bin文件。
[0024]實(shí)施例3
在實(shí)施例1和實(shí)施例2基礎(chǔ)上,對(duì)本bin文件無損壓縮算法及運(yùn)用該算法的所述處理器模塊展開進(jìn)行說明。
[0025]具體的實(shí)施過程包括:
準(zhǔn)備階段,即把32位、24位或者16位等PNG圖片轉(zhuǎn)化成二進(jìn)制bin文件。
[0026]可以通過選擇確認(rèn)是否要壓縮。
[0027]若無需壓縮,則bin文件將不會(huì)被壓縮,但是會(huì)計(jì)算bin文件的大小并存儲(chǔ),為儀表軟件使用,存儲(chǔ)大小最多為20個(gè)字節(jié)。
[0028](I)首先根據(jù)src_bin