OpenCV를 사용한 이미지 처리
OpenCV(오픈 소스 컴퓨터 비전)는 기본적으로 머신 러닝과 컴퓨터 비전을 위해 개발된 오픈 소스 프로그래밍 라이브러리입니다. 컴퓨터 비전 응용 프로그램에서 작업하고 상용 제품에서 기계 학습 사용을 강화하기 위한 공통 인프라를 제공합니다.
컴퓨터 비전과 머신 러닝을 위한 25000개 이상의 최적화된 알고리즘은 모두 고전적인 알고리즘과 최첨단 알고리즘입니다. 많은 알고리즘을 통해 라이브러리를 얼굴 감지 및 인식, 물체 식별, 비디오에서 인간 행동 분류, 카메라 움직임 추적, 이미지를 결합하여 전체 장면의 고해상도 이미지 생성 등을 포함한 다양한 목적으로 라이브러리를 사용할 수 있습니다.
여기서는 OpenCV 라이브러리와 파이썬을 사용하여 이미지를 읽고 표시하는 방법을 설명하려고 합니다. 이것은 cv2 및 Numpy 모듈을 사용하여 구현됩니다.
Python Package Index(PyPI)에서 numpy 모듈을 다운로드할 수 있습니다.
$ pip install numpy
이미지 읽기
cv2.imread() 함수를 사용하여 이미지를 읽습니다. 이미지는 현재 작업 디렉토리에 위치해야 합니다. 그렇지 않으면 절대 경로를 제공해야 합니다.
import numpy as np import cv2 # Load an color image in grayscale img = cv2.imread('Top-bike-wallpaper.jpg',0)
이미지 표시
창에 이미지를 표시하려면 cv2.imshow() 함수를 사용하십시오.
#Display the image cv2.imshow('image',img) #key binding function cv2.waitKey(0) #Destroyed all window we created earlier. cv2.destroyAllWindows()
위의 코드를 실행하면 창의 스크린샷이 다음과 같이 표시됩니다.
이미지 작성
cv2.imwrite() 함수 사용 이미지를 저장합니다.
첫 번째 인수는 파일 이름이고 두 번째 인수는 저장하려는 이미지입니다.
cv2.imwrite('messigray.png',img)
요약 -
import numpy as np import cv2 #Read the Image # Load an color image in grayscale img = cv2.imread('Top-bike-wallpaper.jpg',0) #Display the image cv2.imshow('image',img) #key binding function k = cv2.waitKey(0) # wait for ESC key to exit if k == 27: cv2.destroyAllWindows() # wait for 's' key to save and exit elif k == ord('s'): cv2.imwrite('myBike.jpg',img) cv2.destroyAllWindows()
''를 눌러 이미지를 저장하거나 'ESC' 키를 눌러 저장하지 않고 종료합니다.
Python 이미징 라이브러리(PIL) 사용
PIL(Python Imaging Library)은 Python의 이미지 조작 라이브러리입니다. pip를 사용하여 PIL 라이브러리 설치,
$ pip install Pillow
PIL 가져오기 이미지에서 ImageFilter
#Read image im = Image.open( 'myBike.png' ) #Display image im.show() #Applying a filter to the image im_sharp = im.filter( ImageFilter.SHARPEN ) #Saving the filtered image to a new file im_sharp.save( 'another_Bike.jpg', 'JPEG' )
출력
이미지는 내 기본 위치에 저장됩니다. 현재 작업 중인 디렉토리와 창의 스크린샷에 이미지가 표시됩니다.