2017-02-21 1 views
0

私は与えられた画像に対してセグメンテーションを実装しましたが、画像は異なる色によって異なる場合があります。フォアグラウンドに中空円/黒丸だけが含まれているフォアグラウンドから背景を分離するにはどうすればよいですか?私の目標は、画像の色に基づいて自動的にしきい値を見つけることです。 [サンプル画像] [1]OpenCVぼやけた画像または劣化した画像の動的セグメンテーション方法

import numpy as np 
import cv2 
import os 

image =cv2.imread("cropped2/pnr6.jpg") 
img = image.copy() 
MARKER_LOWER_BOUND = (0, 0, 0) 
MARKER_UPPER_BOUND = (255, 255, 25) 
marker_seg_mask = cv2.inRange(img, MARKER_LOWER_BOUND, MARKER_UPPER_BOUND) 
cv2.imshow("thresold.jpg",marker_seg_mask) 
+1

多分あなたがしたいことをもっと良く説明できますか?あなたはどんな結果を期待していますか? –

+0

@ MarkSetchell OMRベースのアプリケーションでは、塗りつぶし円からロール数を評価しようとしています。しかし、画質やカラーイメージが異なると、セグメンテーションが正しく機能しません。だから私はどのテクニックが中空円と塗りつぶし円をより良く分離できるかという少しの情報が必要です。どのように私は円が満たされているかどうかを知ることができますか? – shudheer

答えて

0

あなたが必要とする何をすべきcv2.adaptiveThreshold()機能、見てください。 docsから :前のセクションで

適応閾値

は、我々は、しきい値などのグローバル値を使用していました。 しかし、画像が異なる領域の照明条件が異なる場合があります。その場合、 適応スレッショルドに進みます。この場合、アルゴリズムは、画像の小領域に対して閾値 を計算する。そのため、同じ画像の異なる領域に異なるしきい値を取得し、さまざまな照度の画像を に表示すると、より良い結果が得られます。

+0

良い品質の分割画像が得られていませんでした。 – shudheer

関連する問題