トップページ

このウェブサイトでは、画像解析のための、理論的な解析や、実践的なプログラミングの手法について解説しています。

Pythonで画像解析

Python3における、開発環境の準備、OpenCVの導入

Python 3.4 / OpenCV 3.1 インストール
Anacondaを使ったインストール方法です。PythonにおけるOpenCVの環境構築は比較的簡単です。

Pythonの基本
jupyter notebookの起動方法から、リストやNumPy配列の基本的な使い方までを示しています。

Chainerのインストール
機械学習ライブラリ、Chainerは非常に簡単に導入できます。ディープラーニングを含む機械学習プログラムを非常に簡単に書くことのできるライブラリです。機械学習をやるなら、使わない手はありません。

画像解析の例

セルカウント
PythonとOpenCVを用いた細胞数カウントプログラムです。distance mapを使って近接した粒子も切り分けてカウントすることができます。

画像の明るさの正規化
画像の明るさ、コントラストがバラバラだと、いくらその後の過程に手の込んだプログラムを用いても定量できません。画像の明るさを揃えるためのコードを紹介します。

機械学習でカボチャの病気を検出する
機械学習アルゴリズムで画像中にカボチャの病気である、うどんこ病に罹った葉があるか否かを判定させることができます。Convolutional Newral Network(CNN)を用いた実装を紹介しています。

 

C++で画像解析

C++における、開発環境の準備、OpenCVの導入

VisualStudio 2019でOpenCVを使う
OpenCVをWindowsで使う方法です。VisualStudioは慣れるまでが少し大変ですが、一度設定してしまえば便利です。

C++の基本
OpenCVプログラミングに最低限必要なC++の知識をまとめています。

OpenCVの基本
基礎的なOpenCVの関数を紹介しています。

画像解析の例

粒子のカウント
カウント処理は細胞数のカウントなど応用範囲の広い基本的技術です。種子のカウントを例題にしています。

根の長さの測定
長さ、面積などの項目を自動的に測定します。自動化により何千枚もの画像を簡単に解析できるようになるかもしれません。

移動体の追跡
動画を元に移動する物体の座標を自動的に決定し、記録することができれば、速度などさらに高次元の統計量を算出することが可能です。

回転パターンマッチで物体の向きの判定
パターンマッチングの応用例です。1度ずつ回転し、最もマッチする角度を計算します。

緑色のピクセル数をカウント
各画素の色情報を元に、緑色を判別して数え上げるプログラムを作成します。

空撮動画の解析
ドローンなどにより撮影した動画からドローンの位置や速度を計算します。最後には動画からの情報を元に航空写真のようなモザイキングマップを復元します。

オプティカルフロー可視化
OpenCVを用いたオプティカルフローにより、細胞遊走の速度や方向を可視化する方法を解説しています。

私が勧めているのは、いきなり大きなプログラムを書くのではなく、小さなプログラムから書き始めるという方法です。たとえば、動画処理のプログラムであれば、最初に入力の動画を表示するだけのプログラムを作ることから始める、という具合です。

このウェブサイトに対するお問い合わせはこちらから。