• 締切済み

画像の比較

C#の勉強を初めて2ヶ月のものです。 質問はテンプレート画像ともう一枚の画像を比較して一致したところを四角の線で囲いたいんですが、比較用の画像の座標の取得方法がわからなくて困っています。 取得方法が載っているサイトや簡単なソースなど教えていただけたら助かります。 ご教授よろしくおねがいします。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「比較用の画像の座標の取得方法」とは, どういうことでしょうか? 何も考えずに「『もう一枚の画像』における可能なすべての点を基準にしてテンプレート画像と比較し『一致するところ』を見つける」ということではダメなんでしょうか? むしろ「何をもって『一致した』とするか」の方が問題になるはずなんですが.

saito1
質問者

補足

回答ありがとうございます。返事が遅くなってすみません。 座標なんですが、「100%一致した画像の左上」をとりたいんですが、その方法がわからないのです。 UWSCという物を使っていたんですけど本格的なプログラムをしてみたくてC#を始めました。 UWSCだと「CHKIMG」というのがあり IFB CHKIMG("画像.bmp",0) とすると一致した画像の左上の座標を取得できます。 C#でそのように座標を取得したいと思って質問をさせていただきました。 説明が悪くもうしわけありません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 画像の比較について

    書き込み失礼します。 プログラム初心者です。 現在、私はVC++とOpenCVをつかってテンプレートマッチングなるものを試しています。 その中でマッチング結果(0.0や0.5、1.0など)を見たいと思っているのですが、画像と画像を比較すると0.0から1.0に正規化しているにも関わらず現れる数値は15495939などの値になってしまったりします。 見ようとしている場所が悪いのかプログラムが悪いのか画像が悪いのか(画像はカメラで取得したものを使用)が全くわかりません。 大変申し訳ありませんがご助言に頂けたら幸いです。 いかに私が書いているテンプレートマッチングのプログラムの一部をしめします。 //テンプレートマッチングを行う cvMatchTemplate(sourceBinaryImage,templateBinaryImage,differenceMapImage,CV_TM_SQDIFF); //テンプレートが画像のどの部分にあるのかという情報を得る cvMinMaxLoc(differenceMapImage,&minValue,&maxValue,&minLocation,&maxLocation,NULL); //結果の表示方法の統一 cvNormalize(differenceMapImage,differenceMapImage,1,0,CV_MINMAX); printf("%d\n",&minValue);

  • Rubyで画像処理

    Rubyで画像処理はどこまでできますか。 画像のなかのある特定の色を使っている四角形やら曲線やらの角の座標や外側の線の座標などを取得したいなと思うのですがそういうことはできますか?

    • ベストアンサー
    • Ruby
  • 画像の座標取得

    c言語を使って, 画像を読み込んできて, 画像上のクリックした画像の座標を取得する プログラムを作りたいのですが, どうすればよいでしょうか. 画像の読み込み→画像の表示→画像をクリック→画像の座標を取得 といった流れのものを作りたいです. 最初は保存されている静止画像を読み込んで座標を取得することをやり, 最終的にはUSBカメラなどを使って動画の座標の取得を目指しています. 使用OSはWindows7, コンパイラはVisual Studio 2008をつかっております.

  • opencvを使って画像比較

    opencvを使って画像比較をしたいです。 具体的には、デスクトップの背景の一部分(4×4bitくらい)が、画面上にあれば処理を実行する、みたいにしたいです。(他のウィンドウなどで隠れていたら実行しない) 具体的にどのような関数を使えば作れますか? テンプレートマッチングという方法でいけそうなのですが、一旦プリントスクリーンキーなどで画面を保存して、それと切り取った4×4の画像を比較していく。のような感じにすればいいのでしょうか? そのような関数はあるのでしょうか? それと画面を一瞬で保存して、IplImageに保存する。みたいな関数はありますか? 下手くそな日本語ですが回答よろしくお願いします・・。

  • 画像一致判定

    前に質問しましたが回答がないので質問内容変えます フリーソフトのUWSCと同じように画面から指定画像と一致する座標見つけ出すプログラムをC++言語で作ることは可能ですか?また可能なら、参考サイト等教えてくれるとうれしいです

  • C#でBitmapの画像を比較

    C#でBitmapの画像を比較するときに、 bmp.GetPixel(W, H); でひとつひとつ比較していけば出来るのですが、 全く同じBitmapかどうかの比較をするのに、 Bitmap情報の数値化などで、 簡単な方法はあるのでしょうか? 画像比較速度を上げたいので。 よろしくお願い致します。

  • 四角で切り替わる画像2

    現在FLASHを勉強している初心者です。 下記のサイトのような元画像から四角が出てきて次画像が出てくるようなFLASHを作るのはactionscriptの知識が必要でしょうか。 ご教授よろしくお願いします。 http://www.takt-design.net/

    • ベストアンサー
    • Flash
  • 画像パターンマッチングの演算について

    画像認識のパターンマッチングの中で正規化相互相関法がありますが、 テンプレートとして使う画像と比較画像において、 例えば、「し」という画像のテンプレートに対し、比較画像が「じ」である場合は「゛」が余分にあり正規化相互相関法では相関1になりませんが(背景濃度値は同じとして)、 これを「し」の部分が合致しているため、相関1としたいのですが、何か良い演算方法はありますでしょうか。 つまり、テンプレートに対し全く同じ領域が合致してさえすれば、テンプレートの画素以外にノイズがあっても相関を1としたいのです。 相互相関の手法以外でももちろん結構です。詳しい方ご教授ください。

  • 画像処理に関する質問です.

    画像処理に関する質問です. 今現在,ある手法でテンプレート(認識したい対象物体画像)と周辺環境を撮影した画像(環境画像と呼ぶことにします)とでマッチングを行い, 環境画像中における対象物体のフレームを獲得するに至っています. 具体的には対象物体は「本」としており, 上記マッチングによって,テンプレートの四隅点と環境画像に映る本の四隅点を対応付けし, その獲得した環境画像中の本の四隅点を直線で結ぶことで,そのフレームを得ています. 獲得した環境画像中の本の四隅点に関しては, 環境画像を撮影した際のカメラ座標系における2次元座標(pixel値)のみわかっている状況です. そこで質問なのですが, 例えばテンプレートである本は真正面から20cm離れて撮影するとした場合, 環境画像中において獲得する本の四隅の点の見え方変化等から, その四隅の点それぞれの,カメラから見た奥行き座標もわかるのでしょうか? 環境画像を撮影する際,本に対して垂直方向の移動のみを考慮するならば, 簡単な比でその四隅点の奥行きも計算できるとは思うのですが, 今行っていることはその限りではないため非常に混乱している状態です. 質問をまとめますと, カメラでテンプレートを取得した際の撮影距離が既知である場合, 尚且つそのテンプレートと環境画像とで4点の対応が取れているとき, その4点の見え方変化等からそれぞれの奥行き座標も算出できるのか? ということです... 非常にわかり難い文章で申し訳ありません... 何かご教授頂けたら幸いです. 宜しくお願いします.

  • 画像処理に精通した方にお聞きしたい!

    C言語の画像処理についてです。 ●入力画像 2値・640×480 画像内には文字が1文字書かれている(今回はひらがなを想定) 入力画像から、「同一方向に伸びている線」を抽出したいと考えています。 ひらがな全般においての抽出を考えており、このような表現となってしまいます。 これを平たく言うと、文字を構成する複数の線の中でも、「一般的に直線に近い線」ということです。 例えば、ひらがなの「は」の縦棒や横棒のことです。また、ひらがなの「お」の3画目のように、比較的短い線も抽出の対象にしたいと考えています。また、線として画像内で完全に独立したものはもちろん、ひらがなの「け」の2~3画目のように交差してしまっている線についても、それぞれきちんと分離させた上で抽出を行いたいです。 ヒストグラムやラベリングなど、画像処理については本を参考にして勉強中です。 「こういう処理を使えば?」など、断片的でも良いので、よろしければご教授願います。