Рубрика «триангуляция»

Telegram позволяет узнавать координаты людей с точностью до метра - 1

Привет, %username%!
В телеге давно есть опциональная фича find people nearby, которая показывает точное расстояние до людей поблизости. Если использовать GPS спуфинг и трилатерацию (не путать с триангуляцией), то можно узнавать координатыЧитать полностью »

Доброго времени суток!

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

Снимаем «4D видео» с помощью depth-сенсора и триангуляции Делоне - 1

Привет! Это заметка о небольшом хобби-проекте, которым я занимался в свободное время. Я расскажу, как с помощью несложных алгоритмов превращать карты глубины от depth-сенсоров в забавный вид контента — динамические 3D сцены (их ещё называют 4D video, volumetric capture или free-viewpoint video). Моя любимая часть в этой работе — алгоритм триангуляции Делоне, который позволяет превращать разреженные облака точек в плотную полигональную сетку. Приглашаю всех, кому интересно почитать про алгоритмы, самописные велосипеды на C++11, и, конечно же, посмотреть на трёхмерных котиков.

Для затравки: вот что получается при использовании RealSense R200: skfb.ly/6snzt (подождите несколько секунд для загрузки текстур, а затем используйте мышку, чтобы поворачивать сцену). Под катом есть ещё!
Обладатели лимитированных тарифов, будьте осторожны. В статье много разных изображений и иллюстраций.
Читать полностью »

Гедоммист и ближайшие соседи - 1

Гедоммист (в Древнем Риме) — человек, получающий кайф от программирования.

Увлечению программированием сопутствуют опасности — антисанитария, забытые дети, служебные выговоры, сбежавшее молоко или летящий в висок женский сапог.

Помню об этом, одолевая манящие сложностью алгоритмы.

И хочу рассказать об одной бесполезной задаче, которую я решал неделю в полном экстазе. Задача родилась благодаря 3aicheg, чей комментарий дал мне идею для игры под iOS (вижу Ваши глаза, Шо опять?). Смысл в том, чтобы сделать match game на нерегулярной сетке с гравитацией.

Кстати, если вы думаете, что рассказывая здесь о своем бесплатном приложении, можно получить мировую славу и купить яхту, то вот таблица

Рейтинг статьи Просмотров статьи Просмотров видео Загрузок
+30 20 000 5 000 18
-2 2 500 2 000 14

И потому я восхищаюсь бескорыстными авторами Хабра (особенно теми, кто владеет русским слогом). Теперь к делу! А дело такое…
Читать полностью »

Переход от приближенного решения к точному: задача о разбиении квадрата на 50 подобных остроугольных треугольников

Перевод поста Эда Пегга младшего (Ed Pegg Jr) "From Close to Perfect—A Triangle Problem"
Выражаю благодарность за помощь в переводе Андрею Дудину.
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, можно здесь.

В языке Wolfram Language (доступном, скажем, в системе Mathematica) функция RootApproximant позволяет найти замкнутую форму в виде алгебраического числа для некоторого приближённого числа, и эта функция позволила нам превратить приближенное решение задачи о разбиении квадрата на 50 подобных остроугольных треугольников с углами (45°, 60°, 75°) в точное.

Ясно, что квадрат можно разбить на треугольники (триангулировать), например, просто соединив его противоположные вершины. Известно, так же, что квадрат можно разбить на семь подобных треугольников разной площади или на десять остроугольных равнобедренных треугольников (см. рис. ниже). Известны также классические задачи, связанные с разбиением квадрата на восемь остроугольных треугольников (см. рис. ниже), или на двадцать треугольников со сторонами, относящимися друг к другу как Perehod-ot-priblizhjonnogo-reshenija-k-tochnomu-zadacha-o-razbienii-kvadrata-na-50-podobnyh-ostrougolnyh-treugolnikov_1.png. На третьем чертеже (считая сверху) показано разбиение квадрата на подобные треугольники с углами (45°, 60°, 75°), но вы можете с легкостью заметить, что это решение не корректно, так как один из треугольников немного накладывается на другой.
Читать полностью »

В предыдущей статье мы рассказали о «Планоплане», нашем онлайн-планировщике и дизайнере квартир. С небольшим отрывом в опросе победила тема о школьной геометрии в «Планоплане» и Unity3D, о чём с удовольствием и рассказываем.

Если коротко просуммировать наш опыт, оказывается, что уместное использование достаточно простых алгоритмов улучшает продукт в разы. В статье мы решили обойтись без формул и кусков кода, потому что используются несложные алгоритмы. Если некоторые из них всё-таки нужны — пишите в комментариях.
Читать полностью »

В ранее опубликованном посте мы рассказывали об использовании библиотек с открытым кодом Freefem++ и NetGen в программе моделирования аэродинамических процессов. В данной статье более детально рассмотрим базовые возможности Freefem++ в качестве небольшого введения в его входной язык. Это даст начальные сведения, которые часто бывают необходимы разработчикам при выборе сторонних компонентов для включения в проектируемое приложение.
Читать полностью »

Введение

В предыдущем посте мы рассмотрели особенности использования сторонних библиотек с открытым кодом Freefem++ и NetGen в программе моделирования аэродинамических процессов. Речь шла о возможности включения этих библиотек в коммерческий проект с позиции лицензирования, об особенностях выполнения функций и включения в программную архитектуру. Данная статья является дополнением к предыдущей, в ней более детально рассмотрим библиотеку NetGen. Интерес представляют функции генерации 3D-сетки конечных элементов с заданными регионами на поверхности модели.
Читать полностью »

Первая игра, которую делают с помощью фотограмметрии

Фотограмметрия — технология дистанционного зондирования, позволяющая определять геометрические свойства объектов по нескольким фотографическим изображениям с разных ракурсов. Более продвинутая разновидность под названием стереофотограмметрия позволяет построить приближённую 3D-модель объекта.

Раньше фотограмметрия применялась, преимущественно, в геологии, топографии и археологических раскопках. В последнее время её начали применять в киноиндустрии, а сейчас с помощью этой технологии создаётся первая компьютерная игра.
Читать полностью »

Все доброго времени суток!
Хочу рассказать об одной интересной проблеме и ее решении, которое я применил в одном из своих проектов.
Суть проблемы такова:
Есть несколько детекторов сигнала (допустим, базовые станции GSM). И эти детекторы присылают на сервер уровень сигнала для некоего источника. Необходимо вычислить и отобразить на карте координаты источника
Если вам интересно, как это сделать, добро пожаловать под кат.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js