郭楚塵 張立立 張帆
摘 要:針對傳統考勤機出現的代替刷卡、易損壞、可靠性低等諸多問題,提出了一種基于圖像壓縮技術的視頻考勤機軟件系統。該系統圖像壓縮模塊采用JPEG硬件壓縮編碼技術對靜態圖像進行壓縮,大大的減少了圖像存儲的空間和圖像傳輸的數據量。USB傳輸模塊采用了USB1.1傳輸技術,使用普通的U盤就可以方便的讀取考勤數據,免去了布線工作,方便安裝。本系統通過實際運行與測試,能夠達到設計要求。
關鍵詞:聯合圖像專家組(JPEG);通用串行總線(USB);圖像采集;軟件程序
隨著IC卡技術的發展和成熟,傳統的打卡機磁卡考勤機和接觸式考勤機被非接觸式IC卡考勤機即感應式電子考勤機所替代。雖然當前IC卡考勤系統已被很多企業使用,但利用IC卡考勤有其固有的缺陷。例如,某員工可以攜帶別人的IC卡,代替他人打卡,不能達到考勤的真正目的。之后又研發了一種指紋識別考勤機。但是指紋考勤機對考勤人員要求比較高,比如皮膚干燥等識別起來就很困難。
鑒于以上考勤設備發展的歷程和現狀,提出了基于JPEG圖像壓縮技術的視頻考勤系統。本系統采用非接觸式IC卡進行打卡操作,內置攝像頭,打卡時可自動拍攝打卡人員面部的照片,真正有效的杜絕了員工間代替刷卡的現象。所設計的考勤機為脫機型考勤機,不需要線纜與電腦連接。考勤數據通過U盤傳輸至考勤管理PC中,無需再布線傳輸數據,進一步方便了管理。文章只從圖像壓縮技術和USB傳輸技術方面介紹考勤機的軟件設計內容。
1 JPEG圖像壓縮技術
圖像壓縮是指在保證一定的圖像質量和滿足任務要求的前提下,減少原始圖像數據量的處理過程[3]。圖像數據之所以能被壓縮,就是因為數據中存在著冗余。圖像數據的冗余主要表現為:圖像中相鄰像素間的相關性引起的空間冗余;圖像序列中不同幀之間存在相關性引起的時間冗余;不同彩色平面或頻譜帶的相關性引起的頻譜冗余。數據壓縮的目的就是通過去除這些數據冗余來減少表示數據所需的比特數。由于圖像數據量的龐大,在存儲、傳輸、處理時非常困難,因此圖像數據的壓縮就顯得非常重要。
JPEG是Joint Photographic Experts Group(聯合圖像專家小組)的縮寫,是第一個國際圖像壓縮標準。JPEG圖像壓縮算法能夠在提供良好的壓縮性能的同時,具有比較好的重建質量,被廣泛應用于圖像、視頻處理領域。人們日常碰到的“.jpeg”、“.jpg”等指代的是圖像數據經壓縮編碼后在媒體上的封存形式,不能與JPEG壓縮標準混為一談。
JPEG圖像編解碼的實現通常有兩種方案,一是軟件實現,另一種就是使用專用JPEG壓縮編碼芯片。由于專用JPEG壓縮編碼芯片技術成熟,穩定性好,產品開發周期相對較短,并且對嵌入式處理器要求不高,可以降低系統成本,因此這種方案在嵌入式系統應用中使用較多。本系統中使用的就是基于JPEG編解碼專用芯片的方案。
2 視頻考勤機的軟件設計
微控制器C8051F020是本視頻考勤機的控制核心。考勤機的各個模塊的功能都通過對C8051F020編程實現。初始化程序通過對各個芯片的功能寄存器的設置完成初始化,使考勤機進入正常工作狀態。圖像采集JPEG壓縮程序把攝像頭采集到的模擬圖像數字化,并控制編碼芯片對數字圖像數據進行壓縮。USB模塊通信程序完成對USB模塊的讀寫控制。
2.1 圖像采集JPEG壓縮程序
圖像采集JPEG壓縮程序包括兩部分:模擬圖像信號A/D轉換部分和JPEG圖像壓縮部分。系統采用SAA7113芯片實現圖像的A/D轉換。視頻A/D芯片的初始化是微控制器通過IIC總線對SAA7113的內部寄存器的進行配置實現的。本系統中使用ZORAN公司生產的芯片ZR36060做JPEG硬件編解碼。
ZR36060在正常工作之前也需要對其內部寄存器進行初始化。在代碼被動方式下,對ZR36060內部寄存器的讀寫操作是直接對地址ADDR=00b進行的。壓縮/解壓縮的JPEG碼流是通過代碼接口傳輸的。代碼接口有兩種操作方式:主動方式和被動方式。系統中對ZR36060代碼接口的控制是由微控制器通過CPLD進行地址譯碼等邏輯控制實現對其內部代碼空間的操作,采用的接口操作方式是被動方式,數據總線的寬度是8位,與微控制器總線寬度相符,減少了邏輯變換操作。考勤系統采用8bit代碼寬度的代碼從模式。
2.2 USB讀寫程序
本系統使用USB[6]模塊進行USB讀寫操作。使用U盤文件讀寫模塊作為USB主控接口。USB模塊采用并口讀寫方式,并口數據交換是通過模塊的CH421芯片進行,該模塊支持8位被動并口,模塊中的CH421芯片為雙向緩沖接口芯片,用于模塊CH375芯片通信數據的緩存。USB模塊占用芯片CH421的兩個I/O地址。芯片CH421對緩沖區的讀寫采用索引地址方式,在兩個傳輸方向上各提供64字節的緩沖區,緩沖區的第一個和最后一個單元的索引地址分別為00H和3FH。
3 USB讀寫模塊調試
USB讀寫模塊調試的過程如下:模塊內置了簡單的自動演示功能,方法是:在模塊處于正常工作狀態時(此時跳線J1是斷開的,模塊的LED亮起說明其空閑),將跳線J1插上,模塊開始自動執行。開始執行后,模塊的LED滅掉,等待U盤插入,當U盤插入后,模塊打開U盤中根目錄下的“模塊演示.TXT”文件,如果文件不存在則新建文件,如果文件存在則移動文件指針到末尾,添加兩行字符串,其中包含當前狀態信息,然后關閉文件。上述演示結束后,模塊的LED重新亮起。如果演示過程中出現錯誤,那么模塊的LED會閃爍。演示完畢后,只有斷開電源或者復位,模塊才能恢復正常工作狀態。模塊的演示結果中包括模塊程序版本號和當前功能配置值以及串口通訊波特率除數,所以也可以用于檢查模塊當前接口以及功能配置是否設置正確。當模塊工作正常后通過微控制器和圖像采集壓縮模塊和USB模塊把JPEG文件寫入U盤。再把U盤連接到PC機上,打開JPEG圖片驗證結果正確。
4 結束語
本考勤系統經過較長時間的測試和實驗,各項技術指標均已達到預期目標,完全滿足中小型企事業單位考勤的需求。但在實驗和使用的過程中,發現本系統還存在的弱點。個別專用芯片價格較高,增加了系統的成本。在下一代的考勤機中建議整合方案,采用更高性能處理器,通過軟件完成JPEG壓縮算法,這樣能大大降低成本。
參考文獻
[1]葛衛麗,李志強,鄭敏.RFID系統的研究與應用[J].武警工程學院學報,2006(2):77-79.
[2]朱兆優.公交非接觸IC卡讀寫器的應用設計[J].單片機與嵌入式系統應用,2001(10):178-180.
[3]張春田,蘇育挺,張靜.數字圖像壓縮編碼[M].北京:清華大學出版社,2006,1-6.
[4]陳裕華,顧曉東,張忠偉.最新CCSDS圖像壓縮算法研究與實現[J].空間科學學報,2007(8):519-522.
[5]肖冰,凌軍.圖像壓縮技術與實現[J].福建電腦,2006(12):111-113.
[6]李肇慶,廖峰,劉建存.USB接口技術[M].北京:國防工業出版社,2004:6-15.
作者簡介:郭楚塵(1997,5-),男,遼寧沈陽人,高中,研究方向:計算機軟件。