Comments 23
Измерив в пикселях высоту человека и длину его тени (например, используя GIMP или Photoshop), получаем отношение примерно 160:75.
Высота тени в пикселях зависит не только от такого очевидного факта, как её непараллельность экрану, так и от менее очевидного факта возможной негоризонтальности и неровности поверхности, на которую она падает.
То есть, тут тупо отсутствие понимание того, что такое геометрия/аксонометрия и как она работает.
Зная дату (11 июня 1963 года) и предполагаемое время (6:30 UTC, что соответствует 14:30 по местному времени), мы можем запустить наш скрипт:
Датировка фотографий это вообще отдельная тема и тут можно попытаться решить обратную задачу: зная место, попытаться определить время съёмки по падающим теням.
Ну и, конечно же, нет вообще никакой гарантии того, что современный перевод времени будет работать для дат съёмки, потому что хз что там было с часовыми поясами и летним/зимним временем.
И главная проблема из всего этого, то что могут найтись люди, которые будут считать это решение прям чем-то реальным и будут использовать на практике: автоматически массово атрибутировать фотографии, навешивать ярлыки "подделка"/"фейкньюс", подтверждать алиби или утверждать "исторические факты".
А я потом сиди и выясняй, почему в интернете какая-то фотография висит с какой-то датой и координатами.
посмотрите заголовок «Ограничения метода». Метод требует вдумчивого использования, и его следует использовать не отдельно, а в сочетании с другими методами.
Главное ограничение состоит в том, что не существует возможности определить длину тени, иначе как по лежащему рядом образцу известной длины.
Просто исходный данных нет и всё. Работать не с чем.
А то что нет никакой возможности установит точное время съёмок и проверить насколько ровная и горизонтальная поверхность, это уже мелочи. :)
Это, конечно, приближение, могут быть ошибки, которые приведут к смещению модели. Однако в сочетании с другими объектами на изображении этот метод может помочь определить примерное местоположение фотографии.
примерное
Есть оценка погрешности?
Нет, но это отличная идея для будущей работы. я экспериментировал с различными углами камеры и объектами, и область, которую я искал, всегда появлялась в пределах границ, но я могу представить, что метод также может дать сбой.
+/- два локтя по пятивёрстке.
Измерив в пикселях высоту человека и длину его тени (например, используя GIMP или Photoshop), получаем отношение примерно 160:75.
Это работает только если и человек и его тень находятся в плоскости, перпендикулярной оси взгляда. Если тень расположена под углом, то нужно учитывать перспективу, что совсем не просто. Нужен алгоритм, определяющий длину теней (или хотя бы строящий концентрические круги на поверхности земли)
Зная дату (11 июня 1963 года) и предполагаемое время (6:30 UTC, что соответствует 14:30 по местному времени), мы можем запустить наш скрипт:
Ага-ага... Ещё бы понять, откуда взять это предполагаемое время. Для 99% фотографий, думаю, оно не известно. А если известно время, то и координаты, скорее всего, тоже.
Как видно из визуализации, возможные места образуют дугу, проходящую через Юго-Восточную Азию.
Ага. А ещё через Китай, Монголию, Казахстан, Иран и Персидский залив. А с учётом погрешности определения длины тени, эта окружность превращается в круг с половину Азии.
Добавьте сюда ещё неизвестную высоту расположения объектива, относительно точки схождения фигуры и отбрасываемой тени. :)
Я добавил больше примеров в скобках на случай, если у кого-то возникнут такие же вопросы.
Я думаю по сравнению с точностью определения времени плюс-минус часы, это уже мелочь. Примерно понятно, на какой высоте объектив, по картинке, в среднем он где-то на уровне роста человека/уровне глаз.
И да, я бы еще поправку на фокусное расстояние сделал - потому что далеко не факт, что снято не на широкоугольник, например.
Примерно понятно, на какой высоте объектив, по картинке, в среднем он где-то на уровне роста человека/уровне глаз.
От 1.5 до 2.0 метров. Разница размера отпечатка тени 25% если тянь направлена прямо на оператора, 15% если тень под углом 45 градусов, 0% если параллельно объективу.
не на широкоугольник, например
На да что угодно может быть снято, "рыбий глаз" это в целом врождённый дефект оптических фотоаппаратов.
Слава богу, больше нам об этом беспокоиться не надо, потому что придётся беспокоиться о том что:
- искажение было выравнено по неведомым алгоритмам
- фото было "улучшено" (какая-нибудь нейросеть решила, что лужа на которую падает тень является частью тени и сделала так, чтобы оно всё выглядело одинаково, или стёрла часть тени - https://habr.com/ru/articles/490620/ )
- файл был непропорционально отресайзен по ошибке или в желании впихнуть фото в какие-то конкретные размеры
посмотрите заголовок «Ограничения метода». Метод требует вдумчивого использования, и его следует использовать не отдельно, а в сочетании с другими методами
Поищите по имени Тхить Куанг Дык.
Это просто какой-то эталонный "программизм головного мозга". Особенно вот этот чудесный алгоритм:
Для каждой точки на карте мира:
Вычисляем, под каким углом там было солнце в этот момент
Рассчитываем, какой длины должна была быть тень
Сравниваем с реальной тенью на фотографии
Вместо того, чтобы чуть-чуть подумать и решить прямую задачу (вычислить возвышение солнца, а по нему посчитать координаты), автор решает тысячи обратных задач, только потому, что ему попалось готовое решение, причём не разобравшись в исходной проблеме и не понимая её сути. Аплодирую стоя...
Цель этой статьи никогда не заключалась в поиске самого оптимального способа решения этой проблемы. Вы можете "немного подумать" и написать свою собственную статью на эту тему.
Я также предлагаю вам прочитать это https://wiki.c2.com/?PrematureOptimization, потому что в данном случае пространство поиска довольно мало, и для демонстрационных целей оптимизации не требовались.
"NGUYEN-KHUYEN" явно написал русский, которого достали все эти тамошние Нгуены... Автору стоило бы более другой пример подобрать, а то по таким надписям геолокация осуществляется куда точнее (где-то во Вьетнаме), чем, в итоге, вышло по теням (округлая зона на пол-континента).
ЯННП, но тем не менее, он существует ;-) https://vi.wikipedia.org/wiki/Nguyễn_Khuyến
Речь, разумеется, о редупликации.
История у этой фотографии совершенно жуткая. Машина, кстати, сохранилась. Сейчас стоит в пагоде Тхьенму.
Геолокация по теням: как определить место съёмки исторической фотографии