• ベストアンサー

エッジ画像の特徴量を求めるプログラム

エッジ画像から特徴量(エッジ特徴、エッジ分布など)を抽出するプログラムが書きたいのですが、どのように書けばよいかわかりません。そのようなコードを書くときの方法や参考になるソースコードがあれば教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#208507
noname#208507
回答No.1

エッジ特徴,エッジ分布の意味が不明確ですが,こちらの質問の続きでしょうか. http://okwave.jp/qa/q7670030.html エッジ方向の求め方なら過去の質問に次のようなものがあります. http://okwave.jp/qa/q3069777.html この回答にある求め方が一般的でしょう.ただし得られる方向(角度)の値が実数なので,もしヒストグラムを作りたいなら8方向などに離散化してから度数を数える必要があります.例えば 0 ± 22.5 度の範囲内なら 0 度とする,のように. また,これは濃淡画像を対象としたエッジの求め方なので,白と黒の二値画像では濃淡画像のような多様な・滑らかなエッジ方向の変化などは期待できません.3x3画素の狭い範囲ごとにしか処理しないので,二値画像では変化のパターンが限られます. 3x3画素の狭い範囲でなく,もっと広い範囲からエッジ方向を求めたい場合は,エッジをセグメンテーションするなどの方法が考えられます.これは上記の方法より少しプログラミングが難しくなります.

参考URL:
http://ci.nii.ac.jp/naid/110002884588
amiamiamino
質問者

お礼

返信遅くなって申し訳ありません。 なんとかできそうです。参考になりました! ありがとうございました!

関連するQ&A

  • 画像のエッジ抽出について

    画像のエッジ抽出について 画像処理を学び始めたばかりのものです。 細菌や細胞などのエッジを、 C言語を使って抽出しようと思っているのですが ・Sobelフィルタ ・FFTによる低周波カット ・ラプラシアンフィルタなど の代表的なフィルターを組み合わせて使っても、綺麗にエッジが出ません。 二値化してエッジになるのには遠い状態です。 自分の撮った画像が悪かったのか・・と思いましたが、 フリーソフトのimageJで、エッジ抽出という処理をすると 綺麗に最近の形状が出ます。 これはどのようなアルゴリズムを使っているのでしょうか・・・ 教科書やネットを調べていても、上の3つ以外にフィルタがなさそうなので 途方に暮れています。。 お恥ずかしいですが、よろしくお願いいたします。。

  • c言語でエッジ抽出

    こんにちわ 僕今C言語使って画像のエッジ抽出のプログラム を作らなくちゃいけないんですけど何をしていいのか 全然わかりません 画像処理に詳しいかた何か参考になる本とかあれば教えてください

  • 選択する特徴量

    人検出における特徴選択でHaar-like特徴量とHOG特徴量の2つについてです。 顔検出ではHaar-like特徴を用いられ、人検出ではHOG特徴用いられています。 前者は隣接する領域の輝度値の差、後者はエッジ情報を特徴としていますが、この2つの特徴の違いは何でしょうか? また、なぜHOG特徴は人検出に多く用いられているのかわかりません。 よろしくお願いします。

  • エッジの2値画像から閉じている四角形を探す

    エッジの情報の2値画像があります。閉じている四角形を探して、さらに各頂点の座標を調べる方法を考えています。 いったんラベリングしてから同じラベルの画素の隣接を追跡して最初の地点に戻ってきたら閉じているみたいな方法でやろうかなと考えています。 もっとよい方法をご存知でしたら参考図書やURL、論文なんかを教えてもらえるとうれしいです。 頂点を探す方法は見当もつかないので、ヒントとなることを何でも教えていただけないでしょうか? よろしくお願いします。

  • 貼った画像の細いエッジについて

    PaintShopPro9で作った画像をブログに貼りました。 そして、そのブログをInternetExplorerで閲覧したところ、何等問題はありませんでした。 ところが、MozillaFirefoxで閲覧すると、前記の画像の外周に、 外に向かって影のある細いエッジが見られるのです。 MozillaFirefoxにおいても、このエッジが現れないようにする方法をご教示ください。

  • 類似画像検索について。

    類似画像検索について。 画像を入力して、それに近い画像を持ってくるということをプログラムで実現したいと現在思っています。このためには何が必要でしょうか?検索したところサポートベクターマシン、画像の特徴量抽出などいろいろなことが一挙に出てまいりましたが今で学習したことがないので詳しくわかりませんでした。 このことについて詳しく書かれているサイト、ソースが載っているサイトなどがありましたら是非おしえてください。 また開発環境はC#で行うつもりです。回答お待ちしております。

  • Scilabでの画像の切り出しについて

    現在、Scilabを使った画像抽出を研究しています。 今、「エッジを検出し、そのエッジで囲まれた範囲だけの画像を切り出す」という作業を行っているのですが、Scilabは最近始めたばかりで、どのようにすれば切り出せるのかわかりません。 どのようなプログラムを作ればよいのか、わかる方いらっしゃったら是非教えてください。 よろしくお願いします。

  • 画像処理ソフトの作成

    Win32プログラムを使って画像処理を行えるプログラムを作成したいのですが、自分ひとりではどうにもなりません。 プログラムの仕様は、 (1) メニューバー「ファイル」、「画像処理」、「ヘルプ」の作成。 (2) 「ファイル」のカスケードメニュー「画像を開く」、「画像を保存する」、「プログラムを終了する」の実行。 (3) 「画像処理」のカスケードメニュー「ビットプレーンの作成」、「領域分割」、「輝度分布の計算」の実行。 この3点です。 何か役立つ参考書などがあれば教えてください。 実際にソースコードを教えていただけるとうれしいです。 よろしくお願いいたします。

  • 特徴抽出??

    今、手のひらの特徴を抽出するプログラムを作成しているのですが、指の長さを求めるために、指先と指と指の間の点を見つけたいのですが、うまく求める方法が見付かりません。 画像は256階調で、2値化してから求めようと思っています。ある程度の手のひらの傾きは考慮したいので、単純に上、下という概念は使えないので、非常に難しいです。 何かいい方法はないでしょうか?

  • 人物検出などに用いられるHOG特徴量について

    人物検出などに用いられるHOG特徴量ベクトルの比較方法についての質問です。 HOG特徴量についての文献を読み、 具体例として、下記のような状況を考えました。 (1)256×256[px]の画像を用いる。 (2)画像を32×32[px]のセルを用いて、8×8に分割する。 (3)3×3程度のセルのかたまりをブロックとし、そのブロックごとに正規化する。  そのブロックごとの特徴量は、勾配方向を9分割すると考えて、3×3×9=81[次元]とする。 (4)ブロックをセル1つ分の幅ずつずらしていき、6×6の数のブロックを得て、全体として、  81×6×6=2916[次元]の特徴量を得る。 この特徴量を用いて、ある画像の一部分を抜き出し、検索用画像とし、それによって画像データベースの画像群からラスタスキャン(検索窓をずらしながら検索)をすることにより、類似部分を見つけるような類似画像検索をしたいと考えています。 そのとき、特徴量を比較する際の検索窓の作り方がわかりません。 検索窓の大きさはブロックサイズに依存して、制限がかかるのでしょうか? それとも、セルサイズに依存して、制限がかかるのでしょうか?その場合だと例えば、4×4[セル]の大きさの検索窓を作ると4ブロック分の特徴量が必要となり、同じ領域の特徴量を何度も比較することになります。 検索窓の大きさを自由に変えたい状況なので質問させて頂きました。 どうぞよろしくお願い致します。

専門家に質問してみよう