果物識別 マハラノビス距離を求める 識別 未学習の画像はあるか? NO 学習した果物クラスの平均ベクトルと 分散共分散行列を求め外部ファイルに保存 入力したテスト画像と各クラス タとの距離で、入力された画 像がどのクラスタに分類され るかを判定する。 円形度 テスト画像 1.0 りんご レモン バナナ 0 赤み 1.0 識別作業のイメージ その前にユークリッド距離の求め方 2間の距離dist りんごの平均特徴ベクトル 円形度(cir) (red_apple, cir_apple) (red_test, cir_test) 赤み(red) テスト画像の特徴ベクトル dist red _ test red _ apple cir _ test cir _ apple 2 2 これ以降マハラノビス距離の出し方 平均ベクトルと分散共分散行列を求める なぜ求めるのか? テスト画像がどのクラス(りんご, レモン, バナナ)に最も近いか を判断するためにマハラノビス距離を用いる。 マハラノビス距離の算出式は以下のとおりである。 テスト画像の 特徴量空間での座標 Tx Avex dis ( x) Ty Ave y マハラノビス距離 対象クラスの分散共分散行列 の逆行列 T C xx C yx C xy C yy 1 対象クラスの平均ベクトル Tx Avex Ty Avey 平均ベクトルと分散共分散行列を求める 前提 nは画像の番号 n n 学習で入力されたデータ: pn ( px , p y ) xは赤み, yは円形度 平均ベクトル Avex 1 Ave N y p xn n1 p n y N 分散共分散行列(Covariance Matrix) 1 N N n 1 1 N C xy n 1 N 1 N C yx n 1 N 1 N C yy n 1 N C xx C xx CM C yx C xy C yy p n x Avex p xn Avex p n x Avex p yn Avey p n y Avey p xn Avex p n y Avey p yn Avey クラス辞書作成例(数値はテキトーです) 1/3 学習したりんごのデータ:(赤み,円形度) , N = 3 平均ベクトル=(0.8 , 0.8) (0.9 , 0.7) , (0.7 , 0.8) , (0.8 , 0.9) 1 0.9 0.82 0.7 0.82 (0.8 0.8) 2 0.02 3 3 1 0.01 C xy 0.9 0.80.7 0.8 0.7 0.80.8 0.8 0.8 0.80.9 0.8 3 3 以下めんどくさいので 途中式省略 0.01 C yx 1 2 1 3 CM apple 1 2 0.02 300 C yy 3 C xx CM 1 apple 2 1 100 1 2 クラス辞書作成例(数値はテキトーです) 2/3 学習したレモンのデータ:(赤み,円形度) , N = 3 平均ベクトル=(0.6 , 0.4) (0.6 , 0.5) , (0.7 , 0.4) , (0.5 , 0.3) C xx CM 1 lemon 1 0.6 0.62 0.7 0.62 (0.5 0.6) 2 0.02 3 3 1 0.01 C xy 0.6 0.6 0.5 0.4 0.7 0.6 0.4 0.4 0.5 0.6 0.3 0.4 3 3 以下めんどくさいので 途中式省略 0.01 C yx 1 2 1 3 CM lemon 1 2 0.02 300 C yy 3 2 1 100 1 2 クラス辞書作成例(数値はテキトーです) 3/3 平均ベクトル りんご (0.8 , 0.8) レモン (0.6 , 0.4) 分散共分散行列の逆行列 CM CM 1 apple 1 lemon 2 1 100 1 2 2 1 100 1 2 識別器のアルゴリズム テスト画像読み込み 識別器 テスト画像から特徴量抽出 抽出した特徴と各クラスとの マハラノビス距離を計算 距離最小のクラスを探す 結果を表示 識別例(数値はテキトーです) 1/1 テスト画像xの特徴 (0.7, 0.9) りんごとの距離 2 1 0.7 0.8 dis apple ( x) 0.7 0.8 0.9 0.8100 1 2 0.9 0.8 dis apple ( x) 6 レモンとの距離 2 1 0.7 0.6 dislemon ( x) 0.7 0.6 0.9 0.4100 1 2 0.9 0.4 dislemon ( x) 42 dis apple ( x) dislemon ( x) なので、テスト画像xはりんごであると推測できる
© Copyright 2024 ExpyDoc