Czy tworzysz ścieżki w granicach za pomocą ArcGIS Desktop?

11

Chcę stworzyć ścieżki ruchu ryb na podstawie obserwowanych lokalizacji.

Ponieważ patrzę na ruchy ryb w rzekach i jeziorach, zwykłe połączenie punktów w celu utworzenia polilinii nie zadziała, ponieważ wiele ścieżek będzie na lądzie. Potrzebuję sposobu na ograniczenie ścieżek ruchu do granic wody.

Nie jestem programistą i polegam na narzędziach w przyborniku Arc do wykonywania operacji. Przydałaby się również nowa kolumna w FAT z odległością między kolejnymi punktami.

Korzystam z ArcMap 10.

Czy ktoś ma sugestie, jak wygenerować ścieżki ruchu?


Nieco więcej informacji na temat danych; większość lokalizacji jest pobierana ze zdalnych odbiorników, które mają tendencję do generowania wielu obserwacji (jeden z moich projektów ma ponad 3 miliony wykrywalności i rośnie, każdy rekord wykrycia zawiera identyfikator, datę, godzinę i długość). Jeśli ryba pozostaje w zasięgu wykrywania odbiornika, jest wykrywana mniej więcej raz na dwie minuty, co skutkuje dużą liczbą obserwacji (punktów), więc moim pierwszym krokiem jest uśrednienie długości i długości okresu w tym przypadku 1 dzień . Uśrednianie detekcji w siedliskach jeziornych zwykle działa dobrze, ale w przypadku części rzeki może to prowadzić do detekcji poza granicami rzeki / jeziora. Pierwszą rzeczą, którą muszę zrobić, to „zatrzasnąć” uśrednione lokalizacje do granicy rzeki / jeziora, a następnie chciałbym stworzyć ścieżkę ruchu ograniczoną do granicy rzeki / jeziora, najlepiej, gdyby ta ścieżka zawierała odległość dla każdego odcinka linii. Moje rzeki to polilinie, a jeziora to wielokąty, ale w razie potrzeby mogę przekształcić rzeki w wielokąty. Alternatywnie, mógłbym użyć nieprzetworzonych nieprzetworzonych danych, a wszystkie moje wykrycia byłyby na granicy, chociaż tworzenie ścieżek ruchu ograniczonych do tej granicy jest nadal problematyczne, ale spowodowałoby to wiele danych.

Załączony obraz pokazuje średnie dzienne pozycje dla dwóch różnych ryb.

wprowadź opis zdjęcia tutaj

użytkownik10320
źródło
Jak gęste są twoje punkty obserwacyjne? Zakładam, że masz przynajmniej wielokąty rzeczne i punkty obserwacyjne. Prymitywne podejście, moim zdaniem, polega na przycięciu warstwy punktów obserwacyjnych za pomocą wielokątów rzecznych. W ten sposób pozostaniesz z punktami obserwacyjnymi na rzece. Nie wiem jednak wystarczająco o twoich potrzebach. Czy możesz sobie pozwolić na utratę kilku punktów, o ile można wytyczyć ścieżkę?
RK
Czy możesz podać więcej szczegółów? Na przykład jakie dane masz teraz? Jak uzyskać „obserwowane lokalizacje”?
RK
Rzeka ma wiele zakrętów i zakrętów, więc nawet jeśli ograniczymy lokalizacje do tych w obrębie rzeki, wiele wygenerowanych linii nadal przecinałoby granice rzeki, prawda?
user10320,
Czy możesz podać przykładowe dane? Lub przynajmniej zrzut ekranu danych.
RK
dodano dodatkowe informacje do oryginalnego postu
użytkownik10320

Odpowiedzi:

3

