色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM9的轉(zhuǎn)轍機(jī)缺口監(jiān)測(cè)圖像采集模塊設(shè)計(jì)

          基于ARM9的轉(zhuǎn)轍機(jī)缺口監(jiān)測(cè)圖像采集模塊設(shè)計(jì)

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

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

          5 圖像采集效果
          將攝像頭插入到USB主機(jī)下行口,這時(shí)在終端上將打印以下信息:
          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.a(chǎn)nd 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
          進(jìn)入到本實(shí)驗(yàn)程序所在文件夾,運(yùn)行本實(shí)驗(yàn)程序,觀察液晶屏的圖像效果:
          #/videodemo

          本文引用地址:http://cafeforensic.com/article/149020.htm

          g.jpg



          6 結(jié)束語(yǔ)
          在ARM-Linux平臺(tái)上,通過(guò)使用Video4Linux的API函數(shù)從視頻設(shè)備中讀取圖像數(shù)據(jù),并對(duì)圖進(jìn)行了JPEG格式壓縮,再將數(shù)據(jù)進(jìn)行顯示處理,為后續(xù)的轉(zhuǎn)轍機(jī)檢測(cè)的上傳功能實(shí)現(xiàn)奠定了基礎(chǔ)。系統(tǒng)若配合使用可靠的傳輸技術(shù)與先進(jìn)的上位機(jī)圖像處理系統(tǒng),將使轉(zhuǎn)轍機(jī)系統(tǒng)得以實(shí)現(xiàn)。


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

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