LoginSignup
0
0

More than 3 years have passed since last update.

DNNに入れる前の画像の前処理(正規化など)をいくつか(MNIST)

Posted at

画像の前処理各種

DNNに入れる前の前処理をいくつかMNISTに適用したのでメモ。

ライブラリのインポートと日本語フォントの設定

import keras
from keras.datasets import mnist
import matplotlib.pyplot as plt
import numpy as np
import cv2
%matplotlib inline
from matplotlib import rcParams
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Hiragino Maru Gothic Pro', 'Yu Gothic', 'Meirio', 'Takao', 'IPAexGothic', 'IPAPGothic', 'VL PGothic', 'Noto Sans CJK JP']

mnist ロード

#Kerasの関数でデータの読み込み。データをシャッフルして学習データと訓練データに分割
(x_train, y_train), (x_test, y_test) = mnist.load_data()

# 2次元データを数値に変換
#x_train = x_train.reshape(60000, 784)
#x_test = x_test.reshape(10000, 784)
# 型変換
x_train = x_train.astype('float32')
x_test = x_test.astype('float32')
# 255で割ったものを新たに変数とする
#x_train /= 255
#x_test /= 255

各種処理を行った際の画像を表示

img = x_train[0]
plt.title('元画像')
plt.imshow(img, cmap='gray',clim=[0,255])
plt.show()
img_07 = img*0.7
plt.title('0.7')
plt.imshow(img_07, cmap='gray',clim=[0,255])
plt.show()
img_std = (img_07 - np.mean(img_07))/np.std(img_07)*16+64
plt.title('ブライトネス・コントラスト調整背景白')
plt.imshow(img_std, cmap='gray',clim=[0,255])
plt.show()
img_norm = np.zeros(img_std.shape)
img_norm = cv2.normalize(img_std, img_norm, 0, 255, cv2.NORM_MINMAX)
plt.title('背景白正規化')
plt.imshow(img_norm, cmap='gray',clim=[0,255])
plt.show()
plt.title('0.7正規化')
img_norm = cv2.normalize(img_07, img_norm, 0, 255, cv2.NORM_MINMAX)
plt.imshow(img_norm, cmap='gray',clim=[0,255])

test_normalize_3_0.png
test_normalize_3_1.png
test_normalize_3_2.png
test_normalize_3_3.png
test_normalize_3_5.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0