偽彩色圖像
一、原理介紹:
偽彩色(Pseudo-color)圖像的每個(gè)像素的顏色不是由每個(gè)基本色分量的數(shù)值直接決定,實(shí)際上是把像素當(dāng)成調(diào)色板(Palettes)或顏色查找表(Color Look-Up Table,CLUT)的表項(xiàng)入口地址,根據(jù)該地址可查找出包含實(shí)際R、G、B的強(qiáng)度值,如果圖像中的顏色在調(diào)色板或彩色查找表中不存在,則調(diào)色板會(huì)用一個(gè)最為接近的顏色來(lái)匹配。通過(guò)查找出的R、G、B強(qiáng)度值產(chǎn)生的色彩不是圖像本身真正的顏色,因此稱為偽彩色。
偽彩色處理:
將彩色圖像轉(zhuǎn)換為灰度圖像是一個(gè)不可逆的過(guò)程,灰度圖像也不可能變換為原來(lái)的彩色圖像。而某些場(chǎng)合需要將灰度圖像轉(zhuǎn)變?yōu)椴噬珗D像;偽彩色處理主要是把黑白的灰度圖像或者多波段圖像轉(zhuǎn)換為彩色圖像的技術(shù)過(guò)程。其目的是提高圖像內(nèi)容的可辨識(shí)度。其中方法有,灰度分成法,灰度變換法。
真彩色
(true color)真彩色是指在組成一幅彩色圖像的每個(gè)像素值中,有R,G,B三個(gè)基色分量,每個(gè)基色分量直接決定顯示設(shè)備的基色強(qiáng)度,這樣產(chǎn)生的彩色稱為真彩色。例如用RGB 8∶8∶8表示的彩色圖像,R,G,B各用8位,用R,G,B分量大小的值直接確定三個(gè)基色的強(qiáng)度,這樣得到的彩色是真實(shí)的原圖彩色。
在許多場(chǎng)合,真彩色圖通常是指RGB 88,即圖像的顏色數(shù)等于2^24,也常稱為全彩色(full color)圖像。但在顯示器上顯示的顏色就不一定是真彩色,要得到真彩色圖像需要有真彩色顯示適配器,在PC上用的VGA適配器是很難得到真彩色圖像的。
直接色
(direct color)每個(gè)像素值分成R,G,B分量,每個(gè)分量作為單獨(dú)的索引值對(duì)它做變換。也就是通過(guò)相應(yīng)的彩色變換表找出基色強(qiáng)度,用變換后得到的R,G,B強(qiáng)度值產(chǎn)生的彩色稱為直接色。它的特點(diǎn)是對(duì)每個(gè)基色進(jìn)行變換。
用這種系統(tǒng)產(chǎn)生顏色與真彩色系統(tǒng)相比,相同之處是都采用R,G,B分量決定基色強(qiáng)度,不同之處是后者的基色強(qiáng)度直接用R,G,B決定,而前者的基色強(qiáng)度由R,G,B經(jīng)變換后決定。因而這兩種系統(tǒng)產(chǎn)生的顏色就有差別。試驗(yàn)結(jié)果表明,使用直接色在顯示器上顯示的彩色圖像看起來(lái)真實(shí)、很自然。
這種系統(tǒng)與偽彩色系統(tǒng)相比,相同之處是都采用查找表,不同之處是前者對(duì)R,G,B分量分別進(jìn)行變換,后者是把整個(gè)像素當(dāng)作查找表的索引值進(jìn)行彩色變換。
2.1圖像產(chǎn)生
如下圖3所示,使用matlb將分辨率為640*480的len.bmp圖像的R、G、B各個(gè)分量的二維圖像數(shù)據(jù),如圖4所示,轉(zhuǎn)換成一維數(shù)據(jù)存到img_r_data.txt、img_g_data.txt、img_b_data.txt文本里供Modelsim讀取。
圖3matlabgen代碼
2.2圖像處理
2.2.1 rgbtoyuv 灰度化算法公式
采用rgbtoyuv格式的顏色空間的轉(zhuǎn)換圖像算法為例,轉(zhuǎn)換公式如下 ,
2.2.2 graytorgb偽彩算法公式
如下圖所示是matalb 代碼 ,三個(gè)顏色通道對(duì)應(yīng)3個(gè)公式:
2.2.3 FPGA實(shí)現(xiàn)
在FPGA實(shí)現(xiàn)過(guò)程中,沒(méi)有直接使用上述matlab代碼的”if-else”進(jìn)行圖像的點(diǎn)操作,這里我使用查找表的方式實(shí)現(xiàn),把三個(gè)顏色通道R、G、B 看成是灰度(0~255)的函數(shù),通過(guò)matlab得到各個(gè)顏色的映射值的mif文件,然后導(dǎo)入fpga的rom 中,當(dāng)像素進(jìn)來(lái)時(shí)直接作為的rom的讀地址,rom的輸出就是處理得到的偽彩色圖像。生成mif文件的matlab代碼,其中t可以理解為灰度值,R、G、B為各顏色通道值。
FPGA實(shí)現(xiàn)時(shí)分別把對(duì)應(yīng)的線性映射數(shù)值存到rom中:
2.3圖像顯示
在編寫(xiě)完RTL代碼后加入視頻流仿真平臺(tái),處理的后的結(jié)果如圖6所示,其中圖像的復(fù)現(xiàn)的matlab代碼如圖5所示:
圖5matlabshow代碼
原文標(biāo)題:FPGA實(shí)現(xiàn)偽彩色圖像
文章出處:【微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
FPGA
+關(guān)注
關(guān)注
1630文章
21798瀏覽量
606051 -
圖像處理
+關(guān)注
關(guān)注
27文章
1300瀏覽量
56895
原文標(biāo)題:FPGA實(shí)現(xiàn)偽彩色圖像
文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論