Keras의 keras.preprocessing.image 사용법 망록
이미지 로드
load_img 함수를 사용하여 이미지를 읽을 수 있습니다.
이미지는 PIL 형식으로 읽혀지므로 NN의 훈련용, 예측용 등으로 사용할 때는 numpy의 array형으로 변환할 필요가 있다.
import keras
keras.preprocessing.image.load_img(
path, grayscale=False, color_mode="rgb", target_size=None, interpolation="nearest"
)
인수
설명
지정 방법
path
이미지 경로 (절대 또는 상대가 될 수 있음)
경로 문자열
grayscale
그레이 스케일 설정이지만 공식적으로 사용되지 않으며 color_mode로 지정해야합니다.
True or False
color_mode
가져온 이미지의 형식을 지정할 수 있습니다. 'grayscale', 'rgb', 'rgba'가 있으며 기본값은 'rgb'
'grayscale' 또는 'rgb' 또는 'rgba'
target_size
가져올 이미지의 크기를 int 튜플로 지정
(width, height)
interpolation
이미지를 보완하는 방법. 원본 이미지와 target_size에 차이가 있을 때 이미지를 보완합니다. "nearest", "bilinear", "bicubic", "lanczos", "box", "hamming"의 종류를 보완하는 방법이 지원된다. 기본적으로 "nearest"
"nearest"또는 "bilinear"또는 "bicubic"또는 "lanczos"또는 "box"또는 "hamming"
실천
이미지 로드from keras.preprocessing.image import load_img
import matplotlib.pyplot as plt
#基本的にはpath,color_code,target_sizeをしておけば良い
#読み込み自体はここだけで完了!
img = load_img("taiju.jpg", color_mode='rgb', target_size=(700,700))
array = img_to_array(img)
gray_img = load_img("taiju.jpg", color_mode='grayscale', target_size=(28,28))
gray_array = img_to_array(gray_img)
testlist=[]
testlist.append(array)
testlist.append(gray_array)
imglist=[]
imglist.append(img)
imglist.append(gray_img)
#mnistを利用したニューラルネットワークなどで使う際の形式
print("arrayの形式:",array.shape)
print("gray_arrayの形式:",gray_array.shape)
#matplotを使った画像の表示
for i in range(2):
plt.subplot(1,5,i+1)
plt.imshow(imglist[i],'gray')
plt.show
이것을 실행하면 다음과 같습니다.
첫 번째 이미지는 img = load_img("taiju.jpg", color_mode='rgb', target_size=(700,700))로 읽은 이미지이며, 풀 컬러의 세로/가로 700pixel의 원래 이미지 크기로 읽어오기 때문에 선명하게 표시됩니다.
두 번째 이미지는 gray_img = load_img("taiju.jpg", color_mode='grayscale', target_size=(28,28))로 읽은 이미지로, 그레이 스케일로 변환되어 종횡 28pixel로 축소되어 표시됩니다 있습니다. 따라서 불선명하고 거친 이미지가 보입니다.
또한 img_to_array 함수를 사용하여 numpy의 array형으로 변환할 수 있으며 신경망에서 작성한 모델에 의한 예측 등에도 활용할 수 있습니다.
Reference
이 문제에 관하여(Keras의 keras.preprocessing.image 사용법 망록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/YamaoYama/items/6477e3d3cfcd7b0ac70c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import keras
keras.preprocessing.image.load_img(
path, grayscale=False, color_mode="rgb", target_size=None, interpolation="nearest"
)
from keras.preprocessing.image import load_img
import matplotlib.pyplot as plt
#基本的にはpath,color_code,target_sizeをしておけば良い
#読み込み自体はここだけで完了!
img = load_img("taiju.jpg", color_mode='rgb', target_size=(700,700))
array = img_to_array(img)
gray_img = load_img("taiju.jpg", color_mode='grayscale', target_size=(28,28))
gray_array = img_to_array(gray_img)
testlist=[]
testlist.append(array)
testlist.append(gray_array)
imglist=[]
imglist.append(img)
imglist.append(gray_img)
#mnistを利用したニューラルネットワークなどで使う際の形式
print("arrayの形式:",array.shape)
print("gray_arrayの形式:",gray_array.shape)
#matplotを使った画像の表示
for i in range(2):
plt.subplot(1,5,i+1)
plt.imshow(imglist[i],'gray')
plt.show
Reference
이 문제에 관하여(Keras의 keras.preprocessing.image 사용법 망록), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/YamaoYama/items/6477e3d3cfcd7b0ac70c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)