Повторное отображение двух изображений поочередно в одном окне

У меня есть два изображения. Я хочу показывать их поочередно в том же окне в 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)

окно застывает и становится серым, когда я выполняю это.

Awais, похоже несовместимость cv2 и sleep. Смотрите мой ответ ниже.

DrM 12.09.2018 19:26

Ребята, вопрос не является точной копией того вопроса. Он пишет о том, что он зависает, когда он вызывает sleep (). Использование sleep () с opencv () - старая проблема, но она не рассматривается в разделе «Сделать паузу ...»

DrM 13.09.2018 00:19
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
125
1

Ответы 1

Следующий код работает. Обратите внимание, что мы используем 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)

Другие вопросы по теме