Python OpenCV - cv2 사용하기1

BANG·2020년 11월 25일
2

OpenCV

목록 보기
1/16

가상환경 생성 및 필요한 패키지 설치

$ conda create -n opencv4 python=3.7
$ conda activate opencv4

$ pip install opencv-python	# opencv 최신 패키지 설치
$ pip install opencv-python==4.4.0.40	# opencv 4.4.0.40 버전 설치하기
$ ls -lrt
total 16
-rw-rw-r-- 1 test test  380 Nov  3 23:28 main.py
-rw-rw-r-- 1 test test  367 Nov  3 23:34 write.py
drwxr-xr-x 2 test test 4096 Nov  3 23:37 data	# 해당 디렉토리 안에 이미지 파일 필요

이미지 읽어오기

cv2.imread(imgFile, flag)

imgFile : 이미지 파일 경로
flag : 이미지 파일을 읽어올 때 옵션
1 : IMREAD_COLOR : color(BGR)로 읽기, defult값, flag를 생략하면 자동으로 1로 인식
0 : IMREAD_GRAYSCALE : gray-scale로 읽기
-1 : IMREAD_UNCHANGED : color(BGR) + alpha channel 까지 포함하여 읽기


이미지 출력하기

cv2.imshow('title', img)

title : windows창 이름
img : 이미지 파일


cv2.waitKey(time)

키 입력을 대기
time : msec시간 단위, 공란 또는 0일 경우엔 무한정으로 대기


cv2.destroyWindows('title')

특정 이미지 창을 닫음
title : windows창 이름


cv2.destroyAllWindows()

모든 이미지 창을 닫음


# main.py

import cv2
imageFile = './data/lena.jpg'
 
img = cv2.imread(imageFile)
img2 = cv2.imread(imageFile, 0)
img3 = cv2.imread(imageFile, -1)
 
cv2.imshow('Lena color', img)
cv2.imshow('Lena grayscale', img2)
cv2.imshow('Lena alpha channel',img3)
 
cv2.waitKey(5000)   # 5초 후에 자동 close, 빈 칸이면 아무 키 누르면 close
cv2.destroyAllWindows()

이미지 저장하기

cv2.imwrite(dstFile, src)

dstFile : 저장될 파일 경로 + 파일명
src : 원본 이미지 파일


# write.py

import cv2
imageFile = './data/lena.jpg'
 
img = cv2.imread(imageFile)
 
cv2.imwrite('./data/Lena.bmp', img)
cv2.imwrite('./data/Lena.png', img)
 
# 0 ~ 9 중의 압축율로 png포맷으로 저장(숫자가 클수록 높은 압축)
cv2.imwrite('./data/Lena2.png', img, [cv2.IMWRITE_PNG_COMPRESSION, 9])
 
# 뒤의 숫자가 (0 ~ 100)작아질수록 파일 크기는 줄고, 화질이 나빠짐. jpg포맷으로 저장
cv2.imwrite('./data/Lena2.jpg', img, [cv2.IMWRITE_JPEG_QUALITY, 70])
profile
Record Everything!!

0개의 댓글