アプリ版:「スタンプのみでお礼する」機能のリリースについて

ラベリングした画像を抜き出すプログラムを作りたいのですが、画像でのプログラムがよくわからないため、教えてほしいのです。
添付してあるnumber.pgmの画像でラベリングを行い、0や1などの数字のみを抜き出したいのですがその方法がわかりません。
http://cis.k.hosei.ac.jp/~wakahara/labeling.c
のプログラムを使って、画像をラベリングすることはできたのですが、そのラベリングした画像を抜き出すことがわからないんです。
mainのプログラムの中で何か作成すればいいだろうと思って作ったり、インターネットで調べてみましたが、全然できませんでした。
どなたか教えていただけませんか。お願いします。

「ラベリングした画像を抜き出す」の質問画像

A 回答 (2件)

まず、「ラベリング」とはどんな処理を指しているんでしょう?


リンク先のソースで、image1が元画像で、image2がラベリング後の画像のようですが、これらの2次元配列にピクセル単位で格納されていると言うことでよろしいですか?
で、どうやらimage2に画像データをコピーした後で、image2をピクセル単位でスキャンし、周囲の8ピクセルが黒ならラベルを入れているようですが。
おそらく、画像の中で黒い部分を抽出し、その塊ごとに番号をつけていく処理だとは思うのですが、x_size1、y_size1といった変数の宣言などが省かれているので、確証が持てません。

この回答への補足

ラベリングは、画像の中の数字をそれぞれラベル化しているんだと思います。画像処理の勉強不足でうまく説明できなくてすみません。

hegemonさんのいうとおりです。黒い部分を抽出してその塊ごとに番号を付けていく処理です。
その黒い部分を1つずつ抽出してそれを画像として表示させたいんですが、そのプログラムがわからないんです。

補足日時:2009/05/16 16:49
    • good
    • 0

<br /> <br /> >その黒い部分を1つずつ抽出してそれを画像として表示させたい<br /> <br /> それな

age2の値がラベル値かどうかをチェックすればいいでしょう。ラベルであれば、ラベル値ごとにx,yの最大と最小を記録します。
あとは、記録されたラベル値ごとのx,y座標のペアを使い、イメージを切り出せばよいわけです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!