2010-11-19 15 views
1

画像上の指定点数(実際には画像の一部)を選択する必要があります。画像の濃い部分がより重要になります。画像部分の点を色の重みで選択する

これを行う最も簡単な方法は、ランダムに選択することです。しかし、使用されたポイントを落としても、通常、いくつかのポイントが他のポイントにあまりにも近く、特に重量を尊重して終了します。

ポイントを選択した後、重量を動的に減らす必要がありますか?試していない。

私は元の画像の色が多すぎることに気づき、同様の色を滑らかにしたいと思いました。しかし、グレースケールに変換するだけでは不十分でした。
私はEmgu CV(OpenCVラッパー)関数を使用して画像を二値化しました。私は流域を計算しようと思ったが、計算された区域は分けるのが簡単ではなかった。一般に流域は、より暗い場所を検出するためのかなり直感的ではないアプローチです。

簡単に言えば、より暗い部分から始まる画像上の点をマークしたいと思います。その部分はライターよりも頻繁にマーキングする必要があります。ポイントは近くの場所に積もってしまうのを避けるため同様の色のグループに散らばっていなければなりません。

アルゴリズムは正確である必要はありません。それは次の反復において異なる結果を与えることができる。ポイントの数は10から150-200まで非常に大きくはありません。

暗い領域から始まる画像上に点在する点の指定数を計算するにはどうすればよいですか?

私が意味するものを可視化するには、下の図を参照してください。それは選択されたポイント(数〜20)を含んでいます。ほとんど濃い部分が選択されます。ポイントは、次の反復後に同じ場所に表示する必要はありません。しかし、私が望むのは、より明るい地域のポイントを選択することです。

もちろん、異なる画像では、暗闇から飛び降りるのに必要な点の数が異なります。

Picture after points selection

+2

質問には欠けている部分がいくつかあります。あなたは、均等/ランダムと、より高い重みの高いより暗い部分との間に矛盾があります。あなたはそれをクリアする必要があります。どのくらい暗い領域が「価値がある」べきか。白いフィールドの単一の黒い点が「暗い領域」ですか?ランダムな点を選んで色の数を減らすことについて、これはどういう話ですか? –

+0

私は何を意味するかについていくつかの説明をしました。 – peo

+1

入力ファイルの例と期待される結果を表示できますか? – bjoernz

答えて

0

私が正しくあなたの質問を理解していれば、あなたは、画像上の点のリストを必要としています。リストには、黒い領域からのいくつかの点と、白い領域からのいくつかの点が含まれている必要があります。

単純なアプローチ - 各ピクセルを繰り返します。現在のピクセルの値を変数 's'に格納し、次に:

if(s < 64) // Darker 
    if(rand() % 5 == 1) 
     // Add to list 
else  // White 
    if(rand() % 25 == 1) 
     // Add to list 
+0

画像が異なります。暗闇を動的に設定することです。 – peo

+0

5x5(またはそれ以上の)近傍の平均をとって、それを使って暗さの閾値を計算することができます。 –

関連する問題