《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM9的轉轍機缺口監測圖像采集模塊設計
基于ARM9的轉轍機缺口監測圖像采集模塊設計
電子科技
馬萬瑩,樊文俠
摘要: 轉轍機是鐵路上負責道岔的轉換、鎖閉、監督功能的電氣設備,它的監測對維護列車安全運行具有重要意義。現有道岔轉換設備缺口監測系統存在檢測方式落后、不直觀、高誤警等情況。針對上述情況文中提出了一種在線視頻監控自動處理系統,其中轉轍機內監控系統能對缺口圖像的動態實時情況進行拍照和上傳;工作室終端電腦能對道岔轉轍機內表示桿缺口偏移量的圖像進行識別、自動監測和超值報警,并介紹了圖像采集模塊的設計與實現。
Abstract:
Key words :

轉轍機缺口監測問題一直是鐵路信號系統特別是信號維修部門關注的熱點。隨著鐵路高速、高密度行車區段的不斷增加,為了確保行車安全,對行車道岔運行質量與狀態穩定性監測無為重要。

1 系統技術指標
主要技術指標:(1)缺口圖像分辨率0.01 mm。(2)缺口偏移檢測精度0.1 mm。(3)信號傳輸距離≤2.5 km(1.0 mm線徑)。(4)動態圖像傳輸碼流100~250 kbit·s-1。

2 圖像采集模塊設計原理
圖像采集使用微型攝像頭,圖像分辨率是指圖像中每單位長度所包含的像素或點的數目,常以像素/英寸(ppi)為單位來表示。對電動轉轍機(S700K、ZD6)正面缺口在4~6 mm,用普通的30萬像素攝像頭,精度可達6/640=0.01 mm。圖像數據量大小=圖像中的像素總數×圖像深度÷1 024(單位為kB)。30萬像素攝像頭捕捉到640×480的畫面,二值圖像深度為1,灰度圖像深度為8或者彩色圖像深度為24,普通灰度圖像大小為2400kB。

a.jpg


JPEG是由ISO和CCITT 1986年成立了“聯合圖片專家組”(Joint Photographic Experts Group)所制定的靜止灰度或彩色圖像的壓縮標準。JPEG標準定義了3種編碼系統:(1)基于DCT的有損編碼基本系統,可以適合大多數壓縮場合。(2)基于分層遞增模式的擴展、增強編碼系統,用于高壓縮比、高精度或漸進重建應用場合。(3)基于預測編碼中DPCM方法的無損系統,用于無失真應用的場合。
圖像應用系統要與JPEG兼容,必須支持JPEG基本系統,可以通過修改其文件格式、圖像分辨率或彩色空間模型應用于不同場合。在不降低圖像視覺質量的基礎上JPEG標準可以將圖像壓縮到1/10~1/50,這樣一幀圖像的大小就可以壓縮到48 kB,根據需要還可以壓縮為6 kB的二值圖像,滿足缺口檢測的要求。
在基本系統中,輸入和輸出數據的精度為8 bit,量化DTC值的精度為11 bit。壓縮過程由3個步驟組成:(1)DCT計算。(2)量化。(3)用熵編碼器進行變長碼賦值。具體過程如下:先把圖像分割成一系列8×8的子塊,然后按從左向右從上到下的次序處理。基本系統的編碼器如圖2所示。

b.jpg

Video4Linux(V4L)是Linux的影像串流系統與嵌入式影像系統的基礎。Video4Linux是Linux Kemel里支持影像設備的一組APIs,配合適當的視頻采集卡與驅動程序,Video4Linux可以實現影像圖像采集,它支持圖像的JPEG壓縮。Video4Linux分為2層式架構,上層為Video4Linux驅動程序本身,下層架構則是影像設備的驅動程序。實驗中使用了V4L的上層驅動程序,即V4L所提供給程序開發人員的APIs。通過使用Video 4Linux的API函數從視頻設備中讀取圖像數據,然后將這些數據寫入Frame Buffer,使攝像頭采集到的圖像在液晶屏中顯示出來。

3 圖像采集硬件設計
   在ARM9系統中通過USB接口連接USB攝像頭對圖像進行采集,實現轉轍機缺口監測的圖像采集。ARM9核心板:處理器采用ARM920T處理器的S3C2410A,工作頻率203 MHz;SDRAM是64 MB;NANDFlash:64 MB;NORFlash:2 MB;USB接口:AU9254A21支持USB1.1協議。
