您好,登錄后才能下訂單哦!
這篇文章主要介紹了Jetson TX1開發中V4L2+OpenCV3.1以MJPG格式讀取USB攝像頭圖像并實時顯示的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
博主手中的800W高清攝像頭:
從上兩幅圖可以看出,該攝像頭的YUV2輸出格式只有一種640 x 480分辨率,而輸出格式為MJPG有多種分辨率,如果想實現高清采集,需要通過MJPG格式進行采集。
攝像頭的輸出格式可以是YUY2、MJPG等。對于輸出格式為YUV2的攝像頭,可以使用上個筆記中的nvcamerasrc,直接調用的是Gstreamer進行視頻圖像采集。而對于輸出格式MJPG的攝像頭,由于博主對Gstreamer不太了解,因此決定使用V4L2+OpenCV3.1進行圖像采集。
這部分的內容,可以看這位大牛的博客:http://www.cnblogs.com/surpassal/archive/2012/12/19/zed_webcam_lab1.html
由于,采用MJPG采集格式,因此在V4L2設備初始化的時候,攝像頭幀格式的pixelformat需要設置為V4L2_PIX_FMT_MJPEG:
可以使用cvDecodeImage進行圖像解碼,buf是保存圖像的buffer。iscolor參數為0,解碼成灰度圖,參數為1,解碼成彩色圖。此處iscolor參數,我們設置為1。
代碼如下:
由于代碼較長,貼出來影響美觀。可以在我的Github下載整體代碼:
URL:https://github.com/Jack-Cherish/VideoCapture/blob/master/capture.cpp
歡迎follow、star!
運行環境需要配置好OpenCV3.1,配置教程詳見:http://blog.csdn.net/c406495762/article/details/72302980
在~/.bashrc最后添加環境變量(我的OpenCV3.1安裝在了/home/ubuntu/opencv-3.1.0下,這里需要改為自己的OpenCV3.1的路徑):
export LD_LIBRARY_PATH=/home/ubuntu/opencv-3.1.0/lib:$LD_LIBRARY_PATHexport PKG_CONFIG_PATH=/home/ubuntu/opencv-3.1.0/lib/pkgconfig:$PKG_CONFIG_PATH
使添加的環境變量生效:
source ~/.bashrc
將程序拷貝到TX1中,使用使用如下指令編譯(我的OpenCV3.1安裝在了/home/ubuntu/opencv-3.1.0下,這里需要 改為自己的OpenCV3.1的路徑) :
g++ -o capture -I /home/ubuntu/opencv-3.1.0/include -O2 -g -Wall capture.cpp -L /home/ubuntu/opencv-3.1.0/lib -lopencv_core -lopencv_imgproc -l opencv_flann -l opencv_imgcodecs -lopencv_videoio -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_objdetect -lopencv_photo -lopencv_features2d -lopencv_calib3d -lopencv_stitching -lopencv_videostab -lopencv_shape -lopencv_cudaobjdetect -lopencv_cudawarping -lopencv_cudaimgproc
video dev : /dev/video0 Driver Name:uvcvideo Card Name:RecordexUSABus info:usb-tegra-xhci-3.3Driver Version:3.10.96Support format:1.YUV 4:2:2 (YUYV)2.MJPEGDefault rec: left:0top:0width:1920height:1080Current data format information: width:1920height:1080Used time is 185.864 ms Used time is 56.2118 ms Used time is 17.0305 ms Used time is 14.5383 ms Used time is 43.1591 ms Used time is 32.4903 ms Used time is 28.6098 ms Used time is 20.398 ms Used time is 33.6233 ms Used time is 23.8306 ms
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Jetson TX1開發中V4L2+OpenCV3.1以MJPG格式讀取USB攝像頭圖像并實時顯示的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。