<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于Linux的嵌入式視覺(jué)系統設計方案

基于Linux的嵌入式視覺(jué)系統設計方案

作者: 時(shí)間:2012-10-18 來(lái)源:網(wǎng)絡(luò ) 收藏

1 引言

本文引用地址:http://dyxdggzs.com/article/148340.htm

在現代工業(yè)生產(chǎn)自動(dòng)化中應用非常廣泛,主要集中于藥品檢測分裝、印刷色彩檢測、集成電路生產(chǎn)、精密電子產(chǎn)品裝配、智能機器人識別導航等領(lǐng)域。隨著(zhù)Internet 的普及,現代社會(huì )已進(jìn)入后PC 時(shí)代,技術(shù)越來(lái)越與人們的生活緊密結合。

可通過(guò)USB 總線(xiàn)等將圖像的獲取、圖像處理、顯示設備集成于一體,成本相對較低,體積小巧,可以方便地安裝在載體身上,故研究系統具有一定的實(shí)際意義。

2 嵌入式視覺(jué)系統總體

嵌入式視覺(jué)系統由嵌入式硬件平臺、操作系統、圖像采集和圖像顯示四大部分組成,原理框圖如下圖1 所示。

圖1 視覺(jué)系統原理框圖

圖1 視覺(jué)系統原理框圖

S3C2410X 芯片是韓國三星電子公司推出的一款ARM920T 內核的16/32 位RISC 嵌入式微處理器。該芯片集成了支持 TFT 的 LCD 控制器 、3 個(gè)通道的UART 等控制器和豐富的外部接口,MPLL 產(chǎn)生主時(shí)鐘,能夠使處理器工作頻率最高達到203MHz,此工作頻率能夠使處理器輕松運行WinCE、 等操作系統以及進(jìn)行較為復雜的數據處理。該芯片可以滿(mǎn)足低成本、高速度、低功耗的需求,非常適合作為嵌入式視覺(jué)系統的硬件平臺。

操作系統同目前廣泛應用的嵌入式操作系統如pSOS、VxWorks、winCE 相比,具有可移植性好、網(wǎng)絡(luò )功能強、有優(yōu)秀的GNU 編譯工具支持等優(yōu)點(diǎn),更重要的是 的開(kāi)放源代碼和免費的優(yōu)點(diǎn)使得系統成本顯著(zhù)降低,因此選用Linux 操作系統作為軟件開(kāi)發(fā)平臺。

3 嵌入式視覺(jué)系統硬件

3.1 圖像采集

選購攝像頭,優(yōu)先考慮Linux 內核公開(kāi)支持的攝像頭芯片。由于目前Linux 操作系統使用的內核版本僅自帶了ov511 芯片的攝像頭驅動(dòng),因此,系統的圖像采集模塊由CMOS 圖像傳感器OV7620 和后端處理芯片OV511+組成。本系統在IIC 總線(xiàn)模式下通過(guò)設置OV7620 的功能寄存器,使OV7620 工作于連續掃描方式,RGB 原始數據16 位輸出方式。OV7620 有4 個(gè)同步信號:VSYNC(垂直同步信號)、FODD(奇數場(chǎng)同步信號)、HSYNC(水平同步信號)和PCLK(像素同步信號)[3].當采用連續掃描方式時(shí),只使用VSYNC 和HSYNC、PCLK 三個(gè)同步信號。通過(guò)設定內部寄存器,控制輸出幀率在0.5 幀/s~30 幀/s 之間變化,窗口輸出設置為:640×480,經(jīng)過(guò)設定后的OV7620 輸出時(shí)序如圖2 所示:

圖2 OV7620 輸出時(shí)序圖

圖2 OV7620 輸出時(shí)序圖

3.2 圖像傳輸

圖像采集幀率與數據傳輸接口的數據傳輸速率之間的匹配是圖像采集的一個(gè)重要問(wèn)題。如果圖像傳感器的采集頻率大于接口的最大可傳輸數據率,會(huì )引起緩沖區內的圖像數據堵塞,造成數據混亂,出現無(wú)規律的亂碼。因此,為了保證圖像數據傳輸時(shí)的完整性和可靠性,接口數據的傳輸速率應滿(mǎn)足圖像傳感器的采集速率。下面是對本采集系統的傳輸匹配計算。