USB采集電路的原理框圖如圖3所示。

c.jpg


USB主機芯片采用AU9254A21,它是單片的四端口USB控制芯片,這里擴展了4個USB接口。它的上端接USB控制系統,下端可接USB設備。

4 圖像采集軟件實現
在Linux系統中,通過使用Video4Linux的API函數,從視頻設備中讀取圖像數據,然后將這些數據寫入系統臨時文件為后續的功能實現奠定基礎。
采集程序實現過程:一個嵌入式Linux系統從軟件的角度看通常分為4個層次:Bootloader、Linux內核、文件系統和用戶應用程序,如圖4所示。

e.jpg

4.1 移植Bootloader
USB攝像頭的采集應用程序是建立在Linux系統上,首先配置適合系統的Bootloader,Linux內核在RAM中運行,這就需要Linux的Bootloa der將整個內核復制到RAM中。系統中Bootloader是運行在NORFlash中,它的主要作用是:將Linux內核文件、根文件系統文件、Linux啟動參數文件復制到SDRAM中,并跳至RAM中Linux內核的首地址,運行Linux。各文件在RAM中存放的空間示意圖,如圖5所示。

d.jpg


4.2 編譯下載內核
將Linux源代碼包放置在工作目錄下解壓,用命令:#tar xjvf linux-2.4.18.tar.bz2。編譯內核,在終端輸入命令:#make menu config命令,選擇“load analternate configuration file”,裝載arch/am目錄下的2410配置文件。建立依賴關系,在終端運行命令:#make dep。編譯內核,在終端輸入命令:#make zImage。編譯完成后在arch/arm/boot目錄下會生產ARM Linux內核映像文件zIm age,用FlashFXP軟件的FTP下載。
4.3 圖像采集應用程序
在圖像采集設備驅動安裝后,只需再編寫一個視頻流采集應用程序,即可采集視頻圖像。
前面提到Linux系統中把設備看成設備文件,在用戶空間可以通過標準的I/O系統調用函數操作設備文件,從而達到與設備通信交互的目的。視頻設備在Linux系統下為一個字符型設備,分配給視頻設備使用的主設備號固定為81,次設備號為0~31。在Linux系統中通常使用設備名為video0~video31,使用以下命令在設備文件夾/dev/下創建1名稱為video0的節點:# mknod/dev/video0 c 81 0配置Video4Linux內核:在終端使用make menuconfig命令打開S3C2410Linux內核編譯的Main Menu窗口,并進入“Multimedia devices→”菜單選項,然后將Video For Linux配置為模塊;返回主菜單(Main Menu),再進入“USB support→”菜單選項,然后將USB Camera support設置為模塊,退出并保存配置,使用make dep命令建立文件依聯關系,然后使用make modules命令編譯鏈接模塊。編譯鏈接完成后,在/linyx/kernel/driv ers  /media/video文件夾中生成videodev.o模塊,在/linux/kemel/drivers/usb/文件夾中生成ov511.o模塊,ov511芯片直接就支持Linux,使用這款芯片的攝像頭有網眼V2000。
利用V4L API獲取視頻圖像的應用程序流程,如圖6所示。

f.jpg

下面簡要介紹其實現:
(1)打開視頻設備,這里用int v41_open(char*,v41_device*)實現。
(2)獲得設備信息的任務,這里用extern int v41_get_capability(v41_device*)實現。函數有vd->capability和vd->picture兩個結構體。capability主要包括設備名稱、支持的最大最小分辨率、信號源信息等。picture結構包括了亮度,對比度,色深。及兩個函數中最主要的語句ioctl。對于ioctl的行為,它是由驅動程序提供和定義的,在這里是由v41所定義,其中宏VIDIOCGCAP和VIDIOCGPICT的分別表示獲得視頻設備的capability和picture。
運用int v41_get_mbuf(v41_device*vd)函數。通過這個結函數可以獲得攝像頭可映射的設備存儲圖像的內存大小、攝像頭可同時存儲的幀數、每一幀圖像的偏移量。
(3)按需要更改設備的相應設置,通過int v41_set_picture函數實現。其核心是v41為提供的ioctl相關調用,通過這個函數可以修改如亮度,對比度等相關的值。
(4)獲得采集到的圖像數據,通過extern int v41_grab_picture實現。先使用ioctl(fd,VIDIOCGMBUF,&grab_vm)函數獲得攝像頭存儲緩沖區的幀信息,之后修改voideo_mmap中的設置,例如重新設置圖像幀的垂直及水平分辨率、彩色顯示格式。其中vd->map所指向的數據就是圖像數據。
采集其中的第一幀,使用ioctl(fd,VIDIOCMCAPTURE,&grab_buf)函數,若調用成功,則激活設備真正開始一幀圖像的截取,是非阻塞的。接著使用ioctl(fd,VIDIOCSYNC,&frame)函數判斷該幀圖像是否截取完畢,成功返回表示截取完畢,之后就可把圖像數據寫入到Frame Buffer。
然后利用grab_fd.frames值確定采集完畢攝像頭幀緩沖區幀數據進行循環的次數。在循環語句中,也是使用VIDIOCMCCAPTURE? ioctl和VIDIOCSYNC?ioctl函數完成每幀截取,但要給采集到的每幀圖像賦地址,利用語句buf=grab_data+grab_vm.offsets[frame],然后保存文件的形式。若要繼續采集可再加一個外循環,在外循環語句只要給原來的內循環再賦frame=0即可。通過顯示屏把采集到的視頻圖像顯示出來。
(5)關閉設備,int v41_close(v41_device*),主要是關閉設備,取消映射。

