Linux+v4l2自動設定相機曝光時間
在Ubuntu環境下使用工業相機,安裝了v4l2庫設定相機的引數,之前發現了曝光時間對於運動拍照的清晰度影響較大,所以需要使用v4l2-ctl -d /dev/video0 -c exposure_absolute=20(所用相機預設為127)。為了方便使用,可以把這條指令放到開機執行裡面,開機執行這條指令我找到了兩種方法。
第一種:寫到gedit /etc/rc.local,把v4l2-ctl -d /dev/video0 -c exposure_absolute=20新增在exit0之前即可。之前的一臺電腦,這樣設定成功了,但是另外一臺電腦如此設定以後並沒有起作用。關於rc.local裡面的指令不執行,有幾個解決方法,http://www.linuxidc.com/Linux/2017-09/147166.htm這一篇都總結了而且文章可讀性很好,不幸的是使用這幾種方法都沒起作用,後來還是根據這篇文章裡的把錯誤日誌記錄下來,發現不起作用的原因是,沒找到裝置/dev/video0,這就說明執行/rc.local時,還沒有識別到相機,所以如果是這個問題,可以參考下一種方法。
第二種:跟之前的《ubuntu開機自動執行自寫程式》http://blog.csdn.net/zilanpotou182/article/details/71173361
基本一樣:
(1)新建一個指令碼檔案:gedit /home/exposure.sh,然後輸入如下內容)
(2)輸入如下內容,儲存關閉:
#!/bin/sh -e
v4l2-ctl -d /dev/video0 -c exposure_absolute=20
exit 0
(3)新增可執行許可權:chmod +x /home/exposure.sh
(4)在/usr/share/applications目錄下建立一個名為exposure的啟動配置檔案:
cd /usr/share/applications
gedit exposure.desktop
(5)在exposure.desktop檔案裡輸入下面:
[Desktop Entry]
Version=1.0
Name=exposure
Exec=/home/exposure.sh (這個是那個可執行檔案的位置)
StartupNotify=false
NoDisplay=true
Type=Application
Categories=System;Utility;Archiving;
(6)exposure.desktop檔案拷貝到/etc/xdg/autostart目錄下:
cp exposure.desktop /etc/xdg/autostart
(7)重啟完成設定