Obliczanie odległości od punktów do innej klasy w rastrze za pomocą ArcGIS Spatial Analyst?


10

Szukam porady, jak obliczyć odległość od punktu do innej klasy rastra.

W szczególności mam obserwacje (punkty) wykorzystania zwierząt nałożone na dane dotyczące pokrycia terenu.

Dla każdego punktu chcę obliczyć odległość do najbliższej komórki innego rodzaju okładki.

Na przykład, jeśli punkt znajduje się na obszarze trawiastym, jaka jest odległość do najbliższej komórki, która nie jest trawą.

Korzystam z ArcGIS 10 i posiadam licencję Spatial Analyst.

Myślę, że najlepszym rozwiązaniem może być kalkulator rastrowy, ale czy ktoś mógłby podać równanie, które by to osiągnęło?

Odpowiedzi:


10

Nie sądzę, aby było na to jedno polecenie, ale nadal możemy to zrobić celowo. Chodzi o to, że odległość do najbliższej innej komórki jest równa odległości do najbliższej lokalizacji, której bezpośrednie sąsiedztwo zawiera więcej niż jeden typ komórki.

Cóż, nie jest to do końca prawdą, ale jest blisko: możesz chcieć dodać w przybliżeniu jedną szerokość komórki do takiej odległości. Jeśli możesz żyć z takim przybliżeniem, oto przepływ pracy:

  1. Oblicz siatkę ogniskowych odmian, używając możliwie najmniejszej dzielnicy, która byłaby dzielnicą kwadratową 2 na 2.

  2. Zniszcz wszystkie lokalizacje za pomocą odmiany ogniskowej 1 lub mniejszej: są to komórki „wewnętrzne”.

  3. Oblicz euklidesową siatkę odległości do wszystkich pozostałych komórek: są to odległości do lokalizacji wzdłuż granic.

  4. (Opcjonalnie) Dodaj rozmiar komórki do siatki odległości.

  5. Wyodrębnij wartości w dowolnych wybranych punktach.

Aby to zilustrować, oto mały kawałek siatki pokolorowanej według typu komórki. Czarne obszary to komórki z ogniskowymi odmianami 2 lub większymi (obliczonymi w kroku 2):

Klasy komórek

Wyrównana do góry euklidesowa siatka odległości wygląda następująco:

Siatka odległości

Osiąga szczyty (wartości maksymalne) w środkach każdej łatki oryginalnego rastra i zanika do zera wzdłuż granic łaty, wciąż pokazanych na czarno.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.