5 圖像采集效果
將攝像頭插入到USB主機下行口,這時在終端上將打印以下信息:
ov511.c:USB OV511+camera found
ov511.c:Camera type(108)not recognized
ov511.c:Please notify mmcclell@bigfoot.com of the name,
ov511.c:manufacturer,model.and this number of your camera.
ov511.C:Also include the output of the detection process.
ov511.c:Sensor iS an OV7620
ov511.c:Device registered on minor 0
進入到本實驗程序所在文件夾,運行本實驗程序,觀察液晶屏的圖像效果:
#/videodemo

g.jpg
6 結束語
在ARM-Linux平臺上,通過使用Video4Linux的API函數從視頻設備中讀取圖像數據,并對圖進行了JPEG格式壓縮,再將數據進行顯示處理,為后續的轉轍機缺口檢測的上傳功能實現奠定了基礎。系統若配合使用可靠的傳輸技術與先進的上位機圖像處理系統,將使轉轍機缺口監測系統得以實現。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品一区免费视频| 依依成人综合视频| 美女91精品| 久久精品视频播放| 欧美在线免费观看亚洲| 欧美亚洲一区在线| 香蕉成人啪国产精品视频综合网| 亚洲视频综合在线| 日韩午夜三级在线| 亚洲美女av网站| 亚洲美女视频在线观看| 亚洲精品社区| 日韩午夜黄色| 在线一区二区三区四区五区| 在线亚洲免费| 亚洲一区国产一区| 午夜在线精品偷拍| 亚洲国产精品va在线观看黑人| 欧美日韩不卡在线| 欧美高清影院| 欧美另类综合| 欧美日韩视频一区二区| 欧美日韩亚洲成人| 欧美午夜视频一区二区| 国产精品久久久久久妇女6080| 国产精品福利在线| 国产精品hd| 国产农村妇女毛片精品久久麻豆| 国产欧美日韩伦理| 国产欧美日韩精品一区| 国产日韩欧美综合在线| 韩国三级电影一区二区| 尤物九九久久国产精品的特点| 尤物在线精品| 伊大人香蕉综合8在线视| 亚洲小视频在线| 亚洲性视频网站| 性久久久久久| 久久久在线视频| 欧美大片免费观看在线观看网站推荐| 欧美精品 国产精品| 欧美三级日本三级少妇99| 国产精品超碰97尤物18| 国产视频丨精品|在线观看| 欧美日韩视频一区二区三区| 欧美性淫爽ww久久久久无| 国产精品欧美日韩| 黄色亚洲免费| 日韩视频免费观看高清完整版| 亚洲午夜羞羞片| 午夜精品国产精品大乳美女| 亚洲国产成人精品久久久国产成人一区 | 中文网丁香综合网| 欧美亚洲一区二区在线| 亚洲福利久久| 亚洲一级黄色av| 久久全球大尺度高清视频| 欧美精品乱码久久久久久按摩| 国产精品免费视频观看| 尤物网精品视频| 在线视频精品一区| 久久精品人人做人人爽电影蜜月| 欧美一区二区三区免费在线看 | 亚洲人成小说网站色在线| 99精品视频免费观看视频| 午夜精品视频在线| 亚洲精品免费看| 午夜宅男欧美| 欧美成人中文| 国产精品视频精品| 亚洲精美视频| 香蕉av777xxx色综合一区| 一本色道久久综合亚洲精品小说 | 久久国产精品黑丝| 99re热这里只有精品视频| 亚洲国产一成人久久精品| 亚洲一区二区三区久久| 久久亚洲精品网站| 国产精品porn| 亚洲国产精品尤物yw在线观看| 亚洲一卡久久| 99国产精品99久久久久久粉嫩| 久久精品国产一区二区三| 欧美日韩日本网| 永久免费精品影视网站| 午夜精品视频在线观看一区二区| 一区二区三区蜜桃网| 久久精品亚洲精品国产欧美kt∨| 欧美视频日韩| 亚洲激情视频在线观看| 久久精品国产亚洲a| 欧美一二三区在线观看| 欧美日韩国产影院| 国产一区二区高清不卡| 亚洲一区二区三区成人在线视频精品| 最新亚洲电影| 玖玖精品视频| 国内成人在线| 午夜精品一区二区三区在线播放| 亚洲午夜精品网| 欧美伦理一区二区| 亚洲国产精品va在线看黑人| 久久精品国产综合精品| 一区二区三区精品久久久| 欧美国产免费| 亚洲电影免费观看高清完整版在线观看 | 亚洲第一精品福利| 久久经典综合| 欧美激情一区在线观看| 在线电影欧美日韩一区二区私密| 亚洲欧美日韩电影| 亚洲一区精品视频| 欧美日韩在线精品一区二区三区| 亚洲精品1区2区| 亚洲精品美女91| 亚洲欧美日韩国产一区二区三区| 这里是久久伊人| 久久都是精品| 国产精品色网| 亚洲欧美在线一区二区| 亚洲一区二区在线视频| 欧美午夜精品理论片a级大开眼界| 亚洲精品资源| 亚洲无线一线二线三线区别av| 欧美三级中文字幕在线观看| 亚洲国产精品尤物yw在线观看| 亚洲精品一区二区三区福利| 欧美激情一区二区在线| 亚洲精品资源美女情侣酒店| 一区二区三区鲁丝不卡| 欧美日韩中文字幕在线| 一区二区欧美在线| 亚洲在线视频免费观看| 国产精品入口日韩视频大尺度| 午夜亚洲性色视频| 久久久中精品2020中文| 黄色国产精品| 亚洲精品久久视频| 欧美人与性动交α欧美精品济南到| 日韩一区二区精品| 亚洲免费在线| 国产日韩欧美精品一区| 久久精品视频在线播放| 欧美国产亚洲精品久久久8v| 亚洲精品永久免费精品| 亚洲女性喷水在线观看一区| 国产乱肥老妇国产一区二| 欧美在线一二三| 欧美激情bt| 在线视频欧美日韩| 欧美专区亚洲专区| 国产主播一区二区| 最新高清无码专区| 欧美日韩国产在线播放| 亚洲影院在线观看| 欧美伊人久久久久久久久影院| 久久精品视频在线播放| 黄色一区二区三区四区| 亚洲日本一区二区三区| 欧美日韩视频在线一区二区| 亚洲午夜一区二区| 久久国产黑丝| 亚洲高清在线视频| aaa亚洲精品一二三区| 欧美午夜一区二区| 亚洲免费视频成人| 猛干欧美女孩| 欧美专区日韩视频| 国产一区二区三区自拍| 亚洲欧美成人一区二区在线电影| 久久久精品五月天| 最新日韩精品| 亚洲欧美国产制服动漫| 黑人操亚洲美女惩罚| 99精品热6080yy久久| 国产精品成人一区| 午夜在线视频观看日韩17c| 免费亚洲一区二区| 一区二区三区国产在线观看| 久久国产一区二区三区| 亚洲激情在线观看| 亚洲欧美日韩中文在线制服| 永久免费视频成人| 亚洲免费在线电影| 国产女人精品视频| 99精品视频免费在线观看| 久久激情久久| 日韩午夜在线电影| 久久久www免费人成黑人精品| 亚洲精品日韩在线观看| 欧美一区二区三区免费在线看| 亚洲第一精品福利| 午夜日韩在线| 亚洲国产一区二区三区在线播| 性色一区二区三区| 亚洲激情影视| 久久久久高清| 国产精品99久久久久久www| 欧美在线视频一区| 亚洲六月丁香色婷婷综合久久|