Moim zdaniem lepiej byłoby przeprowadzić analizę przy użyciu rastrów (a dokładniej powierzchni kosztów). Metodą szkicu konspektu może być:

  • Najpierw połącz (Narzędzia zarządzania danymi> Ogólne> Scal) swoje ograniczenia („ląd”) i wielokąty rzek / jezior, upewniając się, że dodasz pole, które rozróżnia dwie warstwy (tj. „Typ” = ląd lub zbiornik wodny).
  • Przekształć scalony wielokąt w raster za pomocą narzędzia Wielokąt do rastra (Narzędzia konwersji> Do rastra> Wielokąt do rastra). Wybierz odpowiedni rozmiar komórki, który najlepiej reprezentuje twoje dane (pamiętając, że wyższa rozdzielczość spowoduje większy plik i niezmiennie wpłynie na czas przetwarzania) i ograniczy zakres przetwarzania za pomocą Geoprocessing> Środowiska> Zakres przetwarzania.
  • Zmień klasyfikację rastra na Boolean, aby ograniczyć analizę tylko do obszarów wodnych, tj. 0 = ląd, 1 = zbiornik wodny
  • Konwertuj lokalizacje ryb na raster, upewniając się, że utrzymujesz tę samą rozdzielczość i zasięg komórki oraz że lokalizacje są możliwe do zidentyfikowania za pomocą przeklasyfikowania, jeśli to konieczne (tj. Użyj 2s i 1s)
  • Użyłbym wtedy powierzchni kosztowej (po prostu raster o tej samej rozdzielczości i zasięgu, który reprezentuje „koszt” podróży przez komórkę). Raster może po prostu składać się z jednolitej wartości (w takim przypadku najkrótsza trasa zostanie wybrana jako optymalna) lub, jeszcze lepiej, być może prędkości przepływu lub mętności, które lepiej odzwierciedlają środowisko, przez które przemieszczają się ryby (w którym to przypadku najmniej ścieżka skumulowana kosztów byłaby optymalna). Zobacz Odległość kosztów - Analityk przestrzenny> Odległość> Odległość kosztów).
  • Na koniec użyj ścieżki kosztów (Ścieżka kosztów - Analityk przestrzenny> Odległość> Ścieżka kosztów), aby zidentyfikować ścieżkę o najniższym koszcie ze źródła do miejsca docelowego (obserwowanej lokalizacji).
veedub
źródło
Brzmi obiecująco, ale nie mam dużego doświadczenia z danymi rastrowymi. Mój obszar badań wynosi około 600 km ^ 2, gdybym użył 100 m komórek, to dałoby 6 milionów komórek. Jeśli średnio moja lokalizacja wykrywa w ciągu dnia, mam około 42 000 rekordów lokalizacji dla moich 60 badanych zwierząt. Czy nadal wydaje się to dobrym podejściem, czy byłoby to zbyt intensywne przetwarzanie danych?
user10320,
1
Twierdziłbym, że podejście rastrowe było bardziej odpowiednie dla procedur intensywnie wykorzystujących dane niż alternatywy wektorowe. Dobrą praktyką może być podzielenie metody na gatunek (tj. 60 oddzielnych map kosztów). Ułatwi to zarządzanie zestawami danych, ale oczywistym kompromisem jest dodatkowy czas potrzebny na powtórzenie eksperymentów. Przerażające pytanie może być; czy 100 m komórek to dobry odpowiednik używanych danych? Rozumiem przez to, biorąc pod uwagę skumulowane pomiary i błędy przestrzenne właściwe dla twoich zbiorów danych, czy ten rozmiar komórki najlepiej pasuje? Zmniejszenie rozmiaru komórki skróci czas przetwarzania.
veedub
2

Jeśli rzeki są liniami:

Dobrym podejściem do rozwiązywania takich problemów jest odniesienie liniowe. Jest dość złożony, ale oferuje wiele możliwości. W Pomocy ArcGIS znajduje się wiele informacji o referencjach liniowych . Zablokuj w scenariuszach odniesienia liniowego i przykładowych aplikacjach odniesienia liniowego, aby zobaczyć, jakie możliwości daje Ci odniesienie liniowe.

Niektóre z narzędzi, których musisz użyć to:

Utwórz trasy

Znajdź funkcje wzdłuż tras

Utwórz warstwę zdarzenia trasy

Jak powiedziałem, jest to złożone podejście i potrzeba czasu, aby zrozumieć podejście do referencji liniowych (i użyć go w ArcGIS), ale referencje liniowe dają wiele możliwości.

Jens
źródło
1
Odniesienia liniowe mogą być rozwiązaniem, jeśli należy zastosować tylko najwyższą i najniższą pozycję ryby. Myślę, że ryba nie pływa tylko w jednym kierunku? Fisch pływać w górę, a potem w dół, a potem w górę i tak dalej? W takim przypadku odniesienie liniowe nie będzie dobrym rozwiązaniem.
Jens
1

Jeśli przekształcisz rzeki z wielokąta w linie, możesz użyć Network Anlayst do analizy ścieżek ryb.

Możesz wykonać analizę trasy . Pozycje ryb to przystanki . Dla przystanków dostępna jest opcja USE_INPUT_ORDER, dzięki czemu przystanki będą odwiedzane w kolejności wprowadzania.

Network Analyst potrzebuje sieci liniowej. Nie mam pojęcia, jak obchodzić się z wielokątami jezior. Być może tworzysz zestaw danych linii (siatkę linii) w jeziorach?

Jens
źródło
0

Aby obliczyć średnią pozycję w danym okresie, możesz wypróbować Central Feature Tool . Pozycja wynikowa będzie w rzece.

Jens
źródło
0

Możesz spróbować połączyć wszystkie punkty, a następnie podzielić polilinie na wierzchołkach i usunąć fragmenty ziemi przecięte przez wielokąt lądu (co możesz zrobić, usuwając rzekę z wielokąta obszaru badań), a następnie scalić pozostałe segmenty.

nadya
źródło