Thorlabs(DC1545M)のUSBカメラでOpenCV(2.4)とPython(2.7.3)を使用しています。
ビデオストリームで画像分析を行っていますが、ビデオストリームからカメラパラメータの一部を変更できるようにしたいと思います。紛らわしいのは、カメラのプロパティの一部を変更できるが、すべてを変更できるわけではなく、何が間違っているのかわからないことです。
Pythonでcv2バインディングを使用したコードを次に示します。これは、実行されていることを確認できます。
import cv2
#capture from camera at location 0
cap = cv2.VideoCapture(0)
#set the width and height, and UNSUCCESSFULLY set the exposure time
cap.set(3,1280)
cap.set(4,1024)
cap.set(15, 0.1)
while True:
ret, img = cap.read()
cv2.imshow("input", img)
#cv2.imshow("thresholded", imgray*thresh2)
key = cv2.waitKey(10)
if key == 27:
break
cv2.destroyAllWindows()
cv2.VideoCapture(0).release()
参考までに、 cap.set()コマンドの最初の引数は、以下にリストされているカメラプロパティの列挙を参照します。
0. CV_CAP_PROP_POS_MSEC Current position of the video file in milliseconds.
1. CV_CAP_PROP_POS_FRAMES 0-based index of the frame to be decoded/captured next.
2. CV_CAP_PROP_POS_AVI_RATIO Relative position of the video file
3. CV_CAP_PROP_FRAME_WIDTH Width of the frames in the video stream.
4. CV_CAP_PROP_FRAME_HEIGHT Height of the frames in the video stream.
5. CV_CAP_PROP_FPS Frame rate.
6. CV_CAP_PROP_FOURCC 4-character code of codec.
7. CV_CAP_PROP_FRAME_COUNT Number of frames in the video file.
8. CV_CAP_PROP_FORMAT Format of the Mat objects returned by retrieve() .
9. CV_CAP_PROP_MODE Backend-specific value indicating the current capture mode.
10. CV_CAP_PROP_BRIGHTNESS Brightness of the image (only for cameras).
11. CV_CAP_PROP_CONTRAST Contrast of the image (only for cameras).
12. CV_CAP_PROP_SATURATION Saturation of the image (only for cameras).
13. CV_CAP_PROP_HUE Hue of the image (only for cameras).
14. CV_CAP_PROP_GAIN Gain of the image (only for cameras).
15. CV_CAP_PROP_EXPOSURE Exposure (only for cameras).
16. CV_CAP_PROP_CONVERT_RGB Boolean flags indicating whether images should be converted to RGB.
17. CV_CAP_PROP_WHITE_BALANCE Currently unsupported
18. CV_CAP_PROP_RECTIFICATION Rectification flag for stereo cameras (note: only supported by DC1394 v 2.x backend currently)
(コメント投稿者のMarkus Weberが以下で指摘しているように、OpenCV 4では、プロパティ名から「CV」プレフィックスを削除する必要があることに注意してください。例
cv2.CV_CAP_PROP_FRAME_HEIGHT -> cv2.CAP_PROP_FRAME_HEIGHT
:)
私の質問は次のとおりです。
python / opencvを介してカメラの露出時間(または他のカメラパラメーター)を設定することは可能ですか?
そうでない場合、これらのパラメータを設定するにはどうすればよいですか?
注:これを行う方法を示すC ++コードがカメラの製造元から提供されていますが、私はC ++の専門家ではなく(長い目で見れば)、Pythonベースのソリューションをいただければ幸いです。
前もって感謝します!