본문 바로가기
Data Science & AI/Computer Vision

[OpenCV] EasyOCR 설치 후 imshow 오류 해결

by 삼SAM 2023. 12. 12.

이번 글에서는 EasyOCR 설치 후 OpenCV의 imshow 함수에서 에러가 나는 문제를 해결한 기록을 남긴다.

 

에러 메시지

error: opencv(4.8.1) /io/opencv/modules/highgui/src/window.cpp:1272: error: (-2:unspecified error) the function is not implemented. rebuild the library with windows, gtk+ 2.x or cocoa support. if you are on ubuntu or debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvshowimage'

 

 

예상 원인

EasyOCR 설치 시 특정 버전(4.8.1)의 Opencv를 설치가 되면서 현재 환경과 호환성 문제가 발생한 것으로 예상된다.

 

Ubuntu 20.04 운영체제, opencv-python 4.6.x 버전을 사용 중 "pip install easyocr" 명령을 이용해 EasyOCR 설치하자 opencv-python 4.8.1이 설치되었다. 해당 에러는 이렇게 설치된 직후 webcam에서 읽어온 이미지를 imshow 함수로 표기해주는 과정에서 발생했다.

 

우분투 환경임에도 불구하고 에러메시지에 " src/window.cpp:1272: error" 라고 표기된 점과 우분투 혹은 데비안을 사용 중이라면 "libgtk2.0-dev"와 "pkg-config"를 설치 후 다시 시도하라는 점으로 미루어 볼 때, 호환성 문제로 보인다.

 

다만, 이상한 점은 해당 오류가 발생한 환경과 동일한 환경에서 똑같이 easyOCR 설치 후 에러가 발생하지 않은 경우도 있었다. 확인해보니 해당 경우는 opencv-python 4.6.x 버전이 4.8.1로 업그레이드 되지 않고 유지된 상태였다.

 

즉, easyocr 설치 시 우분투 환경에 호환되지 않는 버전의 opencv를 강제 설치하게 되는 경우 해당 오류가 발생한다고 볼 수 있다.

 

Opencv의 버전을 강제로 변경하게 되는 트리거는 발견하지 못했으나 호환가능한 opencv로 재설치해주거나 에러 메시지에서 권장한 방법으로 해결 가능할 것으로 보인다.

 

 

해결 방법

OpenCV 재설치

pip uninstall opencv-python

pip install opencv-python

 

pip 명령어로 opencv-python 라이브러리를 삭제 후 재설치한다.

 

EasyOCR 설치 시 설치 환경의 호환성은 무시한 채 설치된 opencv를 제거하고 현재 환경에 맞는 opencv가 설치되도록 유도한 것이다.

 

동일한 4.8.1 버전이 설치되었으나 더 이상 해당 에러가 발생하지 않고 정상적으로 opencv, easyocr 기능을 모두 사용할 수 있게 되었다.

 


 

'Data Science & AI > Computer Vision' 카테고리의 다른 글

[OpenCV] Image Crop  (0) 2024.01.01

댓글