今回は「畳み込みニューラルネットワークの理論
- KIKAGAKU」を学ぶ。
実習環境
Colaboratory を使わない場合、 OpenCV をインストールしないといけないが、ここに書かれている cv2 だとインストールできなかった。
pip install opencv_python でインストールした。
なお、PIL はすでに pip install pillow でインストール済み。
学習内容
画像処理の実装
- OpenCV
- Pillow
- グレースケール変換
画像処理の基礎
- 画像とは
- 画像の特徴抽出
- 画像を切り取る
- ヒストグラムを取る
- CNN 以前の画像分類のモデル
- フィルタとは
- エッジ検出
畳み込みニューラルネットワーク
- 畳み込み( Convolution )
- プーリング( Pooling )
- 全結合層( Fully Connected Layer )
出力結果
OpenCV では画像が BGR の順に格納されており、Matplotlib では画像が RGB の順で格納されているため青味がかった色になっている。
OpenCV に格納された画像を cvtColor() で RGB の順に変換した結果。
グレースケール変換した結果。Matplotlib が RGB の 3 チャンネルの画像の入力を標準としているため、白黒になっていない。
plt.imshow(img_gray, cmap='gray') で表示した結果。
横方向のエッジ検出を行った結果。
縦方向のエッジ検出を行った結果。