본문 바로가기

Development/OpenCV10

artially initialized module 'cv2' has no attribute '_registerMatType’ 'cv2' has no attribute '_registerMatType’ 오류 발생 opencv-python-headless를 설치하고 다음과 같은 오류가 발생할 수 있다. artially initialized module 'cv2' has no attribute '_registerMatType’ 해결 방법 내가 해결한 방법의 경우는 opencv-python과 opencv-python-headless의 버전을 맞춰주니까 해결이 됐다. opencv-python-headless의 버전을 opencv-python 버전에 맞춰서 다시 설치해주면 된다. 2023. 4. 19.
libSM.so.6: cannot open shared object file libSM.so.6: cannot open shared object file 오류 docker에서 opencv-python을 설치하면 libgl.so.2와 libgthread-2.0에 대한 오류는 자주 발생발생했었는데 그다음과 같이 처음 보는 오류가 발생했다. libSM.so.6: cannot open shared object file: No such file or directory 해결 방법 위의 오류를 해결하기 위해서는 다음과 같이 설치를 해주면 된다. apt-get install -y libsm6 libxext6 libxrender-dev 2023. 4. 19.
Could not load the Qt platform plugin xcb Could not load the Qt platform plugin ‘xcb’ 오류 발생 python version의 opencv를 사용하기 위해 다음과 같이 패키지를 설치하였다. pip install opencv-python pip install opencv-contrib-python 그런데 다음과 같은 에러가 발생했다. ‘Avalable platform plugins are: xcb, egifs, glfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl.’ plugin ‘xcb’오류 해결 방법 해당 오류에서는 opencv-pytho.. 2023. 2. 10.
[OpenCV] opencv webcam 기본 예제 python code import cv2 # open webcam cam = cv2.VideoCapture(0) # get fps fps = cam.get(cv2.CAP_PROP_FPS) if cam.isOpened() is False: print('error') while True: #get frame ret, frame = cam.read() if ret is not True: break if frame is None: break cv2.imshow('a', frame) if (cv2.waitKey(1) & 0xFF) == 27: break c++ code #include void main() { cv::VideoCapture cap(0); if (!cap.isOpened()) { std::cout 2022. 2. 4.
[OpenCV] libgthread-2.0.so.0: cannot open shared object file 해결 libgthread-2.0.so.0: cannot open shared object file 문제 발생 docker환경에서 pip install opencv-python을 했을 때 libGL.so 오류가 발생하여 밑의 링크의 글에서 해결하였다. https://shuka.tistory.com/27 [OpenCV] libGL.so.1: cannot open shared object file 해결 opencv를 pip install opencv-python으로 설치하면 다음 사진과 같이 오류가 뜰 때가 있다. "libGL.so.1: cannot open shared object file." 위의 오류를 해결하려면 libgl1-mesa-glx를 설치해주면 된다. (sudo).. shuka.tistory.com .. 2022. 1. 14.
[OpenCV] OpenCV circle, rectangle, text 그리기와 PIL 한글 text 1. circle, rectangle, text 영상처리를 하다 보면 image에 여러 그림을 그리거나 point를 표시하거나 할 경우가 많다. 타원이나 line 등 많은 그리기 방법이 있지만 주로 rectangle을 그리거나 circle을 그리거나 text를 쓸 때가 많았다. 기본적으로 opencv를 이용한 각 그리기 함수의 parameter들은 밑에와 같다. circle cv2.circle(image, center, raddian, color, thickness) rectangle cv2.rectangle(image, start_point, end_point,color, thickness) text cv2.putText(image, text, location_point, font, font_scale.. 2021. 11. 17.
[OpenCV] libGL.so.1: cannot open shared object file 해결 python opencv 설치 시 libGL.so.1 에러 발생 opencv를 pip install opencv-python으로 설치하면 다음 사진과 같이 오류가 뜰 때가 있다. "libGL.so.1: cannot open shared object file." libGL.so.1에 대한 오류 해결 방법 위의 오류를 해결하려면 libgl1-mesa-glx를 설치해주면 된다. (sudo) apt-get install libgl1-mesa-glx 그런데 만약 위의 명령어로 설치를 했는데 다음과 같은 오류가 발생하면 "(sudo) apt-get update" 한 번 해주고 진행하니까 내 경우에느 해결 됐다. libgthread-2.0.so.0에 대한 오류가 추가로 발생할 경우 위의 libGL.so.1에 대한 오.. 2021. 10. 25.
[OpenCV] 이미지 hstack으로 붙이기 hstack을 사용하여 이미지 붙이기 딥러닝에서 여러 모델을 학습 하고 각 모델의 성능을 보기 위해서는 수치만 출력해서 결과를 확인할 수도 있지만 보통은 눈에 잘 보이는 형태로 만들어서 결과를 확인하기 위해 이미지에 직접 그려보면서 확인하는 경우도 많다. 하지만 여러 모델에 대해 이미지를 보면서 비교하기 위해 하나하나 넘기기엔 귀찮아서 numpy의 stack함수를 이용해서 붙여버렸다. 각각의 모델 결과를 뽑은 이미지들이 저장되어 있는 폴더를 folder_name_list에 넣어 주고 결과를 확인하기 위한 이미지들의 이름은 같으니까 하나의 폴더에 대해 들어있는 이미지의 이름들을 image_list에 넣어준다. import cv2 import os import numpy as np folder_name_li.. 2021. 10. 21.
[OpenCV] OpenCV Library build 방법 opencv의 library 파일을 생성하기 위한 방법으로는 opencv와 opencv_contrb를 다운 받아서 build해주는 방법이 있다. 원하는 OpenCV Library Version 다운로드 opencv 라이브러리를 build하기 위해서는 원하는 버전의 opencv.zip과 opencv_contrib.zip을 다운 받아서 압축을 풀어준다. wget -O .zip https://github.com/opencv/opencv/archive/.zip unzip opencv.zip wget -O .zip https://github.com/opencv/opencv_contrib/archive/.zip unzip opencv_contrib.zip 다운로드 받은 OpenCV 파일 압축 해제 은 파일을 wge.. 2021. 10. 20.
[OpenCV] imread IMREAD_UNCHANGED flag 사용시 image rotation opencv imread에서 rotation된 이미지 원래대로 저장하는 방법 opencv에서 imread를 사용하는데 이미지에서 몇몇 장이 갑자기 rotate된 상태가 됐다. img = cv2.imread('test.jpg', cv2.IMREAD_UNCHANGED) cv2.imwrite('result.jpg', img) 그래서 원인을 찾아보다가 imread()할 때 주는 flag옵션이 문제인 것으로 발견됐다. flag값을 cv2.IMREAD_UNCHANGED로 하면 자꾸 원본 이미지가 rotate된 상태가 되는 것이였다. opencv imread의 flag는 총 3가지가 있다. cv2.IMREAD_COLOR 1 이미지 파일을 Color로 읽고, Default값이다. cv2.IMREAD_GRAYSCALE .. 2021. 10. 12.
728x90