Меню Закрыть

GEOINT + Rust — как нашли местоположение по фото

По одной фотографии и с использованием GEOINT и Rust, исследователь смог найти местоположение съемки в Лиссабоне, обращая внимание на детали, такие как книги, номера домов и брусчатка.

При первом просмотре фото, можно точно сказать о двух вещах: книги на витрине, написаны на португальском(европейской версии), номер дома — 23.

Давайте попробуем закинуть фотографию в geoestimation:


Он настойчиво утверждает, что местоположение фотографии — Лиссабон, Португалия.

После тщательного анализа города на Google Картах, обнаружено множество сходных деталей, таких как фасады зданий, оконные рамы, двери, включая решетку, которая отражается в окне нашей фотографии:

38.7294524,-9.136128

Также на нашей фотке можно заметить брусчатку:

калсада португеза

Эта характерная брусчатка является распространенной в большинстве португальских городов, и почти невозможно найти место, где ее не применяют.

Для поиска такого места было предпринято множество попыток: запросы в системе оверпасс, сканирование веб-сайтов книжных магазинов, поиск конкретных букинистов в Португалии, но ни один из этих методов не дал результатов. В конечном итоге, пришлось разработать собственную программу для создания и перебора адресов, чтобы продолжать поиск.

Принцип работы программы в первом режиме:

У нас есть список всех улиц Лиссабона его можно получить запросом в overpassturbo:

[out:csv(name, «::», «utf-8»)];

area[«name»=»Lisboa»]->.a;

(

 way(area.a)[«highway»=»residential»];

 way(area.a)[«highway»=»unclassified»];

 way(area.a)[«highway»=»tertiary»];

 way(area.a)[«highway»=»secondary»];

 way(area.a)[«highway»=»primary»];

 way(area.a)[«highway»=»trunk»];

 way(area.a)[«highway»=»motorway»];

);

out body;

>;

Да, их будет много и они будут повторяться, но в программе мы эту проблему решим и получим 1459 уникальных улиц.

1459 записей

Из этих улиц мы формируем ссылки/запросы в гугл карты и сохраняем их в отдельном файле:

Далее программа пробегается по ссылкам из файла и переходит по ним, парсит картинку(миниатюру):

миниатюра/превью

Сохраняет ее в отдельный каталог(каждая картинка соответствует названию улицы), где мы можем с легкостью их все просмотреть. Выглядит это примерно так:

Мне повезло, потому что нужная картинка была 356 по счету.

Есть еще один вариант работы программы, просто открывать группу из ссылок в браузере и так просматривать, пока не найдешь нужный адрес.

Ответ: 38.718730439704196, -9.161038642596276

error: Увы, не сегодня.