OpenCV의 imwrite() 함수
이미지는 Python에서 numpy.ndarrays
로 처리되며 이러한 배열은 3차원이며 이미지 픽셀의 값을 나타냅니다. 다양한 라이브러리와 방법을 사용하여 Python에서 이미지를 효율적으로 읽고 처리할 수 있습니다.
그러한 라이브러리 중 하나는 기능과 클래스를 사용하여 이미지를 쉽게 처리할 수 있는 OpenCV 라이브러리입니다. 이 튜토리얼에서는 OpenCV 라이브러리의 imwrite()
함수를 사용하는 방법을 보여줍니다.
OpenCV 라이브러리에서 imwrite()
함수 사용
imwrite()
함수는 이미지를 지정된 경로 위치에 저장합니다. 논의한 바와 같이 이미지는 배열로 저장되며 이 기능을 사용하여 이러한 이미지를 장치에 내보내고 저장할 수 있습니다.
세 개의 매개변수를 허용합니다. 첫 번째 매개변수에는 경로와 함께 파일 이름이 포함됩니다. 이미지가 저장되는 형식(PNG, JPEG 등)은 파일 이름에 지정되어야 합니다.
두 번째 매개변수에는 저장해야 하는 필수 이미지가 포함됩니다. 이 이미지는 numpy.ndarray
객체여야 합니다. 이미지 파일이 제대로 저장되면 imwrite()
함수는 True
를 반환합니다. 그렇지 않으면 False
를 반환합니다.
예제 코드:
import cv2
i = cv2.imread("deftstack.png")
img = cv2.cvtColor(i, cv2.COLOR_BGR2HSV)
cv2.imwrite("save.png", img)
출력:
True
위의 예에서 imread()
함수를 사용하여 주어진 이미지를 읽습니다. 그런 다음 cvtColor
기능을 사용하여 이미지에 대한 작업을 수행합니다(RGB 색상 공간에서 HSV 색상 공간으로 변환).
마지막으로 imwrite()
함수를 사용하여 이 이미지를 지정된 디렉토리에 저장합니다. 파일의 이미지 형식은 PNG
이며 BMP
, JPEG
, WebP
등과 같이 지원되는 모든 형식을 사용할 수 있습니다.
기억해야 할 또 다른 사항은 이 기능이 몇 가지 예외를 제외하고는 8비트 단일 채널 또는 BGR 순서 3채널 이미지만 저장한다는 것입니다. 이러한 예외에는 16비트 무부호, 32비트 부동 소수점, 여러 이미지의 Map
벡터 및 일부 허용된 형식으로만 저장할 수 있는 알파 채널이 있는 PNG 이미지가 포함됩니다.
지원되지 않는 모든 형식은 자동으로 8비트 서명되지 않은 이미지로 변환됩니다.
결론
이 튜토리얼에서는 opencv
라이브러리의 imwrite()
함수에 대해 논의했습니다. 우리는 이 함수가 매개변수를 받아들이는 방법과 파이썬에서 이미지를 저장하는 데 사용할 수 있는 방법을 시연했습니다.
또한 이 기능이 사용할 수 있는 이미지 형식과 지원되지 않는 형식을 처리하는 방법에 대해서도 논의했습니다.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn