문제:
PIL 이미지를 NumPy 배열로 어떻게 변환할 수 있나요? 더 빠른 픽셀 단위 변환을 수행한 다음 수정한 후 PIL 이미지로 다시 로드합니다. 배열?
답변:
NumPy 배열로 변환:
PIL 이미지를 NumPy 배열로 변환하려면 다음을 사용하세요. 다음 코드:
import numpy as np from PIL import Image pic = Image.open("foo.jpg") pix = np.array(pic)
이렇게 하면 픽셀 값을 포함하는 모양(높이, 너비, 채널)의 3D 배열.
PIL 이미지로 다시 변환:
수정된 배열을 다시 PIL 이미지로 로드하려면, 여러 가지 방법이 있습니다:
1. Image.putdata() 사용:
배열을 다시 튜플 시퀀스로 변환:
data = list(tuple(pixel) for pixel in pix) pic.putdata(data)
2. Image.fromarray() 사용(PIL 1.1.6 이상):
수정된 배열을 이미지에 할당하기만 하면 됩니다:
pic = Image.fromarray(pix)
추가 참고 사항:
위 내용은 PIL 이미지를 NumPy 배열로 변환했다가 다시 되돌리는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!