キカガク(KIKAGAKU)で「畳み込みニューラルネットワークの基礎」を学ぶ

Photo by Owen Beard on Unsplash

実習環境

Colaboratory を使わない場合、 OpenCV をインストールしないといけないが、ここに書かれている cv2 だとインストールできなかった。

pip install opencv_python でインストールした。 

なお、PIL はすでに pip install pillow でインストール済み。

学習内容

画像処理の実装

  1. OpenCV
  2. Pillow
  3. グレースケール変換

画像処理の基礎

  1. 画像とは
  2. 画像の特徴抽出
  3. 画像を切り取る
  4. ヒストグラムを取る
  5. CNN 以前の画像分類のモデル
  6. フィルタとは
  7. エッジ検出

畳み込みニューラルネットワーク

  1. 畳み込み( Convolution )
  2. プーリング( Pooling )
  3. 全結合層( Fully Connected Layer )

出力結果

OpenCV では画像が BGR の順に格納されており、Matplotlib では画像が RGB の順で格納されているため青味がかった色になっている。


OpenCV に格納された画像を cvtColor() で RGB の順に変換した結果。


グレースケール変換した結果。Matplotlib が RGB の 3 チャンネルの画像の入力を標準としているため、白黒になっていない。


plt.imshow(img_gray, cmap='gray') で表示した結果。


横方向のエッジ検出を行った結果。


縦方向のエッジ検出を行った結果。


出力ログ




ソースコード



Posted in  on 5/31/2020 by rteak |