新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Linux的視頻監控系統構建方法

        基于Linux的視頻監控系統構建方法

        作者: 時間:2013-10-23 來源:網絡 收藏
        目前,嵌入式系統在視頻監控中的應用越來越廣泛。伴隨著網絡的強大功能,視頻監控更側重網絡監控方案,要求體積小、遠程化、成本低、功耗小、操作界面人性化等。本系統基于嵌入式 平臺上利用USB 攝像頭采集視頻圖像,通過視頻圖像壓縮及結合網絡進行視頻圖像傳輸,使遠程監控成為可能。

        1 系統概述

        視頻圖像監控系統由4 部分組成, 分別為視頻圖像采集、視頻圖像處理、視頻圖像傳輸、視頻圖像顯示。視頻圖像采集部分由數字攝像頭、USB 通道和嵌入式處理器構成、視頻圖像處理主要是視頻圖像壓縮,由算法實現、視頻圖像傳輸主要利用視頻服務器來實現、視頻圖像顯示主要是在遠程的主機上實現視頻圖像的瀏覽、保存和處理等, 主機上由應用程序實現,Windows 主機上通過瀏覽器上的JAVA 程序實現。系統原理框圖如圖1 所示。
        基于Linux的視頻監控系統構建方法
        圖1 系統框圖

        2 系統硬件

        CPU 處理器使用Samsung S3C2440A, 主頻400 MHz,最高533 MHz;64 M SDRAM、32 bit 數據總線、SDRAM 時鐘頻率100 MHz;256 M/1 GB Nand Flash, 掉電非易失、2 M NorFlash,掉電非易失;統寶3.5 真彩LCD,屏集成4 線電阻式觸摸屏, 屏幕分辨率可以達到1024×768 象素;100 M 以太網RJ-45 接口(采用DM9000 網絡芯片)、串行口、USB Host、USB Slave B 型接口、SD 卡存儲接口、路立體聲音頻輸出接口, 麥克風接口、JTAG 接口、4 USER Leds、6 USER buttONs(帶引出座)、I2C 總線AT24C08 芯片、20 pin 攝像頭接口;攝像頭用良田,兼容SN9C20X 系列芯片的驅動,本系統的內核中集成了該驅動。

        3 系統軟件

        3.1 內核的移植
        移植新內核主要是為了給LCD 以及攝像頭添加相應的驅動支持,在Fedora 9 中打開內核的目錄,使用缺省配置文件進行配置:在內核中添加V4L 支持、添加萬能USB 攝像頭驅動GSPCA。
        3.2 基于V4L2 的圖像采集程序
        系統使用的交叉編譯工具為arm-linux-gcc-4.3.2.設計使用到的應用程序都要通過該編譯器編譯后下載到開發板上運行。將編好的應用程序V4L2.c 交叉編譯后下載到板。
        V4L(Video for Linux)是Linux 下提供的一個音視頻接口規范,所有的音視頻驅動編寫都要用到這些接口。
        V4L 從2.4.1.x 的內核版本中開始出現, 設計使用的Video for Linux2(簡稱V4L2)是V4L 的改進版,修復了第一代中的部分BUG。
        設計的圖像采集及處理程序主要基于V4L2 架構, 通過對一些ioctl 函數的調用來實現視頻設備的打開,圖像的采集處理,圖像的顯示等。幾個主要的ioctl 函數的簡介:
        1)ioctl(fd,VIDIOC_S_FMT, fmt):用于設置圖像的格式。
        2)ioctl(fd, VIDIOC_REQBUFS, req):向內存申請緩沖區,申請的buffer 個數存在count 中。
        3)ioctl(fd, VIDIOC_QUERYBUF, buf):查詢已經分配的V4L2 的視頻緩沖區的相關信息, 包括視頻緩沖區的使用狀態、在內核空間的偏移地址、緩沖區長度等。
        4)ioctl(fd, VIDIOC_QBUF, buf):放一個空的視頻緩沖區到視頻緩沖區輸入隊列中,函數執行成功后,指令的視頻緩沖區進入視頻輸入隊列,在啟動視頻設備拍攝圖像時,相應的視頻數據被保存到視頻輸入隊列相應的視頻緩沖區中。
        5)ioctl(fd, VIDIOC_STREAMON, type):啟動視頻采集命令,應用程序調用VIDIOC_STREAMON 啟動視頻采集命令后,視頻設備驅動程序開始采集視頻數據,并把采集到的視頻數據保存到視頻驅動的視頻緩沖區中。
        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        linux相關文章:linux教程


        攝像頭相關文章:攝像頭原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 拉孜县| 南京市| 双城市| 惠水县| 肃宁县| 盐亭县| 华安县| 永寿县| 甘南县| 乐安县| 明光市| 乐平市| 施秉县| 龙陵县| 阳新县| 金塔县| 高碑店市| 宁城县| 定结县| 许昌市| 杭州市| 成安县| 兴文县| 合江县| 本溪市| 丁青县| 高安市| 蒲城县| 徐汇区| 祁阳县| 大安市| 从化市| 林芝县| 高尔夫| 安徽省| 三亚市| 阆中市| 定安县| 息烽县| 涪陵区| 南召县|