已知:OV7620 的最大主時(shí)鐘頻率27MHz,最大數據率13.5MB/S.以OV7620 默認輸出為例:輸出格式VGA,分辨率640×480,幀率15 幀/秒,輸出數據格式為16 位彩色數據。

一幀圖像的數據量: (640 × 480 × 16)/8=614400B=0.586MB.

一秒鐘的最大數據量:0.586×15=8.79MB/S.

因為圖像采集中圖像數據不是連接不斷的采集,幀與幀之間有場(chǎng)消隱時(shí)間,行與行之間也有行消隱時(shí)間,所以13.5MB/S> 8.79MB/S.這個(gè)采集速率,要實(shí)現VGA 圖像15 幀/秒的圖像采集,嵌入式主機與USB 接口速度應與圖像傳感器的采集速度相匹配,至少不能小于9MB/S 的速度,否則會(huì )出現數據在傳輸通道中堵塞,致使數據出現混亂。系統采用USB1.0 作為傳輸接口,系統采集的圖像數據為9MB/S,USB 傳輸速率大于9MB/S,故采集頻率與傳輸頻率匹配。

3.3 圖像顯示

液晶顯示器LCD 以省電和顯示大量信息等優(yōu)點(diǎn)而成為現代儀器儀表用戶(hù)界面的主要發(fā)展方向。本視覺(jué)系統采用三菱公司的8.4'彩色TFT-LCD 作為圖像顯示模塊, 液晶屏大小為640 × 480 , 型號:AA084VC03.

系統需要兩種電源供電,分別是5V 和12V.5V電源用于核心板供電,USB 圖像采集模塊由核心板供電,12V 電源給液晶屏供電,這些電壓由單獨的電源模塊提供。整個(gè)視覺(jué)系統的硬件結構圖如下圖3 所示。

圖3 視覺(jué)系統硬件結構圖。

圖3 視覺(jué)系統硬件結構圖。

4 嵌入式視覺(jué)系統軟件設計

視覺(jué)系統軟件組成主要包括操作系統、設備驅動(dòng)程序,圖像采集和圖像顯示程序。操作系統負責整個(gè)系統的管理,進(jìn)程調度等,為用戶(hù)使用開(kāi)發(fā)板和外部設備提供最基本的接口程序,管理著(zhù)開(kāi)發(fā)板上的資源。

移植Linux2.6.14 內核作為嵌入式視覺(jué)系統的操作系統。設備驅動(dòng)程序包括USB 攝像頭驅動(dòng)和LCD 液晶屏驅動(dòng),通過(guò)在Linux 系統中配置和加載完成。

4.1 圖像采集程序

確定USB 攝像頭被正常驅動(dòng)后,下一步就是使用Video4Linux 提供的API 函數集來(lái)編寫(xiě)圖像采集程序。

具體圖像數據的捕獲過(guò)程為:打開(kāi)攝像頭設備文件、查詢(xún)和確認設備性能、設置圖像的寬和高、設置色深、建立內存映射、讀取圖像數據、關(guān)閉設備。在上述過(guò)程中主要考慮如何讀取圖像數據,V4L 在內核include/linux/videodev.h 文件中定義了一些重要的數據結構,進(jìn)行圖像采集時(shí),通過(guò)對這些數據結構的操作來(lái)獲得圖像數據。首先需要將顯示設備的地址映射到系統地址上來(lái),調用函數mmap()。該函數返回地址就是存放圖像數據的地址, 每一幀圖像都偏移固定的長(cháng)度, 而攝像頭取得圖像會(huì )包含若干幀,這樣通過(guò)周而復始的進(jìn)行就可以將圖像數據采集下來(lái)。具體過(guò)程和涉及到的函數如下:

打開(kāi)設備文件: int device = open (/dev/v4l/video0,O_RDWR);

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>