opencv 엄청 들어만 보고 제대로 쓸 줄 모른다,,
프로젝트에 쓸만한 실력까지 올리는게 목표인데 좀 늦긴 하지만 깨작깨작 뭐라두 해보기,,
docs.opencv.org/4.1.2/dc/d2e/tutorial_py_image_display.html
예제를 찾아서 해보는 것보다 공식문서 보면서 차근차근 하는 것이 공부하는 데 효과적일 것 같아서
공식문서 보면서 하는데 잘 이해가 안되는 부분은 opencv-python.readthedocs.io/en/latest/doc/01.imageStart/imageStart.html을 참고하였다.
예전에 C++에 opencv 설치하는거 아주 애먹었던 기억이 심해서
colab을 사용해서 python으로 일단 시작해보기
img = cv2.imread('IU.jpg', 0) #grayscale cv2.IMREAD_GRAYSCALE
img = cv2.imread('IU.jpg', 1) #color cv2.IMREAD_COLOR
img = cv2.imread('IU.jpg', -1) #cv2.IMREAD_UNCHANGED
cv2.imshow('image',img) #colab에서 오류 발생
#이렇게 써야 imshow를 colab에서 사용 가능
from google.colab.patches import cv2_imshow
cv2_imshow(img)
#원래 코드
cv.imshow('image',img)
cv.waitKey(0) #키보드 입력 대기 함수 -> 0이면 무한 대기 / 숫자 -> 숫자(milisecond) 대기
cv.destroyAllWindows() #윈도우 종료
- cv2.imwrite() : 이미지 저장 / 영상의 format을 변경할때도 사용하는 것 같다.
- matplotlib
import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt
from google.colab.patches import cv2_imshow
img = cv.imread('IU.jpg', 0)
plt.imshow(img)
#plt.xticks([]) # x축 눈금
#plt.yticks([]) # y축 눈금
plt.show()
#9-10번 코드 추가 -> 축 사라짐
openCV는 BGR을 / Matplotlib는 RGB을 사용하여 이미지를 보여준다.
따라서 첫번째와 세번째의 값이 바뀌어서 출력되게 된다.
내 github에 정리한 코드 : #1.imread(),_imshow(),_imwrite(),_matplotlib.ipynb
끝 !
'study > 영상처리 & opencv' 카테고리의 다른 글
[영상처리] 2D변환 - Rigid Transformation (0) | 2021.01.27 |
---|---|
[영상처리] RANSAC 알고리즘 (0) | 2021.01.21 |
[opencv] 직선 검출(Line Detection) (0) | 2021.01.18 |
OpenCV(Open Source Computer Vision Library) (0) | 2020.12.27 |
[javascript/python] colab에서 웹캠 실행하기 (7) | 2020.09.08 |