У меня есть два изображения. Я хочу показывать их поочередно в том же окне в opencv2 снова и снова через 1 секунду (на основе python)
img = cv2.imread('LENNA.jpg',0)
img2 = cv2.imread('CAMERAMAN.jpg',0)
while TRUE:
cv2.imshow("window",img)
time.sleep(3) # 3 second delay
cv2.imsow("window",img2)
окно застывает и становится серым, когда я выполняю это.
Ребята, вопрос не является точной копией того вопроса. Он пишет о том, что он зависает, когда он вызывает sleep (). Использование sleep () с opencv () - старая проблема, но она не рассматривается в разделе «Сделать паузу ...»
Следующий код работает. Обратите внимание, что мы используем cv2.waitkey(3000)
, а не sleep(3)
. Кроме того, другой способ сделать это - использовать анимацию и интерфейсы imshow()
из pyplot.
import cv2
img = cv2.imread('LENNA.jpg',0)
img2 = cv2.imread('CAMERAMAN.jpg',0)
while True:
cv2.imshow("window",img)
cv2.waitKey(3000)
cv2.imshow("window",img2)
cv2.waitKey(3000)
Awais, похоже несовместимость cv2 и sleep. Смотрите мой ответ ниже.