본문 바로가기

컴퓨터비전/라이브러리

[Computer Vision] 2. openCV 이미지 읽어오기 및 시각화

1. openCV 이미지 읽어오기

import cv2  ## opencv
import matplotlib.pyplot as plt ## matplotlib
im_name = 'image.jpeg'
image = cv2.imread(im_name)
print(image)

image 출력

 

이미지 형태로 출력하기 위해서는 plt를 이용하여 출력하면 된다.

plt.imshow(image)
plt.show()

openCV를 사용하여 이미지를 출력할 경우, RGB가 아닌 GBR형태로 출력이 되기 때문에 

RGB로 변환하여 주기 위해 아래의 코드를 입력한다.

image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
plt.imshow(image_rgb)
plt.show()

image_gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
plt.imshow(image_gray, cmap='gray')
plt.show()

 

2. 다수 이미지 읽어오기

im_name = './image.jpeg'
image = cv2.imread(im_name)
image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
image_gray = cv2.cvtColor(image_rgb, cv2.COLOR_RGB2GRAY)

plt.imshow(image)
plt.show()
plt.imshow(image_rgb)
plt.show()
plt.imshow(image_gray, cmap='gray')
plt.show()

 

 

다수의 이미지를 불러올 수 있지만, 이를 가로로 한눈에 보기 쉽게 정리하기 위해서 

plt.figure사용하여 아래와 같이 이미지를 정렬할 수 있다.

plt.figure(figsize=(15,8))  ## figure 사이즈 지정


plt.subplot(1,3,1)      # 1x3의 figure에서 1번 째 칸에 위치
plt.imshow(image) 
plt.axis('off')         # axis 제거
plt.title('Image 1 ')   # title 지정

plt.subplot(1,3,2)
plt.imshow(image_rgb)
# plt.axis('off')
plt.title('BGR image')

plt.subplot(1,3,3)
plt.imshow(image_gray, cmap='gray')
plt.axis('off')
plt.title('Gray image')

plt.show()