Jak znaleźć korty tenisowe na zdjęciach lotniczych

26

Chciałbym znaleźć wszystkie korty tenisowe (i inne podobne dobrze zdefiniowane funkcje, takie jak boiska do koszykówki) w moim hrabstwie, i mam zdjęcia lotnicze o dobrej (ale różnej) rozdzielczości, ale nie jestem pewien, jak najlepiej je znaleźć . Oto dwa przykłady zdjęć:

Korty tenisowe i boisko do koszykówki od VBMP 2009 Korty tenisowe od Bing

Przyjrzałem się różnym metodom i myślę, że dopasowywanie szablonów nie zadziałałoby, ponieważ byłoby bardzo wolne, ponieważ może istnieć dowolna skala i rotacja , a także kolor może się różnić. Hough przekształcać brzmi obiecująco, ale raz ja dostać wszystkie linie nie jestem pewien, jak znaleźć wiersze, które tworzą prostokąt o odpowiednim stosunku (około 36x29 stóp), albo jeszcze lepiej do konta dla innych zaznaczonych linii.

W tle zamierzam dodać wszystkie korty tenisowe w moim hrabstwie do OpenStreetMap.

joshdoe
źródło
Linie są zawsze w tym samym wzorze, prawda?
endolith,
Tak, powinny być, przynajmniej dla sądów o rozmiarach regulacyjnych, które moim zdaniem są najbardziej. Już zmapowałem prawdopodobnie sto, więc mógłbym wyodrębnić obrazy i je przeanalizować.
joshdoe
Czy możesz dodać więcej zdjęć?
Andrey Rubshtein
Jeśli są dostępne dane z obrazowania hiperspektralnego lub multispektralnego, mogą tu naprawdę pomóc. Zielona farba zwykle absorbuje w pobliżu światła podczerwonego, podczas gdy zielone rośliny często odbijają to samo światło.
Phil

Odpowiedzi:

15

Masz bardzo mocne wskazówki dotyczące koloru i geometrii, które możesz wykorzystać. Spróbowałbym następujących rzeczy:

  1. Wyciąg z zielonej kanału i zastosowanie wododziałowych algorytmu typu na niej, a następnie połączonych składników . Następnie oblicz statystyki komponentu (pole i obwiednia) dla każdego komponentu. Zachowaj tylko komponenty o polu ~ = rozmiar ramki ograniczającej. Dotyczy to tylko obiektów prostokątnych i wyeliminuje lasy / obszary zalesione itp.
  2. Izoluj biały kanał (R = G = B) i zastosuj transformację Hougha na wyjściu. To da ci linie. Połącz 1 i 2, aby uzyskać korty tenisowe.
nav
źródło
7

Najpierw rozważyłem tylko zielony kanał lub w mądrzejszy sposób wykorzystałem szczególne właściwości kolorystyczne kortu tenisowego.

Gdy już to zrobisz, możesz zastosować detektor krawędzi, używając wysokiego progu, ponieważ kontrast między linią a boiskiem jest dość wysoki.

Aby dodatkowo usunąć wartości odstające, możesz zastosować transformację Hougha na koniec procesu.

Daj nam znać, jeśli uzyskasz dobre wyniki!

Stocastico
źródło
3

Aha tam jest post na blogu na ten temat!

W swoim poście przekształcają obraz kortu tenisowego w szarą skalę. Gdzie znajdują pierwszą i drugą pochodną każdej linii poziomej i pionowej. Korzystając z tych informacji, są w stanie określić, gdzie na zdjęciu znajdują się jasne linie (możliwe granice sądów). Stamtąd zmniejszają obraz do czarno-białej prezentacji tylko jasnych linii.

Wtedy zaczynają szukać obrazu kortów tenisowych. Używają czegoś, co nazywają „kształtem modelu”. Kształt modelu jest w zasadzie opisem obiektu, którego szukasz „np. 11 linii na kort tenisowy”. Autor znajduje wszystkie równoległe segmenty linii i porównuje równoległe segmenty linii z kształtem modelu. Jeśli dopasowanie segmentów linii do kształtu modelu jest wystarczająco wysokie, to znajdziesz kort tenisowy.

Logan Bailey
źródło
1
Linki nie są odpowiedziami . Podsumuj treść linku
endolith