728x90

목표


  • 파일로부터 이미지 읽기(cv.imread)
  • OpenCV윈도에 이미지 보여주기(cv.imshow)
  • 파일에 이미지 쓰기(cv.imwrite)

소스코드


import cv2 as cv
import sys

img = cv.imread("im.jpeg")

if img is None:
    sys.exit("이미지를 찾을 수 없습니다.")

cv.imshow("Display", img)

k = cv.waitKey(0)

if k == ord("s"):
    cv.imwrite("copy.jpg", img)

설명


import cv2 as cv
import sys

OpenCV 파이선 라이브러리를 임포트 합니다.(sys는 OpenCV라이브러리 아님)

img = cv.imread("im.jpeg")

cv.imread 함수를 호출하면 첫 번째 인수로 지정된 경로의 파일 이미지를 로드합니다.

두 번째 인수는 선택이며 원하는 파일 형식을 지정합니다.

  • cv.IMREAD_COLOR BGR 8비트 형식으로 이미지를 로드합니다.(default)
  • cv.IMREAD_UNCHANGED 이미지를 있는 그대로 로드합니다.
  • cv.IMREAD_GRAYSCALE 흑백으로 로드합니다.
if img is None:
    sys.exit("이미지를 찾을 수 없습니다.")

이미지를 잘 불러왔는지 확인합니다.

cv.imshow("Display", img)
k = cv.waitKey(0)

cv.imshow함수를 호출하여 이미지가 표시됩니다.

첫 번째 인수는 창의 제목이고 두 번째 인수는 표시될 Mat입니다.

사용자가 키를 누를 때까지 창이 표시되기를 원하기 때문에 사용자 입력을 기다리는 함수 cv.waitKey함수를 사용합니다. 인수에 0을 적으면 무한대로 기다립니다. 반환 값은 누른 키입니다.

if k == ord("s"):
    cv.imwrite("copy.jpg", img)

누른 키가 s인 경우 이미지가 저장됩니다.

cv.imwrite 함수의 첫 번째인 자는 파일 이름이고 두 번째 인수는 쓰일 Mat입니다.

'언어 > OpenCV(Python)' 카테고리의 다른 글

[OpenCV]색공간 변경  (0) 2022.03.23
[OpenCV]이미지 연산  (0) 2022.03.22
[OpenCV]이미지의 기본연산  (0) 2022.03.21
[OpenCV]드로잉함수  (0) 2022.03.18
[OpenCV]비디오 가져오기  (0) 2022.03.17