本申請(qǐng)涉及電子信息,具體涉及一種點(diǎn)陣字體的壓縮編碼方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、需要在顯示屏上顯示字符的嵌入式設(shè)備,通常需要使用存儲(chǔ)芯片存儲(chǔ)字庫(kù)字體數(shù)據(jù)。每個(gè)字符都需要有其對(duì)應(yīng)的點(diǎn)陣字體數(shù)據(jù),按照預(yù)定的行列配置,將點(diǎn)陣字體數(shù)據(jù)中為前景色的像素畫(huà)在顯示屏上,即可顯示該字符。
2、現(xiàn)有技術(shù)中,一種壓縮方法是使用通用的圖像壓縮技術(shù)進(jìn)行點(diǎn)陣字體數(shù)據(jù)壓縮,這種壓縮算法復(fù)雜度高,不適合低性能的嵌入式設(shè)備,而且該壓縮方式會(huì)拋棄高頻特征、保留低頻特征,會(huì)影響字體的顯示效果,看起來(lái)模糊,此外,對(duì)于小尺寸的點(diǎn)陣字體壓縮效果較差。
3、另一種壓縮方法是使用zip壓縮算法,這種壓縮算法同樣復(fù)雜度高,不適合低性能的嵌入式設(shè)備,如果對(duì)每個(gè)字符的點(diǎn)陣字體數(shù)據(jù)單獨(dú)壓縮,因數(shù)據(jù)量小,壓縮效果較差,而且,如果對(duì)整個(gè)字庫(kù)數(shù)據(jù)整體壓縮,解壓縮時(shí)需要較大的額外存儲(chǔ)空間。
4、還有一種壓縮方法是使用游程長(zhǎng)度編碼算法,該算法是將一個(gè)“相同值的連續(xù)串”用其值和串長(zhǎng)的二元組來(lái)替代。而點(diǎn)陣字體的長(zhǎng)寬像素?cái)?shù)通常較小,即在一個(gè)“不夠稀疏”的矩陣中,“相同值的連續(xù)串”不夠長(zhǎng)時(shí),游程長(zhǎng)度編碼中為了存儲(chǔ)二元組所需的位可能超過(guò)點(diǎn)陣圖像本身的位,導(dǎo)致壓縮效果較差;此外,字體通常以線條為主,游程長(zhǎng)度編碼在垂直或斜線多的情況壓縮效果差,甚至編碼后數(shù)據(jù)量更大,實(shí)際應(yīng)用中,綜合壓縮效率較差。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)旨在解決上述技術(shù)問(wèn)題,即現(xiàn)有技術(shù)的壓縮方法對(duì)字體的壓縮算法復(fù)雜度高,不適合低性能的嵌入式設(shè)備,會(huì)拋棄高頻特征、保留低頻特征,會(huì)影響字體的顯示效果,看起來(lái)模糊,壓縮效果差的問(wèn)題。
2、第一方面,本申請(qǐng)實(shí)施例提供了一種點(diǎn)陣字體的壓縮編碼方法,包括:基于預(yù)設(shè)長(zhǎng)×寬的采樣矩陣,對(duì)第一目標(biāo)點(diǎn)陣字體位圖進(jìn)行重采樣,得到第二目標(biāo)點(diǎn)陣字體位圖;對(duì)所述第二目標(biāo)點(diǎn)陣字體位圖的第一像素矩陣中全部的第一像素進(jìn)行編碼,得到第一編碼數(shù)據(jù);對(duì)所述第一像素矩陣中像素值等于第一預(yù)設(shè)數(shù)值的第一像素重新進(jìn)行編碼,得到第二編碼數(shù)據(jù);將所述第一編碼數(shù)據(jù)與所述第二編碼數(shù)據(jù)進(jìn)行拼接,得到所述第一目標(biāo)點(diǎn)陣字體位圖壓縮后的第三編碼數(shù)據(jù)。
3、第二方面,本申請(qǐng)實(shí)施例提供了一種點(diǎn)陣字體的壓縮解碼方法,包括:基于第三編碼數(shù)據(jù),獲取待嵌入像素矩陣,所述第三編碼數(shù)據(jù)是通過(guò)上述第一方面所述的點(diǎn)陣字體的壓縮編碼方法得到的;創(chuàng)建一個(gè)與所述第一目標(biāo)點(diǎn)陣字體位圖相同尺寸的空白點(diǎn)陣字體位圖;將所述待嵌入像素矩陣嵌入到所述空白點(diǎn)陣字體位圖的第三像素矩陣中,得到壓縮前的所述第一目標(biāo)點(diǎn)陣字體位圖。
4、第三方面,本申請(qǐng)實(shí)施例提供了一種點(diǎn)陣字體的壓縮編碼裝置,包括:重采樣模塊,用于基于預(yù)設(shè)長(zhǎng)×寬的采樣矩陣,對(duì)第一目標(biāo)點(diǎn)陣字體位圖進(jìn)行重采樣,得到第二目標(biāo)點(diǎn)陣字體位圖;第一編碼模塊,用于對(duì)所述第二目標(biāo)點(diǎn)陣字體位圖的第一像素矩陣中全部的第一像素進(jìn)行編碼,得到第一編碼數(shù)據(jù);第二編碼模塊,用于對(duì)所述第一像素矩陣中像素值等于第一預(yù)設(shè)數(shù)值的第一像素重新進(jìn)行編碼,得到第二編碼數(shù)據(jù);拼接模塊,用于將所述第一編碼數(shù)據(jù)與所述第二編碼數(shù)據(jù)進(jìn)行拼接,得到所述第一目標(biāo)點(diǎn)陣字體位圖壓縮后的第三編碼數(shù)據(jù)。
5、第四方面,本申請(qǐng)實(shí)施例提供了一種點(diǎn)陣字體的壓縮解碼裝置,包括:獲取模塊,用于基于第三編碼數(shù)據(jù),獲取待嵌入像素矩陣,所述第三編碼數(shù)據(jù)是通過(guò)上述第一方面所述的點(diǎn)陣字體的壓縮編碼方法得到的;創(chuàng)建模塊,用于創(chuàng)建一個(gè)與所述第一目標(biāo)點(diǎn)陣字體位圖相同尺寸的空白點(diǎn)陣字體位圖;嵌入模塊,用于將所述待嵌入像素矩陣嵌入到所述空白點(diǎn)陣字體位圖的第三像素矩陣中,得到壓縮前的所述第一目標(biāo)點(diǎn)陣字體位圖。
6、本申請(qǐng)實(shí)施例中提供的技術(shù)方案,至少具有如下技術(shù)效果或優(yōu)點(diǎn):
7、本申請(qǐng)實(shí)施例通過(guò)基于預(yù)設(shè)長(zhǎng)×寬的采樣矩陣,對(duì)第一目標(biāo)點(diǎn)陣字體位圖進(jìn)行重采樣,得到第二目標(biāo)點(diǎn)陣字體位圖,然后對(duì)第二目標(biāo)點(diǎn)陣字體位圖的第一像素矩陣中全部的第一像素進(jìn)行編碼,得到第一編碼數(shù)據(jù),對(duì)第一像素矩陣中像素值等于第一預(yù)設(shè)數(shù)值的第一像素重新進(jìn)行編碼,得到第二編碼數(shù)據(jù),最后將所述第一編碼數(shù)據(jù)與所述第二編碼數(shù)據(jù)進(jìn)行拼接,得到所述第一目標(biāo)點(diǎn)陣字體位圖壓縮后的第三編碼數(shù)據(jù),能夠以無(wú)損壓縮方式編碼和存儲(chǔ)點(diǎn)陣字體數(shù)據(jù),保證良好的顯示效果,減少對(duì)嵌入式設(shè)備存儲(chǔ)空間的需求,降低硬件成本;此外,通過(guò)本身申請(qǐng)實(shí)施例,在字體位圖中的空白比例越多,壓縮效率越高,顯著提升了點(diǎn)陣字體壓縮編碼的效率。
8、本申請(qǐng)附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變的明顯,或通過(guò)本申請(qǐng)的實(shí)踐了解到。
1.一種點(diǎn)陣字體的壓縮編碼方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的點(diǎn)陣字體的壓縮編碼方法,其特征在于,所述基于預(yù)設(shè)長(zhǎng)×寬的采樣矩陣,對(duì)第一目標(biāo)點(diǎn)陣字體位圖進(jìn)行重采樣,得到第二目標(biāo)點(diǎn)陣字體位圖,包括:
3.根據(jù)權(quán)利要求2所述的點(diǎn)陣字體的壓縮編碼方法,其特征在于,所述分別基于各所述候選矩陣中各所述第二像素,確定各所述候選矩陣的新像素,包括:
4.根據(jù)權(quán)利要求2所述的點(diǎn)陣字體的壓縮編碼方法,其特征在于,所述對(duì)所述第一像素矩陣中像素值等于第一預(yù)設(shè)數(shù)值的第一像素重新進(jìn)行編碼,得到第二編碼數(shù)據(jù),包括:
5.根據(jù)權(quán)利要求1所述的點(diǎn)陣字體的壓縮編碼方法,其特征在于,所述對(duì)所述第二目標(biāo)點(diǎn)陣字體位圖的第一像素矩陣中全部的第一像素進(jìn)行編碼,得到第一編碼數(shù)據(jù),包括:
6.一種點(diǎn)陣字體的壓縮解碼方法,其特征在于,包括:
7.根據(jù)權(quán)利要求6所述的點(diǎn)陣字體的壓縮解碼方法,其特征在于,所述待嵌入像素矩陣包括多個(gè)像素對(duì)應(yīng)的嵌入像素矩陣和嵌入坐標(biāo),所述基于第三編碼數(shù)據(jù),獲取待嵌入像素矩陣,包括:
8.根據(jù)權(quán)利要求7所述的點(diǎn)陣字體的壓縮解碼方法,其特征在于,所述基于所述第二編碼數(shù)據(jù),分別獲取各所述等于第一預(yù)設(shè)數(shù)值的第一像素對(duì)應(yīng)的嵌入矩陣,包括:
9.一種點(diǎn)陣字體的壓縮編碼裝置,其特征在于,包括:
10.一種點(diǎn)陣字體的壓縮解碼裝置,其特征在于,包括: