Сравнение массивов numpy в цикле

Рейтинг: 0Ответов: 0Опубликовано: 22.02.2023

Подскажите у меня есть код для захвата изображения с вебки. На выходе я получаю массив. Мне нужно сделать так чтобы эти два массива сравнивались в реальном времени и если они изменяются то происходило какое нибудь действие.(текст на экран или в консоль или еще что то) Пробую это делать через np.array_equal(A,B) но проблема в том что этот метод сравнивает два готовых уже массива. А мне нужно чтобы он сравнивал массив в начале цикла и в конце.

import cv2
import numpy
import numpy as np

# Создаем объект захвата видео, в этом случае мы читаем видео из файла
vid_capture = cv2.VideoCapture(0)
if (vid_capture.isOpened() == False):
    print("Ошибка открытия видеофайла")
# Чтение fps и количества кадров
else:
    # Получить информацию о частоте кадров
    # Можно заменить 5 на CAP_PROP_FPS, это перечисления
    fps = vid_capture.get(5)
    print('Фреймов в секунду: ', fps, 'FPS')
    # Получить количество кадров
    # Можно заменить 7 на CAP_PROP_FRAME_COUNT, это перечисления
    frame_count = vid_capture.get(7)
    print('Частота кадров: ', frame_count)
    print('\n-----------------------------\nДля завершения нажмите "q" или Esc...')
file_count = 0
while (vid_capture.isOpened()):
    # Метод vid_capture.read() возвращают кортеж, первым элементом является логическое значение
    # а вторым кадр
    ret, frame = vid_capture.read()
    if ret == True:

        cv2.imshow('Look', frame)
        file_count += 1
        print('Кадр {0:04d}'.format(file_count))
        print(type(frame))
        key = cv2.waitKey(20)
        if (key == ord('q')) or key == 27:
            break
    else:
        break
# Освободить объект захвата видео

vid_capture.release()
cv2.destroyAllWindows()

Ответы

Ответов пока нет.