画像処理

画像処理とOpenCV

Python+OpenCV|HoG+SVMによる人物検出

画像処理とOpenCV

Python+OpenCV|Shi-Tomasiのコーナ検出

画像処理とOpenCV

Python+OpenCV|画像のヒストグラムを作る方法

画像処理とOpenCV

Python+OpenCV|AKAZE特徴量

AKAZE記述子 FED(fast explicit diffusion)と呼ばれる数学的手法を用いて大幅な高速化を図っている。 さらに、M-LDB(robust modified-local difference binary)と...
画像処理とOpenCV

Python+OpenCV|KAZE特徴量

KAZE記述子 SIFTやSURFでは、DoG画像をベースに特徴点を検出している。 KAZEでは、AOS(additive operator splitting)と可変コンダクタンス拡散(variable conductance d...
画像処理とOpenCV

LoGフィルタ

LoGフィルタ LoG(Laplacian of Gaussian) ガウシアンフィルタを掛けた後に、ラプラシアンフィルタを掛ける操作 $$LoG(x,y) = \frac{x^2+y^2-\sigma^2}{2\pi\s...
画像処理とOpenCV

DoGフィルタのメモ

DoGフィルタ DoG(Difference of Gaussian) σの値が異なる2つのガウシアンフィルタの画像の差分とる。 この差分が作るフィルタをDoGフィルタと呼ぶ。 DoGフィルタは、LoGフィルタと処理...
画像処理とOpenCV

モラベックコーナ検出のメモ

モラベックコーナ検出 画像の小領域を設定する。 コーナが含まれているならば、この小領域をどの方向に動かしても、小領域内の画像は大きく変化する。 平坦ならば、変化しない。 エッジならば、一方向について変化する。 これ...
画像処理とOpenCV

へシアンコーナ検出

へシアンコーナ検出 画像をx方向、y方向、輝度Iの3次元空間における曲面とみなす。 コーナは曲面が大きく変化している点と考えることができる。 コーナ検出するには、xyI空間で曲率が大きな点を探せばよい。 曲率には、ガウス曲率...
画像処理とOpenCV

Python+OpenCV|HoG特徴量

HoG特徴量 大まかなアルゴリズム 入力画像の分割 入力画像を複数の"ブロック"に分割します。 各ブロックをさらに"セル"に分割します。 微分フィルター 入力画像を微分フィルターに掛けます。 勾配強度と勾配方向...
画像処理とOpenCV

Python+OpenCV|ハリスコーナ検出器

ハリスコーナ検出器 大まかな手順 画像の平滑化 各画素の微分を計算する 行列M(後述)を計算する コーナネスC(後述)を計算する コーナネスCの値が閾値より大きければ、コーナと判定する 行列Mは次のよう...
画像処理とOpenCV

Python+OpenCV|Prewittフィルター

Prewittフィルター Prewittフィルターは、次のフィルターで表される。 x方向 $$F_x = \begin{bmatrix} -1 & 0 & 1 \\ -1 & 0 & 1 \\ -1 & 0 & 1 \end{...
画像処理とOpenCV

Python+OpenCV|SURF特徴量

SURF記述子 局所領域の内容を認識に有利な情報に変換する過程を記述という。 記述された情報を記述子という。 SURF記述子は、SIFT記述子を改良したもので、効率化されています。 論文 SURF:Speeded-up...
画像処理とOpenCV

Python+OpenCV|SIFT特徴量

SIFT記述子 局所領域の内容を認識に有利な情報に変換する過程を記述という。 記述された情報を記述子という。 SIFT記述子は、局所輝度勾配ヒストグラムを利用した記述子である。 SIFTは、DoG画像の生成や画像のリサイズな...
画像処理とOpenCV

テンプレート・マッチング|Python+OpenCV

Python+OpenCV 入力画像 テンプレート画像 SSD ZNCC 出力結果 SSD ZNCC ...
画像処理とOpenCV

Python+OpenCV|1次微分フィルタ

1次微分フィルタ 1次微分フィルタは、画像から輪郭を抽出する空間フィルタです。 1次微分を計算することで注目画素の左右上下の画素値の変化の傾きが求まります。 画像の輪郭は、画素値の変化が大きいため、微分値が大きい箇所が輪郭となります。...
画像処理とOpenCV

Python+OpenCV|ラプラシアンフィルタ

ラプラシアンフィルタとは 二次微分を利用して画像から輪郭を抽出する空間フィルタです。 x方向とy方向の2次微分の和をラプラシアンという。 $$\nabla^2 = \frac{ \partial }{ \partial x...
画像処理とOpenCV

Python+OpenCV|2値画像処理

2値画像とは 階調が2つの画像です。 0が黒、1が白の2値です。 python+OpenCV 出力結果 元画像 2値化 adp ...
画像処理とOpenCV

Python+OpemCV|メディアンフィルタ[平滑化]

メディアンフィルタとは メディアンフィルタは、画像内の周囲と大きく異なる画素を取り除くことができる。 ゴマ塩ノイズを除去できる 注目画素とその近傍画素を取得する それらの中央値を新しい画素とする Python+Op...
画像処理とOpenCV

Python+OpenCV|ガウシアンフィルタ

ガウシアンフィルタとは ガウシアンフィルタは、平均0、標準偏差σのガウス分布を近傍画素値に重み付けを行います。 標準偏差σの値が大きくなるほど、ガウス分布が平たくなり、重みの差が小さくなるため、平滑化の効果も大きくなります。 ...
画像処理とOpenCV

Pythonで画像をグレースケールにする方法

グレースケールとは 日本語的に言えば、白黒濃淡画像 白から黒までの濃淡で、画像を表現します。 ピクセルの標本値に光度以外の情報が含まれていない画像のことである。 つまり、RGBなど色空間を使用しない画像です。 ...
画像処理とOpenCV

OpenCV+Python+Webカメラ|顔をアニメ画像に変える-ジャンヌ編

顔をアニメ画像に変える 今回のテーマ「リアルタイムで顔をジャンヌに変える」です。 これは、前回のリアルタイムで顔にモザイクをかけるの応用編で、モザイクを画像の貼り付けに変えただけのものです。 作りたいもの 前回の顔に...
画像処理とOpenCV

アニメ画像の顔検出+顔抽出|Python+OpenCV

アニメ画像の顔検出+顔抽出 アニメ画像の顔検出と顔抽出をしていきます。 用意するもの 下のサイトを参考にしてください。 今回使用するカスケードは、このサイトで紹介されているものです。 プログラム...
画像処理とOpenCV

Python・OpenCVで動画を撮る&保存する方法

Pythonで動画を撮る&保存する方法 Webカメラで撮った動画を保存する方法を紹介します。 Pythonの画像処理ライブラリOpenCVを使います。 インストール方法は、下記を参考にしてください。 macOS環境で...
画像処理とOpenCV

Python+OpenCV+Webカメラ|リアルタイムで顔にモザイクをかける

リアルタイムで顔にモザイクをかける Pythonと、画像処理のライブラリ「OpenCV」で、リアルタイムで顔にモザイクをかけます。 OpenCVを使って、Webカメラから映像を取得します。 取得した映像から、リアルタイムで顔に...