音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

基于嵌入式Linux的圖像采集系統(tǒng)的設計與實現(xiàn)

出處:alwvfhpgu 發(fā)布于:2007-04-16 19:28:04

摘    要:本文介紹了在嵌入式Linux系統(tǒng)下開發(fā)USB攝像頭圖像采集系統(tǒng)的方法,給出了基于Intel Xscale PXA255處理器的嵌入式圖像采集系統(tǒng)的設計方案,并對如何編寫符合Video for Linux 標準的攝像頭圖像采集程序進行了討論。
關鍵詞:Video for Linux;USB攝像頭;USB驅動
引言
嵌入式Linux操作系統(tǒng)同目前廣泛應用的嵌入式操作系統(tǒng)如pSOS、VxWorks、winCE相比,具有可移植性好、網(wǎng)絡功能強、有的GNU編譯工具支持等優(yōu)點。更重要的是Linux的開放源代碼和的優(yōu)點使得系統(tǒng)成本顯著降低。一流的程序設計和開發(fā)加上測試的開放性使得Linux系統(tǒng)非常可靠和穩(wěn)定,因而越來越多的人開始使用Linux開發(fā)應用程序。Intel Xscale PXA255處理器是一款采用ARM結構,面向高性能、低功耗設備的嵌入式處理器,非常適用于手持移動設備的開發(fā)。USB攝像頭因具有低廉的價格,良好的性能,及方便使用的特性,因此很容易集成到嵌入式系統(tǒng)中。本文介紹的基于嵌入式Linux系統(tǒng)的USB攝像頭圖像采集系統(tǒng)使用采用OV511芯片的WEBEYE攝像頭,在基于PXA255處理器的開發(fā)板上實現(xiàn)了圖像的采集與壓縮,借助Mencoder編碼工具可以將多幅JPEG圖片合成AVI視頻流,并實現(xiàn)視頻回放。

硬件系統(tǒng)總體框圖


  Linux下USB系統(tǒng)軟件結構


獲得圖像過程


  圖像采集程序的流程圖
系統(tǒng)硬件平臺
系統(tǒng)結構
系統(tǒng)硬件平臺如所示。PXA255處理器主頻可達400MHz,內(nèi)部集成了多種外設控制模塊,在實際使用時可以根據(jù)需要進行裁減。開發(fā)板上提供了64M SDRAM、32M Flash、640×480 TFT LCD觸摸屏,以及外擴的USB主口控制器等,它們構成了一個嵌入式多媒體開發(fā)平臺,可以滿足復雜計算和圖形顯示的需求。采用OV511芯片的WEBEYE攝像頭支持多種制式,CIF(352×288)格式幀率達30fps,可實現(xiàn)真正的實時視頻捕獲,VGA(640×480)格式幀率為10~15fps,具有完善的自動亮度、白平衡控制,提供色彩飽和度、對比度、邊緣增強、伽馬表等數(shù)碼影像控制功能。它與TWAIN標準兼容,提供640×480格式的高清晰靜止圖像捕獲模式,具有多種視頻和輸出格式供選擇。USB總線控制器采用Cypress 公司的一款專為嵌入式領域研制的USB控制芯片CY67300,該芯片可作為主口控制,也可作為從口控制芯片,內(nèi)嵌有8051微控制器和RAM,支持全速和高速兩種模式。JTAG口用于Flash的擦寫,UART用于系統(tǒng)調(diào)試。以太網(wǎng)口可使現(xiàn)網(wǎng)絡傳輸,也可作NFS調(diào)試用。
系統(tǒng)工作過程
系統(tǒng)通過WEBEYE攝像頭采集圖像,對現(xiàn)場圖像進行高速捕捉,然后將捕捉到的圖像通過USB總線傳輸?shù)絇XA255處理器進行處理,并將圖像壓縮,保存為JPEG格式的文件。程序調(diào)用Encoder編碼器可以將多幅JPEG格式的圖像合成一段AVI視頻流,實現(xiàn)視頻回放,這在安全監(jiān)控、事故鑒定、車輛防盜等領域中都有廣泛應用。,系統(tǒng)還可以通過以太網(wǎng)口或UART口將保存的圖片和視頻流傳到服務器上,實現(xiàn)網(wǎng)絡監(jiān)控。

