Pynote

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

OpenCV - Non Maximum Suppression について

概要 物体検出で用いられる Non Maximum Suppression の仕組み及び実装について紹介する。 概要 Non Maximum Suppression 短形の表現 Overlap Ratio Non Maximum Suppression の処理 閾値の設定 実装 モジュールを import する。 画像を読み込む。 短形を描…

OpenCV - k 平均法 (k-means) を使い、画像の代表色を取得する方法

概要 OpenCV で k 平均法 (k-means) を使い、画像の代表色を取得する方法を紹介する。 以下の用途で利用できる。 画像で使われている主な色を取得する。 画像を見た目にあまり影響がないように減色する。(例: 1000色で表されている画像を8色で表現する。) 概…

Deep Learning - ResNet の仕組みについて

概要 画像認識のコンテスト ILSVRC 2015 にて、top5 error rate で3.57%を記録し、優勝した CNN ネットワークモデルである。 下記、2論文に基づいて紹介する。 Deep Residual Learning for Image Recognition Identity mappings in Deep Residual Networks …

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 を使用すると、リアルタイムにオ…

matplotlib - imshow で画像や配列を表示する方法

matplotlib の imshow で画像や配列を表示する方法について紹介する。

matplotlib - 目盛、目盛のラベル、グリッドの設定方法

matplotlib で x 軸及び y 軸の目盛り、目盛りに対応するラベル、グリッドを設定する方法を紹介する。

matplotlib - x 軸、y 軸のスケールを設定する方法

matplotlib で x 軸、y 軸のスケールを設定する方法について紹介する。

k 近傍法 (KNN)

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

matplotlib - legend を使った凡例の設定方法

matplotlib で legend() を使った凡例の指定方法について紹介する。

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° (時計回…

OpenCV - 画像を回転、反転させる方法について

OpenCV で画像を回転を任意の角度だけ回転させたり、上下、左右で反転させる方法を紹介する。

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

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

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

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

OpenCV - HoughCircles でハフ変換を行い、円を検出する方法 (HoughCircles)

ハフ変換で円を検出する方法 (HoughCircles)

OpenCV - ハフ変換 (Hough Transform) で直線を検出する方法

概要 OpenCV でハフ変換 (Hough transform) で画像から直線を検出する方法について紹介する。 概要 HoughLines サンプルコード 2値化する。 ハフ変換で直線検出する。 描画する。 ipywidget HoughLinesP ipywidget ハフ変換の仕組み 任意の直線は、 で表せる…

OpenCV - Canny 法で画像からエッジを検出する。

概要 OpenCV でCanny 法で画像からエッジを検出する方法について紹介する。 概要 Canny エッジ検出 OpenCV サンプルコード パラメータ調整について ipywidget

OpenCV - 画像の明るさやコントラストを変更、ガンマ補正など

概要 OpenCV で画像の明るさやコントラストを変更する方法について紹介する。 概要 積和演算で明るさ、コントラストを変更する。 コード 各パラメータによる結果 ipywidget で変更する。 ガンマ補正 コード 各パラメータによる結果 ipywidget で変更する。

スクレイピング - Beautiful Soup の DOM ツリーの編集方法

Beautiful Soup の DOM ツリーの編集方法を紹介する。

スクレイピング - Beautiful Soup の find(), find_all() を使った要素の検索方法

Beautiful Soup の find(), find_all() を使った要素の検索方法について紹介する。

OpenCV - 画像処理のパラメータを決めるには、ipywidgets が便利

概要 OpenCV で各種画像処理を行うためには決めなければならないパラメータがいくつか出てくる。 Notebook 上でスライダーやプルダウンメニューを使えるようにする GUI ウィジェットである ipywidgets を組み合わせることで、画像処理の結果を確認しながら、…

Python - JupyterLab の便利な拡張を紹介

概要 JupyterLab を使う上で入れておきたい便利な拡張機能を紹介する。 概要 関連記事 nodejs をインストールする。 コードの自動整形 数式レンダリングに MathJax ではなく、Katex を使う。 定義されている変数の中身を確認する。 Notebook 上に GUI ウィジ…

Python - JupyterLab でコードの自動整形を行う方法について

概要 JupyterLab にコードの自動整形を行う拡張「jupyterlab_code_formatter」を導入する方法について紹介する。JupyterLab の紹介及び使い方については以下の記事を参照されたい。pynote.hatenablog.com 概要 nodejs をインストールする。 拡張をインストー…

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

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

matplotlib - pcolormesh で連続的に変化する色で配列を可視化する方法

概要 pcolormesh で連続的に変化する色で配列を可視化する方法を紹介する。 概要 公式リファレンス 基本的な使い方 透過度を設定する。 シェーディングを有効にするかどうかを設定する。 枠線を設定する。 カラーマップを設定する。 疎行列の可視化 (spy) 基…

matplotlib - x 軸、y 軸のラベル、タイトルを設定する方法

matplotlib で x 軸、y 軸のラベル、タイトルを設定する方法を紹介する。

matplotlib - テキストの設定項目 まとめ

概要 matplotlib 上でテキストは text.Text オブジェクトで表すようになっており、テキストを扱う関数ではこのオブジェクトの設定を引数で指定する形になっている。 以下で指定可能な設定項目を紹介する。 概要 テキストの透過度を設定する。 テキストの背景…