Итак, я пытаюсь сделать снимок с двух камер в openCV (python и windows 7). Я просто снимаю с одной камеры, вы также заметите, что я делаю забавные вещи с изображением, но это не имеет значения. Это код для попытки использовать два
import cv
import time
cv.NamedWindow("camera", 1)
cv.NamedWindow("camera2", 1)
capture = cv.CaptureFromCAM(0)
capture2 = cv.CaptureFromCAM(1)
while True:
img = cv.GetMat(cv.QueryFrame(capture))
img2 = cv.GetMat(cv.QueryFrame(capture2))
dst_image = cv.CloneMat(img)
dst_image2 = cv.CloneMat(img2)
cv.ConvertScale(img, dst_image, 255, -59745.0)
cv.ConvertScale(img2, dst_image2, 255, -59745.0)
cv.ShowImage("camera", dst_image)
cv.ShowImage("camera2", dst_image2)
if cv.WaitKey(10) == 27:
cv.DestroyWindow("camera")
cv.DestroyWindow("camera2")
break
Довольно простой. Однако это не сработает. При попытке создать матрицу из второй камеры (вторая строка кода в цикле) мне говорят, что захват равен нулю. Я использую камеры Logitech той же модели.
Боковое примечание: я также не смог найти команду для подсчета камер, подключенных в python, поэтому, если бы кто-то мог направить меня к этому, я был бы очень признателен. - Эшли
РЕДАКТИРОВАТЬ: Также может быть полезно знать, что окна часто предлагают мне выбрать, какую камеру я бы хотел использовать. Кажется, я не могу избежать такого поведения. Кроме того, я загрузил некоторое программное обеспечение для обеспечения безопасности, которое успешно запускает обе камеры одновременно. Это не открытый исходный код или что-то в этом роде. Итак, очевидно, что это возможно.