봇용 Starcraft 2 맵 내 미네랄/가스 영역을 확인하려고합니다. 아래 이미지는 1이 미네랄 또는 가스 패치를 나타내는 2 차원 배열의 플롯을 보여줍니다.2 차원 배열의 파이썬 클러스터 또는 그룹 바이너리 데이터
눈을 가려면 확인하고 싶은 클러스터가 4 개 있다는 것을 알 수 있습니다. 내가 사용 시도
:
from scipy.ndimage import measurements
lw, num = measurements.label(map)
(지도) 광물/가스 패치가 사람과 64,64 배열입니다.
4 클러스터 내에 공백이 있으므로 21 개의 클러스터를 찾습니다.
또한 배열을 가져올 때 찾고있는 클러스터의 수를 알 수 없습니다. Connected-component labeling을보고 있었지만, 3 또는 4 위치 요소가 1이라고 말하면 볼 수있는 방법을 볼 수 없었습니다. 연결 요소로 간주 될 수 있습니다. 나는 단지 4 또는 8 연결 방법을 보았다.
어떻게하면이 문제를 해결할 수 있을까요?
위대한 작품. 감사. 나는 원래 게시물에 내 작업의 두 번째 부분을 놓는 것을 잊었다. 다른 게시물을 만들지 말지는 모르겠지만 요청을 시도 할 것이라고 생각했습니다. 또한 각 클러스터에서 최적의 거리에 대상을 배치 할 위치를 찾아야합니다. 예를 들어 클러스터의 각 요소에서 최소 4 단위 (유클리드 거리) 인 각 클러스터에 가장 가까운 지점을 어떻게 찾을 수 있습니까? 즉, 지점은 클러스터의 어떤 부분과 거리의 4 단위 이내 일 수 없습니다. –
@CraigHamilton 나는 새로운 질문을하기에 충분하다고 생각한다. –