• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM9的轉轍機缺口監測圖像采集模塊設計

    基于ARM9的轉轍機缺口監測圖像采集模塊設計

    作者: 時間:2012-05-23 來源:網絡 收藏

    下面簡要介紹其實現:
    (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

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

    g.jpg



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


    上一頁 1 2 3 4 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 普定县| 云浮市| 大兴区| 灵台县| 盘锦市| 罗甸县| 会宁县| 南江县| 博白县| 肇庆市| 辉县市| 上虞市| 扬州市| 宿迁市| 四子王旗| 保定市| 旺苍县| 新竹县| 天气| 固始县| 汝州市| 金塔县| 顺义区| 广安市| 驻马店市| 古丈县| 奎屯市| 南投市| 哈巴河县| 岑溪市| 鄱阳县| 萨嘎县| 永泰县| 昔阳县| 蕉岭县| 房产| 无为县| 安丘市| 万宁市| 南溪县| 楚雄市|