2011-10-25 4 views
3

컬러 지형지도에서 등고선을 추출하려고합니다. 목표는 제로에서 개발 한 엔진을 사용하여 영역의 3D 데모를 만드는 것입니다. 지금까지는 모든 것이 훌륭했습니다 (3D 엔진을 제로에서 만들고 객체를 표시하는 등).하지만 지금은 막혔습니다 ...지형도 작성 점 윤곽선 추출

그런 일을하기위한 알고리즘을 설명하는 많은 문서를 보았습니다. 나는 이해하기 힘든 짧은 언어와 이미지 처리에 대한 매우 강력한 지식을 가지고 있습니다.

당신이 좋은 방법을 배울 수있는 훌륭한 자료를 알려주거나, 완전한 알고리즘으로 결합 할 수있는 일련의 자료를 알려 주시면 매우 기쁩니다. ther 문제에 대한 장이 포함 된 책을 알고 있거나 내 시스템에있는 일부 요소를 결합 할 수있는 설명이 있다면 큰 도움이 될 것입니다.

비슷한 일을 한 사람을 아는 경우 - 그를 아는 것도 도움이됩니다.

미리 감사드립니다.

답변

1

래스터에서 윤곽 생성 API를 제공하는 GDAL 라이브러리를 사용할 수 있습니다. GDALContourGenerate 함수를 참조하십시오. 알고리즘 세부 정보를 배우고 싶다면 GDAL의 소스 코드를 살펴보십시오.

또한 명령 행 유틸리티를 사용하여이 GDAL 능력을 실험 할 수 있습니다

+0

이것은 흥미로운 대답입니다. GDAL을 다운로드하고 윤곽 추출을 테스트했습니다. 그것은 .shp 파일의 출력을 주었다. 셰이프 뷰어로 보았는데 테스트 중에 오류가 있었지만 유망 해 보였습니다. –

0

우리는 USGS DEM (Digital Elevation Model) 파일에서 모든 3D 지형 모델링을 수행합니다.

편집 : 스캔 한 이미지를 회색 음영으로 변환하고 등고선이 있고 그 밖의 부분이 없을 때까지 (이미지 편집 소프트웨어 또는 프로그래밍 방식으로) 대비를 높입니다. 이 시점에서 당신의 라인은 검은 색이어야합니다. 픽셀을 스캔하여 다른 검은 색 픽셀과 경계를 이루는 모든 검은 색 픽셀을 기록하십시오. 적어도 두 개의 다른 경계 픽셀과 일치해야한다고 말하십시오. 당신은 또한 각 저장 한 지역에 일종의 볼륨 공식을 적용 할 수 있습니다. 말하자면, 연속 픽셀이 50 개 미만이면 아무것도 출력되지 않습니다.

+0

gdal_contour 당신에게 우우 감사드립니다. 그러나 이것은 내 질문이 아니었다. jpg 또는 bmp와 같은 일반 이미지 형식을 사용하여 스캔 한 2 차원 맵에서 등고선을 추출해야합니다. –

+0

그것에 대해가는 다른 방법이었습니다. 스캔 한 이미지 대신 DEM에서 등고선을 다시 만들 것을 제안했습니다. 그러나, 당신이 정말로 이미지로 가고 싶다면, 나는 내 대답을 받아 들일 것입니다. –

+0

다시 부탁합니다. Photoshop에서 설명한 알고리즘을 Wiki의 이미지에서 확인했습니다. 배경에서 등고선을 가리는 데 도움이됩니다. 필자는 일부 문서에서 설명한 일부 필터와 일부 알고리즘을 조합하여 좋은 결과를 얻을 수 있다고 생각합니다. –