Hacker News Digest

19 августа 2026 г. в 12:19 • yassa9.github.io • ⭐ 308 • 💬 55

OriginalHN

#azimuth#clustering#cuda#geolocation#geometry#land-polygons-split-4326

Geolocating a random island using geometry and CUDA programming

Главная идея – выявление острова по геометрии трёх земельных объектов на снимке. Сначала определяют координаты трёх точек (остров, правый и левый островки) через GUI‑кликер, затем сравнивают их форму с реальными полигонами земельного покрытия, отфильтровав всё, что не подходит по широте, плотности и кластеру.

Ключевые факты

  • В снимке видны три земные массы: P0 – сам остров, P1 – правый островок, P2 – левый передний с горой.
  • При поиске использованы глобальные полигоны land‑polygons‑split‑4326 (≈ 882 МБ), отфильтрованы по тропикам (‑30° ≤ широта ≤ 30°), затем отсеяны участки с более чем 10 соседями в 5 км и оставлены только кластеры из минимум трёх точек на расстоянии ≤ 20 км.
  • Последний оставшийся полигон совпадает с островом Oan (остров в Палау), координаты ≈ 7° 21′ 48.4″ N, 151° 45′ 20.7″ E (7.363444, 151.755750).
  • На снимке камера смотрит на север‑запад (θ ≈ 325°), что подтверждается вычислением азимута между P0 и P1.

Запомните: тропический диапазон, ограничение по количеству близких соседей и поиск кластеров из трёх близких точек – это то, что превращает геометрию фото в реальное место.