이번 시간에는 openCV에서 가자 기본인 이미지를 출력해보도록 하겠습니다.
openCV를 이용하여 기존 이미지를 출력함과 동시에 아래 이미지를 흑백으로 보여주도록 하겠습니다.
<이미지 및 흑백 보여주기>
import sys
import cv2
img = cv2.imread('dog.png', cv2.IMREAD_COLOR)
gray_img = cv2.imread('dog.png', cv2.IMREAD_GRAYSCALE)
cv2.imwrite('dog_gray.png',img)
if img is None:
print('Image load failed!')
sys.exit() #이미지가 없는 경우 프로그램을 종료
cv2.namedWindow('basic_dog', cv2.WINDOW_NORMAL)
cv2.namedWindow('gray_dog', cv2.WINDOW_NORMAL)
cv2.resizeWindow('basic_dog', 500, 500)
cv2.resizeWindow('gray_dog', 500, 500)
cv2.imshow('basic_dog',img) # basic_dog 라는 제목으로 이미지 화면에 보여주기
cv2.imshow('gray_dog',gray_img) # gray_dog 라는 제목으로 이미지 화면에 보여주기
cv2.waitKey(0) #어떤 키가 입력될때까지 대기
cv2.destroyAllWindows() #모든 창 닫기
|
![]() |
![]() |
<이미지 색상 변경>
import sys
import cv2
img = cv2.imread('dog.png')
gray_dog1 = cv2.imread('dog.png', cv2.IMREAD_GRAYSCALE)
gray_dog2 = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
if img is None:
print('Image load failed!')
sys.exit() #이미지가 없는 경우 프로그램을 종료
cv2.namedWindow('gray_dog1', cv2.WINDOW_NORMAL)
cv2.namedWindow('gray_dog2', cv2.WINDOW_NORMAL)
cv2.resizeWindow('gray_dog1', 500, 500)
cv2.resizeWindow('gray_dog2', 500, 500)
cv2.imshow('gray_dog1',gray_dog1)
cv2.imshow('gray_dog2',gray_dog2)
cv2.waitKey(0) #어떤 키가 입력될때까지 대기
cv2.destroyAllWindows() #모든 창 닫기
|
![]() |
![]() |
여기서 각 함수를 알아보도록 하겠습니다.
cv2.IMREAD_COLOR : 별도로 지정하지 않을 경우 사용되는 기본값이며 칼라 이미지로 읽어드림. 이미지의 투명도값은 무시된다.
cv2.IMREAD_GRAYSCALE : 이미지를 Grayscale로 읽는다
cv2.IMREAD_UNCHANGED : 투명도인 Alpha 채널을 포함하여 읽는다.
import numpy as np
import cv2
cap = cv2.VideoCapture(0) #video 연결된 디바이스 중 첫번째를 가지고 온다.
while(True):
ret, frame = cap.read() # 비디오 값이 정상적이면 ret은 True/ cap.read을 통해 frame을 연속적으로 읽는다.
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.imshow('video', frame) # 연속적으로 frame을 출력하여 보여준다.
cv2.imshow('gray', gray) # 기본 영상을 gray로 변환.
if cv2.waitKey() == ord('q'): # 키보드 q가 나오면 종료.
break
cap.release() # 종료이므로 video 객체 cap을 없앤다.
cv2.destroyAllWindows() # 종료
|
![]() |
자료가 마음에 드셨다면 자주 찾아주세요^^ 글 올리는데 힘이됩니다.