2012-09-04 2 views
0

GPC (General Polygon Clipper)를 사용하여 이미지 집합을 만듭니다. 비록 이미지가 분리 된 세트에서 왔는지를 결정할 수 없습니다.C++ 다각형 윤곽의 이미지 결정

이미지 데이터 (꼭지점의 위도/경도)에서 꼭지점 목록을 읽고 위의 링크에 정의 된 gpc_polygon 구조체를 사용 중입니다 ... 이미지를 순차적으로 다각형에 추가합니다.

별도의 영역에 속한 이미지를 분리하는 것이 중요합니다. 교차 영역이 0이 아님을 말할 수는 없지만 완성 된 다각형의 num_contours은 다른 영역의 수와 일치합니다.

이미지가 집합에 속하는지 확인하기 위해 num_contours을 사용할 수 있다고 생각했습니다.

그러나 이미지를 추가 할 때 하나의 이미지에서 num_contours = 1을 볼 수 있으며 두 번째 이미지 이후에는 이미지가 같은 섹션인지 여부에 관계없이 2로 증가합니다. 하지만 그 이후로는 분해되지 않은 이미지의 패턴이 실제로 사라질 때까지는 증가하지 않습니다. 그래서 적어도 자체적으로는 테스트 할 수 없습니다.

DIFF 연산자를 사용하여 다각형에서 이미지를 제거하는 것과 같습니다.

다른 사람이 GPC 나 다른 다각형 컨볼 루션 방법을 사용했다면 어떤 이미지가 각 등고선에 속하는지 식별하는 데 사용할 수있는 조언을 줄 수 있기 때문에 이전이나 이후에 구분할 수 있습니다. , 다각형 생성?

답변

0

num_contours를 1 대신에 2로 제한하고 반복적으로 돌아가서 더 이상 추가 할 수 없을 때까지 등고선을 다시 추가해야했습니다. 이 솔루션은 차선책이며, 매우 느릴 수 있으며 함께 속하지 않은 다각형이 같은 윤곽으로 끝나는 상황이 있습니다.