この記事では、画像処理における基本的なアルゴリズムとその実装例(プログラム)についてまとめました。
【画像処理とは】特徴・応用例
画像処理(Image processing)とは、コンピュータを用いて画像に対して次の処理①②を行うことです。
– | 処理内容 | 応用例 |
---|---|---|
① | 画像から画像への変換 | 画像編集ソフト(画像の拡大・縮小・高画質化など) |
② | 画像から様々な情報の取得 | デジタルカメラ(顔検出機能など)、自動運転技術(障害物の認識など)、医療機器(CT画像の分析など) |
①は画像処理、②はコンピュータビジョンと区別する場合もあります。
画像処理技術(画像センサと画像処理の組合せ)の特徴は以下のとおりです。
– | 画像処理の特徴 |
---|---|
① | 画像センサ(カメラ)は、他のセンサーと比較しても多くの情報を取得できるため、対応できる課題分野の幅が大きい。 |
② | 画像センサが取得する情報量は多いため、データ処理の計算コストが高い(高価な計算機が必要)。 |
【画像処理入門】基礎的なアルゴリズム
基本的な画像処理アルゴリズムについて以下にまとめました。
– | 画像の基本構造 |
---|---|
データ構造 | ■デジタル画像の基本構造 ■標本化 ■量子化 ■ラスタ走査と二次元配列走査 |
色空間 | ■RGB ■GRAY ■HSV |
色空間の変換 | ■RGB→GRAY ■RGB→HSV |
減色 | ■K平均法 |
– | ヒストグラム・濃度変換 |
---|---|
基礎 | ■ヒストグラムとは |
濃度変換 | ■線形濃度変換 ■非線形濃度変換(ガンマ補正) ■ヒストグラム平均化 |
– | 空間フィルタリング |
---|---|
基礎 | ■畳み込み演算とは |
平滑化 | ■平均値 ■ガウシアン ■メディアン |
輪郭抽出 | ■一次微分 ■Prewitt ■Sobel ■Laplacian ■エンボス ⑥LoG ⑦Canny |
高速処理 | ■積分画像 ■DoG ■DoM ■XDoG |
まとめ | ■空間フィルタリングの種類 |
– | 周波数フィルタリング |
---|---|
基礎 | ■画像のフーリエ変換 |
ノイズ除去 | – |
画像圧縮 | – |
– | 二値画像 |
---|---|
基礎知識 | ■二値画像とは |
二値化処理 | ■単純二値化 ■適応型二値化 ■大津の二値化 |
膨張収縮 | ■膨張収縮処理 ■マスク処理 |
直線検出 | ■ハフ変換(古典的) ■ハフ変換(確率的) |
– | 幾何学的変換 |
---|---|
補間 | ■最近傍補間法 ■バイリニア補間法 ■バイキュービック補間法 |
回転 | ■アフィン変換 |
– | パターン認識 |
---|---|
テンプレート探索 | ■SSD・SAD・NCC・ZNCC ■FFT+積分画像で高速化 |
特徴量 | ■Haar-like ■HoG ■SIFT ■SURF ■位相限定相関法 |
識別器 | ■カスケード型 ■SVM ■ニューラルネット |
利用例 | ■顔検出(Haar Cascade) ■人検出(HoG SVM) |
– | 動画像処理 |
---|---|
動体検出 | ■背景差分法 ■フレーム差分法 ■色追跡(HSV) |
動体追跡 | ■MeanShift ■Camshift ■オプティカルフロー ■パーティクルフィルタ |
– | 画像計測 |
---|---|
ノイズ | ■ショットノイズ ■熱ノイズ |
距離計測 | ■単眼カメラ ■ステレオカメラ ■エピポーラ幾何学 ■キャリブレーション ■ステレオマッチング |
三次元計測 | ■位相シフト法 |
– | ファイル構造 |
---|---|
ファイル構造 | ■ヘッダ部とデータ部 |
BMP | ■BMP形式 ■BMPをバイナリエディタで解析 |
JPG | – |
PNG | – |
GIF | – |
– | 応用例 |
---|---|
画像加工 | ■写真の漫画化 ■写真のアニメ絵化 |
【画像処理応用】プログラミング、ソフトウェア、その他
画像処理プログラミング・ソフトウェアについて以下にまとめました。
– | 画像処理プログラミングまとめ |
---|---|
Python | ■Pythonで画像処理入門 ■Python + OpenCV入門 ■Python + Scikit image入門 |
C# | ■C#で画像処理入門 |
– | 画像処理ソフトまとめ、その他 |
---|---|
画像編集ソフト | ■GIMP入門 |
その他 | ■プロ生ちゃん(暮井 慧)(お借りした画像) |
コメント