系統(tǒng)軟件實現(xiàn)
軟件系統(tǒng)結構
Liunx系統(tǒng)中對USB設備的支持是通過如所示的結構實現(xiàn)的。Linux內(nèi)核中的USB Core為設備和主控制器提供API接口。USB Core包含所有的USB設備和主控制器的一些通用操作,為向上和向下操作提供一個接口。在Linux系統(tǒng)中,設備驅動可分為字符設備、塊設備以及網(wǎng)絡設備。其中,字符設備面向字符I/O操作,沒有緩沖,順序讀??;而塊設備面向數(shù)據(jù)塊,所有操作都通過內(nèi)核地址空間的I/O緩沖區(qū)完成,支持隨機存取操作。USB設備通過快速串行通信的方式工作,應作為字符設備來處理。系統(tǒng)加載設備驅動的方式有模塊加載和內(nèi)核初始化加載兩種:前者通過用戶使用insmod命令動態(tài)加載到內(nèi)核中,通過rmmod命令卸載驅動模塊;后者是把驅動編進內(nèi)核,在內(nèi)核初始化時自動加載。USB主口程序由HCD(主機控制器驅動)、USBD (USB驅動程序)以及客戶程序組成。其中USBD負責管理所有HCD、設備驅動和所有連接到USB總線上的設備,是USB主機軟件的。如所示,Linux系統(tǒng)中USB子系統(tǒng)采用分層結構,其中USBD和HCD提供了支持設備驅動程序開發(fā)的API。USB設備驅動程序不是通過I/O操作訪問設備,而是通過USB Core提供的標準接口與設備交互,它采用由管道組成的通道與設備進行通信。設備驅動程序根據(jù)USBD創(chuàng)建所需的管道,并為其分配傳輸所需的緩沖空間。
USB的傳輸分為控制傳輸、中斷傳輸、批量傳輸以及等時傳輸四種模式。對于時間性極強但是準確性不高的視頻捕捉應用來說,攝像頭應采用等時傳輸模式。Linux系統(tǒng)中,任何USB傳輸都需要通過URB(USB請求塊)來實現(xiàn)。為了盡可能快地得到圖像數(shù)據(jù),需要加大URB的緩沖,這樣可以降低每個USB事務中握手信息所占的比例,提高有效數(shù)據(jù)傳輸比例。由于每次USB傳輸都要包括URB的建立、發(fā)送、回收、數(shù)據(jù)整理,而在這些階段中不產(chǎn)生有效數(shù)據(jù),因此可建立兩個URB交替工作,一個URB在等待回收時初始化另一個URB。獲得圖像的過程如所示。
攝像頭視頻捕獲程序的編寫
攝像頭屬于視頻類設備,遵循的標準為Video for Linux (V4L)標準。這個標準定義了一套API接口,內(nèi)核、驅動、應用程序都以這個接口為標準進行交流。目前的V4L涵蓋了音視頻捕捉及處理等內(nèi)容,也包括USB攝像頭。
Linux系統(tǒng)中一般的文件操作是通過read、write等系統(tǒng)調(diào)用完成,但這些系統(tǒng)調(diào)用是通過內(nèi)核態(tài)與用戶態(tài)之間相互進行數(shù)據(jù)拷貝實現(xiàn)的。對于圖像數(shù)據(jù)來說,進行拷貝必然會增加時間開銷,因此需要使用內(nèi)存映射的辦法來加以解決。
首先應申請足夠大的內(nèi)核態(tài)內(nèi)存作為圖像數(shù)據(jù)緩存,將URB帶來的數(shù)據(jù)暫存;然后將其用remap_page_range函數(shù)映射到用戶態(tài)空間。這樣,用戶態(tài)空間的圖像處理程序就可以使用mmap()函數(shù),直接讀寫內(nèi)核態(tài)幀緩沖區(qū),減少了額外開銷。要進行視頻捕捉必須用到VIDIOCMCAPTURE 和VIDIOCSYNC這兩個ioctl函數(shù)。VIDIOCGMBUF包含有所用緩沖器的設置與地址。VIDIOCMCAPTURE用于開始捕捉;VIDIOCSYNC用于等待捕捉完成。為加快數(shù)據(jù)處理速度,一般使用雙緩沖設置,即buffer0捕捉數(shù)據(jù)時,buffer1傳輸數(shù)據(jù);buffer1捕捉數(shù)據(jù)時,buffer0傳輸數(shù)據(jù)。
整個圖像采集程序的流程圖如所示。將采集到的圖像保存為JPEG格式,然后調(diào)用Mplayer中的Mencoder編碼器,即可將多幅JPEG文件合成一段視頻流,實現(xiàn)視頻回放。

結語
本文在臺式機上編程實現(xiàn)了基于Linux系統(tǒng)的USB攝像頭圖像采集系統(tǒng)。系統(tǒng)可以實現(xiàn)每秒30幀的圖像采集,可以直接連續(xù)顯示到屏幕上構成實時監(jiān)控系統(tǒng),也可壓縮為一段視頻流,用播放器播放出來。通過交叉編譯將程序移植到PXA255開發(fā)板上,實現(xiàn)了預期功能。


  
關鍵詞:基于嵌入式Linux的圖像采集系統(tǒng)的設計與實現(xiàn)OV5118051PXA255

版權與免責聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關法律責任。

本網(wǎng)轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。

如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。

OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務:
賣家服務:
技術客服:

0571-85317607

網(wǎng)站技術支持

13606545031

客服在線時間周一至周五
9:00-17:30

關注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!