Pynote

Python、機械学習、画像処理について

TensorFlow / Keras - ImageDataGenerator を使った画像分類モデルの学習方法

概要 ImageDataGenerator を使用して画像分類の学習を行うチュートリアル。 関連記事 pynote.hatenablog.com pynote.hatenablog.com Jupyter Notebook 本記事のコード全体は以下。keras-image-data-generator-usage.ipynb 概要 関連記事 Jupyter Notebook fl…

Keras - Keras の ImageDataGenerator を使って学習画像を増やす

概要 CNN の学習を行う場合にオーグメンテーション (augmentation) を行い、学習データのバリエーションを増やすことで精度向上ができる場合がある。 Keras の preprocessing.image モジュールに含まれる ImageDataGenerator を使用すると、リアルタイムにオ…

k 近傍法 (KNN)

概要 k-近傍法 (k-nearest neighbor algorithm, KNN) の学習用メモ。

SVM - (2) ソフトマージン SVM

概要 サポートベクターマシン (support vector machine, SVM) の学習用メモ。 ソフトマージン SVM の定式化を紹介する。 関連記事 pynote.hatenablog.com

SVM - (1) ハードマージン SVM

概要 サポートベクターマシン (support vector machine, SVM) の学習用メモ。 ハードマージン SVM の定式化を紹介する。

Pillow (PIL) - 画像をリサイズする方法について

概要 Pillow (PIL) で画像をリサイズする方法について紹介する。 概要 resize 指定した大きさにリサイズする。 指定した倍率でリサイズする。 アスペクト比を固定して、幅が指定した値になるようリサイズする。 アスペクト比を固定して、高さが指定した値に…

Pillow (PIL) - 画像を回転、反転させる方法について

概要 Pillow (PIL) で画像を回転、反転させる方法を整理する。 概要 任意の角度回転させる。 画像を 90°、180°、270° 回転させる 反時計回りに90° (時計回りに270°) 回転させる。 反時計回りに180° (時計回りに180°) 回転させる。 反時計回りに270° (時計回…

Deep Learing - MS COCO データセットの概要

概要 MS COCO データセットの取得方法と MS COCO API の使い方について紹介する。 概要 MSCOCO データセット MS COCO データセットのダウンロード MSCOCO API をインストールする。 MSCOCO API の使い方 用語 COCO オブジェクトを作成する。 カテゴリ ID を…

Deep Learning - Augmentor で画像のデータセットを水増し (オーグメンテーション) する。

概要 画像データをオーグメンテーションするライブラリ Augmentor の使い方について紹介する。 概要 関連記事 インストール 基本的な使い方 入出力の方式 入力画像の枚数と同じ枚数生成する。 n 枚生成する。 ディレクトリから読み込む代わりに配列を渡す。 …

Python - Jupyter Lab のインストールと使い方

Jupyter Notebook の後継、Jupyter Lab のインストールと使い方を紹介する。

scikit-learn - GridSearchCV でハイパーパラメータの最適値を探す

概要 scikit-learn でモデルのハイパーパラメータを GridSearchCV で探索する方法を紹介する。 概要 基本的な使い方 サンプルコード グリッドサーチの結果を取得する。 最も精度がよいモデルの情報を取得する。

Python - Word Cloud を作成する方法について

概要 Python のライブラリ wordcloudで Word Cloud を作成する方法について 概要 Word Cloud とは wordcloud ライブラリ 基本的な使い方 WordCloud クラス 背景色を変更する。 Word Cloud から除外する単語を設定する。 カラーマップを指定する。 単語一覧の…

Keras - ImageNet の学習済みモデルを利用して画像分類を行う。

概要 Keras では VGG、GoogLeNet、ResNet などの有名な CNN モデルの学習済みモデルが簡単に利用できるようになっている。 今回は ImageNet で学習済みの VGG16 モデルを使った画像分類を行う方法を紹介する。 概要 手順 モデルを構築する。 画像を読み込む…

matplotlib - plot_surface で 3D グラフを描画する方法

概要 plot_surface() で 3D グラフを描画する際の各種設定について紹介する。 概要 基本的な使い方 影を無効にする。 パッチの間隔を変更する。 パッチの境界線をなくす。 パッチの境界線の色を変更する。 色を指定する。 カラーマップを指定する。 カラーバ…

OpenCV - Windows で OpenCV を導入する方法 (2018年10月版)

概要 Windows で OpenCV 3.4.1 を opencv-contrib 付きで導入する方法を紹介する。 概要 手順 1. ソースコードをダウンロードする。 2. CMake GUI でプロジェクトファイルを生成する。 OpenCV が使えるか試す。 トラブルシューティング cmake の段階で find_…

matplotlib - 折れ線グラフを作成する。

概要 matplotlib で折れ線グラフを作成する方法について紹介する。 概要 公式ドキュメント 基本的な使い方 1つの Axes に2つの折れ線グラフを作成する。 線、マーカーのカスタマイズ 階段状の折れ線グラフを作成する。

Keras - Keras のファイルの形式について

概要 Keras で保存した重みファイルから直接重みを読み出す方法について 概要 試した環境 MNIST のクラス分類器を CNN で作成する。 MNIST データセットを読み込み、前処理を行う。 モデルを作成する。 モデル構成を表示する。 モデルの学習を行う。 save_we…

OpenCV - カメラキャリブレーションを行う方法

概要 OpenCV でカメラキャリブレーションを行う方法について紹介する。 概要 カメラキャリブレーション 手順 キャリブレーション器具を様々な距離、角度から撮影する。 キャリブレーション器具でマーカー検出を行う。 検出した画像座標上の点に対応する3次元…