Перестаёт работать OpenCV после установки EasyOCR
Используя OpenCV всё было хорошо. С его помощью работал с видеокамерой и обрабатывал изображение. Никаких ошибок не было. Появилась необходимость поставить EasyOCR для дальнейшего распознавания текста на обработанном изображении, но после его установки OpenCV показывает ошибки на каждую строку кода с его участием. Пробовал устанавливать в разных порядках, но ничего не меняется. Проблема появляется ИМЕННО после установки EasyOCR, в коде ничего не меняется. Пример ошибки:
Traceback (most recent call last):
File "C:/Users/Roman/PycharmProjects/test2105/main.py", line 17, in <module>
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cv2.error: OpenCV(4.5.4) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
Они всегда схожи по последней строчке ошибки, меняется только линия кода. Использую Pyharm. Устанавливал через терминал:
pip3 install opencv-python
pip3 install easyocr
На всякий случай вот весь код программы:
import numpy as np
import cv2
import easyocr
# Все параметры камеры
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FPS, 24) # Частота кадров
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280) # Ширина кадров в видеопотоке.
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720) # Высота кадров в видеопотоке.
# img / gray / thresh / cnts / img
while True:
ret, img = cap.read()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_OTSU + cv2.THRESH_BINARY)[1]
# Поиск контуров и сортировка
cnts = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if len(cnts) == 2 else cnts[1]
cnts = sorted(cnts, key=cv2.contourArea, reverse=True)
# Поиск рамки
for c in cnts:
x, y, w, h = cv2.boundingRect(c)
ROI = img[y:y + h, x:x + w]
break
cv2.imshow('ROI', thresh)
cv2.imwrite('ROI.png', thresh)
if cv2.waitKey(10) == 27: # Клавиша Esc
break
cap.release()
cv2.destroyAllWindows()
Ответы (1 шт):
Мною было выяснено, что EasyOCR и OpenCV действительно имеют проблемы в работе друг с другом. Решением стала установка определенной версии OpenCV
pip install opencv-python==4.5.4.60
Ошибки пропали, программа заработала.