操作流程:
1.將WebCam插上樹莓派後,首先要確認樹莓派是否支持該設備。輸入:
pi@raspberrypi ~$ lsusb
在返回的信息中,我們可以看到“Logitech, Inc.WebCam C270”的信息,說明該視頻攝像頭攝像頭已經被樹莓派操作系統成功識別。一般來說,只要在官方兼容列表中的設備,都能夠被樹莓派成功識別。此外,我們在返回的消息中,還可以看到鍵鼠、無線網卡的相關信息。
2、測試實時視頻
luvcvew可以用來查看WebCam的視頻信息,它包含了一個mjpeg的編碼器,能夠將視頻流保存爲AVI格式的文件。mjpeg的壓縮效率並不高,且對帶寬擁有較高要求,因而從今天來看,它並非一款理想的視頻壓縮技術。
安裝luvcvew:
pi@raspberrypi ~$ sudo apt-get install luvcview
輸入下面的指令,讓系統幫助我們找到luvcview在哪裏。正常情況下,系統應該返回“/usr/bin/luvcview”,如果系統沒有返回,再重新檢查一下該插件是否已經安裝妥當。
pi@raspberrypi ~$ which luvcview
luvcview需要工作在桌面環境中,即Raspbian的LXDE中。luvcview默認採用640像素*480像素的分辨率進行視頻採集,在實際應用中,我們發現如果採用這一分辨率,樹莓派內存吃緊,卡頓的情況比較嚴重,因此我們需要降低WebCam採集的分辨率爲320像素*240像素,在LXDE(LXTerminal)中:
pi@raspberrypi ~$ luvcview -s 320x240
執行完成之後,桌面上會彈出一個窗口,用來播放WebCam的視頻信號。此時,我們再來觀察一下桌面右上角CPU的使用情況,發現幾乎已經全部被佔用了,當然這也已經是在320像素*240像素分辨率的設置下,如果再調高分辨率,估計系統會返傭更慢。
3、測試拍照
在桌面環境下,本身就要耗費許多資源,實際上,Linux下許多圖形、圖像還是可以跑在Shell下的,下面我們就演示在Shell中調用攝像頭進行拍照。需要使用另一個小工具——uvccapture。
安裝uvccapture:
pi@raspberrypi ~$ sudo apt-get install uvccapture
開始拍照:
像素標準1:960*720
pi@raspberrypi ~$ uvccapture -B120 -C40 -S30 -x960 -y720 -ocamera.jpg
uvccapture攜帶的參數較多,其中,“-x,-y”爲圖像分辨率,“-B”爲亮度(Brightness),"-C"爲對比度(Contrast),“-S”爲飽和度(Saturation),"-o"輸出圖像文件路徑,"camera.jpg"爲保存的照片文件名,默認保存在"/home/pi"目錄下。
當水平圖像分辨率(x)超過960像素時,當垂直圖像分辨率(y)超過720像素時,還需要使用YUYV方式進行拍照,此時相比於上述方式,除了需要修改像素參數意外,還要額外增加一個參數“-m”。
像素標準2:1280*720
pi@raspberrypi ~$ uvccapture -B120 -C40 -S30 -x1280 -y720 -m -ocamera.jpg
測試效果: