NumPy 배열을 Python의 이미지로 저장
-
Image.fromarray()
함수를 사용하여 NumPy 배열을 이미지로 저장 -
imageio.imwrite()
함수를 사용하여 NumPy 배열을 이미지로 저장 -
matplotlib.pyplot.imsave()
함수를 사용하여 NumPy 배열을 이미지로 저장 -
cv2.imwrite()
함수를 사용하여 NumPy 배열을 이미지로 저장
Python에서 numpy 모듈은 배열 작업에 사용됩니다. Python에는 이미지를 읽고 저장할 수있는 많은 모듈이 있습니다.
이미지는 각 색상 코드와 함께 특정 위치에 저장된 서로 다른 픽셀의 배열로 생각할 수 있습니다. 따라서 배열을 이미지로 변환하고 저장해야하는 상황이 발생할 수 있습니다.
이 자습서에서는 numpy 배열을 이미지로 저장하는 방법에 대해 설명합니다.
Image.fromarray()
함수를 사용하여 NumPy 배열을 이미지로 저장
fromarray()
함수는 배열을 내보내는 객체에서 이미지 메모리를 만드는 데 사용됩니다. 그런 다음 필요한 경로와 파일 이름을 제공하여이 이미지 메모리를 원하는 위치에 저장할 수 있습니다.
예를 들면
import numpy as np
from PIL import Image
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
im = Image.fromarray(array)
im.save("filename.jpeg")
먼저 RGB 색상 코드를 저장하는 배열을 만든 다음 내 보냅니다. 파일 이름에 원하는 이미지 형식을 지정할 수 있습니다. jpeg
,png
또는 기타 일반적으로 사용되는 이미지 형식이 될 수 있습니다. 이것은 아래에서 설명하는 모든 방법에 공통입니다.
imageio.imwrite()
함수를 사용하여 NumPy 배열을 이미지로 저장
이전에 scipy 모듈에는 numpy 배열을 이미지로 저장하는imsave()
함수가있었습니다. 그러나 최근 버전에서는 더 이상 사용되지 않으며image.io()
의imwrite()
함수가이 작업을 수행하도록 권장되기 시작했으며 단순성 때문에 인기를 얻었습니다.
다음 코드는이 기능을 사용하는 방법을 보여줍니다.
import imageio
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
imageio.imwrite("filename.jpeg", array)
matplotlib.pyplot.imsave()
함수를 사용하여 NumPy 배열을 이미지로 저장
matplotlib 모듈에는 이미지 작업에 사용할 수있는 다양한 기능이 있습니다.
imsave()
함수는 배열을 이미지 파일로 저장할 수 있습니다.
예를 들면
import matplotlib.pyplot as plt
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
plt.imsave("filename.jpeg", array)
cv2.imwrite()
함수를 사용하여 NumPy 배열을 이미지로 저장
OpenCV 모듈은 Python에서 이미지 처리에 자주 사용됩니다. 이 모듈의imwrite()
함수는 numpy 배열을 이미지 파일로 내보낼 수 있습니다.
예를 들면
import cv2
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
cv2.imwrite("filename.jpeg", array)
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