嵌入式虹膜圖像采集及預處理
在用戶(hù)程序中,定義二維數組buf[625][1728]作為圖像數據的數據緩沖區,然后通過(guò)標準系統調用獲取一幀虹膜視頻圖像數據。虹膜視頻圖像數據是以ITU-656模式輸入的,一幀圖像分為奇場(chǎng)和偶場(chǎng),且原始數據中還有顏色信息、消隱信息和控制字等,因此要獲得一幅虹膜圖像還需對原始數據進(jìn)行預處理。提取原始數據中的所有亮度信息,并把兩個(gè)場(chǎng)的數據有規則的合并到一起,然后按照BMP的圖像數據存放順序重新排列,添加相應的文件頭生成灰度BMP圖像文件。
BMP文件是Windows保存圖像的一種通用位圖文件格式,自帶顏色信息,調色板管理非常容易,在數字圖像處理方面占有重要的地位。
BMP文件大體上分成如下4個(gè)部分,位圖文件頭+位圖信息頭+調色板+圖像數據。
(1)第一部分為位圖文件頭,長(cháng)度固定,為l4個(gè)字節。
(2)第二部分為位圖信息頭,長(cháng)度固定,為40個(gè)字節。
(3)第三部分為調色板。需要注意的是真彩色圖不需要調色板,它們的位圖信息頭后面直接是圖像數據。而其他位圖,包括本文所討論的8位位圖,都需要調色板。
(4)第四部分就是實(shí)際的圖像數據。
在實(shí)際調試過(guò)程中還要注意字節對齊問(wèn)題。比如位圖文件頭長(cháng)度固定為l4個(gè)字節,但若不注意字節對齊,定義后的結構體實(shí)際大小為16個(gè)字節,因此定義位圖文件頭時(shí)用__attribute__((packed)),使該結構體長(cháng)度為14個(gè)字節。
4 結論
本文簡(jiǎn)略概述了Blackfin561處理器的DMA相關(guān)寄存器,敘述了在uClinux下PPI接口的驅動(dòng)程序實(shí)現過(guò)程及功能,對BMP文件格式進(jìn)行了簡(jiǎn)要介紹。所有代碼已經(jīng)在BF561的嵌入式uClinux平臺上調試通過(guò),符合設計要求。
本文作者創(chuàng )新點(diǎn):完成了嵌入式系統上的虹膜圖像采集及預處理。在目前國內虹膜識別產(chǎn)業(yè)仍處于起步階段的情況下,本文就虹膜識別技術(shù)的實(shí)用化做了重要研究,具有重要的實(shí)用價(jià)值。
下圖是實(shí)驗中拍到的兩幅圖片
參考文獻
[1]楊瑞亞,肖璋嵌入式uClinux內核啟動(dòng)過(guò)程分析與設計[J].中文核心期刊《微計算機信息》(嵌入式與SOC )2005 年第21 卷第8-2 期32-33
[2]ADSP-BF561 Blackfin Hardware Preliminar.pdf [EB/OL]. /upload/eWebUpload/200705/20070510112235534.pdf
Analog Devices Ine.02/2005.
[3]陳峰.Blackfin系列DSP原理與系統設計[M].北京:電子工業(yè)出版社,2004. 61-72
[4]JONATHAN CORBET,ALESSANDRO RUBINI,GREG KROAH-HARTMAN.《LINUX DEVICE DRIVERS》[M].東南大學(xué)出版社,2005.1-70,258-287
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論