匹配pandaboard,以及pandaboardES模塊由西安小風車電子科技有限公司開發,以下是光盤中使用手冊的內容:
一、SD 卡燒寫
準備一張空白的SD 卡(4G 或者8G ),最好是Class10 級別的。將卡插入到PC Ubuntu 系統中(可以是ubuntu 虛擬機),執行如下命令:
pc_ubuntu$ dd if =img_ducati_4G.img of =/dev/sdb bs=4M
(其中img_ducati_4G.img 存放於光盤中,在公司網站也有下載鏈接)
上面命令假設SD 在ubuntu 系統的盤符為/dev/sdb ,盤符也有可能是其他名字,使用sudo fdisk –l 命令查看。
燒寫好SD 卡後,將卡插入Pandaboard (ES ),啟動系統,登陸賬號和密碼都是media 。
二、使用攝像頭進行500 萬像素圖像抓取:
a 、輸入命令如下:
media@ubuntu$ cd /home/media
media@ubuntu$ sudo ./capture.elf
b 、在圖1 界面中輸入選項1 。
c 、當輸入選項後,
d 、就會在當前目錄中保存到相應的圖像文件。
e 、說明:
獲取的靜態圖像為5M pixel ,而且是經過ov5640 自動對焦後得到的圖像,由於需要將圖像存儲到SD卡中,此過程較慢,約8~15 秒。另外,ov5640 自動對焦的時間為6ms 。
另外,系統啟動後會彈出一個system program problem detected 請選擇cancel 退出,這個問題並不影響使用。
三、Gstreamer編解碼命令
a) 軟件解碼命令
sudo gst-launch-0.10 filesrc location=/home/media/qi720p.mp4 ! video/x-h264,width=1280,height=720,framerate=30/1 ! ffdec_h264 ! videorate ! ffmpegcolorspace ! xvimagesink
( 注:qi720p.mp4文件存放於光盤中)
b)硬件解碼命令
sudo gst-launch-0.10 –v filesrc location=/home/media/qi720p.mp4 ! typefind ! qtdemux name=demux demux.video_00 ! queue ! h264parse ! ducatih264dec ! autovideosink
c) 軟件編碼命令:
sudo gst-launch v4l2src device=/dev/video ! video/x-raw-yuv,width=1280,height=720,framerate=25/1 ! videoparse format=yuy2 width=1280 height=720 ! ffmpegcolorspace ! x264enc byte- stream=true ! filesink location=./cam.mp4
d) 硬件編碼命令 - 在命令界面中輸入如下命令
sudo gst-launch v4l2src device=/dev/video0 ! video/x-raw-yuv,width=1280,height=720,framerate=20/1 ! ffmpegcolorspace ! ducatih264enc ! filesink location=./cam.mp4
對硬件編碼的數據進行測試:使用如下軟件解碼命令
sudo gst-launch-0.10 filesrc location=/home/media/cam.mp4 ! video/x-h264,width=1280,height=720,framerate=20/1 ! ffdec_h264 ! videorate ! ffmpegcolorspace ! xvimagesink
也可以用mplayer 播放
Sudo mplayer –fps 20 cam.mp4
e) 視頻預覽:
sudo gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-yuv, width=1280,height=720,framerate=30/1 ! dri2videosink
f) 視頻預覽並同時進行編碼
sudo gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-yuv,width=1280,height=720,framerate=20/1 ! tee name=t ! queue ! ffmpegcolorspace ! ducatih264enc ! filesink location= ./cam2.mp4 t. ! queue ! dri2videosink
四、arm-linux-gcc 交叉編譯工具鏈的安裝與配置
(省略)
五、利用OMAP4 的FDIF 模塊實現硬件人臉檢測
我們開發了一個Gstreamer 插件,能夠利用OMAP4 的硬件人臉檢測模塊(FDIF )實現快速的人臉檢測,並且能夠從視頻流中實時檢測人臉,gstreamer 命令如下:
sudo gst-launch-0.10 v4l2src device=/dev/video0 ! video/x-raw-yuv, width=640,height=480,framerate=30/1 ! fdifscale ! dri2videosink
Note :720P 模式下(width=1280,height=720 )也是可以的。
六、測試程序(capture.elf )編譯過程
我們提供測試程序capture.elf 的源代碼,源代碼和已經編譯好的二進製文件在光盤中,二進製文件capture.elf 也位於SD 卡的/home/media 中(SD 卡通過光盤的img_ducati_4G.img 燒寫),編譯過程如下:
a 、按照第四節安裝好交叉編譯工具鏈,將光盤中capture.elf 源代碼拷貝到PC ubuntu 系統的一個目錄(假設為test ), 執行如下命令:
pc_ubuntu$ cd test
pc_ubuntu$ make
即可生成capture.elf, 將該文件拷貝到Pandaboard 中,即可使用。
七、內核編譯
光盤所提供的內核代碼包含ov5640 的驅動,代碼位於光盤:/kernel/source/ 目錄。在編譯內核前先確保交叉編譯工具鏈已安裝完成,而且系統安裝了mkimage 工具,如果沒有安裝,可以將光盤文件(光盤:/tools/mkimage )直接拷貝到PC ubuntu 系統的/usr/bin 目錄。編譯過程如下:
1. 解壓kernel-tilt.tar.gz ,解壓後的代碼目錄為kernel-tilt
pc_ubuntu:~/kernel-tilt$ tar –xzvf kernel-tilt.tar.gz
2. 修改內核配置選項(如果不需要修改,可跳過)
pc_ubuntu:~/kernel-tilt$ cp config_ori .config
pc_ubuntu:~/kernel-tilt$ make menuconfig
選擇上面的load an alternate configuration file
然後在彈出的框中
輸入回車確認,然後選擇exit 退出make menuconfig 界面,退出前選擇yes 來save 新的config 文件
3. 執行./com.sh 開始編譯內核,新編譯出的內核uImage 在源碼目錄的arch/arm/boot/ 下面。
pc_ubuntu:~/kernel-tilt$ ./com.sh
4. 將arch/arm/boot/uImage 拷貝到SD 卡的FAT32 分區即可
更多資料以及demo訪問公司網站:www.xfengche.com
產品清單:
1. 攝像頭模塊一個
2. 焊接底座,焊接與pandaboard(ES)J17
3. SD卡一張(用於啟動Pandaboard,內含測試程序)