2010-11-19 2 views
1

이미지 (실제로는 이미지의 일부분)의 지정된 점 수를 선택할 필요가 있습니다. 이미지의 어두운 부분이 더 중요합니다.색상 부분별로 이미지 부분의 점 선택

가장 쉬운 방법은 무작위로 선택하는 것입니다. 그러나 사용 된 포인트를 떨어 뜨리는 것조차도 일반적으로 특히 가중치를 고려할 때 일부 포인트가 다른 포인트와 너무 가깝게 위치하여 종료됩니다.

포인트를 선택한 후 가중치를 동적으로 줄여야합니까? 시도하지 않았습니다.

원본 이미지의 색상이 너무 많아서 비슷한 색상을 자르기 위해 부드럽게하고 싶었습니다. 그러나 그레이 스케일로 변환하는 것만으로는 충분하지 않았습니다.
Emgu CV (OpenCV wrapper) 함수를 사용하여 이미지를 이진화했습니다. 나는 유역을 계산하려고 시도했지만 계산 된 지역은 분리하기가 쉽지 않다. 일반적으로 분수령은 어두운 곳을 감지하는 꽤 '비 직관적 인'접근법입니다.

간단히 말해서 : 어두운 부분부터 시작하여 이미지 위에 점을 표시하고 싶습니다.이 부분은 밝은 부분보다 자주 표시해야합니다. 포인트는 근처에 겹치지 않도록 유사한 색상 그룹 위에 흩어져 있어야합니다.

알고리즘이 정확할 필요는 없습니다. 그것은 다음 반복에서 다른 결과를 줄 수 있습니다. 점수는 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 (또는 더 큰) 이웃의 평균을 취하여 어둠 한계 값을 계산할 수 있습니다. –