LINUX.ORG.RU

Простая геометрия. Объекты на прямой.

 


1

3

Вот я решаю задачу про определение, какие из элементов находятся на прямой.

Конечно же всё не очень просто. Все элементы с какими-то отклонениями по координатам. Но нужно найти те, которые находятся именно наиболее на одной прямой.

Нет. Не каждые два элемента конечно, а так чтобы была выявлена «прямая» относительно большинства находящихся на этой «прямой» элементов.

Добавлю, что большинство элементов (например 6 из 10) находятся вполне точно относительно прямой, а остальные могут ощутимо отклоняться.

Есть ли быстрые и точные алгоритмы решающие подобные задачи?



Последнее исправление: HIS (всего исправлений: 3)

Ответ на: комментарий от HIS

А у тебя есть что показать?

Опять ты клянчишь? Вообще чтоле уважухи к себе нету?

anonymous
()
Ответ на: комментарий от LINUX-ORG-RU

Да вот - пожалуйста: https://drive.google.com/open?id=1T5UGrTO7OEnHA4sPwZVRpdDaNKZk3CmJ

Мой друг любезно предоставил трейлер на игру.

Да! Там скримеры в виде чёрных экранов. Не нужно нервничать - это даётся время на подумать о смысле жизни/игры.

Наслаждайся.

HIS
() автор топика

Это не геометрия. Геометрия - это чисто теоретическая декларативная херня. В твоём случае на прямой будет две любых точки. Остальные будут образовывать угол. Вот его и высчитывай, делается это в несколько операций.

crutch_master ★★★★★
()
Ответ на: комментарий от HIS

Всё что связано со звуком конечно палево. Но подобрано зачётно, ну у меня в 3d. Схожесть только в том что и там и там шарик. =) Хотя я всё больше и больше теряю к нему интерес. =)

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от HIS

Но я просто тонкая натура, щя нос приуныл такой, а завтра в жопе реактивный ранец на первую космическую меня отправит :D

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от HIS

Нет конечно

Берешь любые две точки (a,b), а для остальных (c) считаешь угол (abc). Потом по этим углам прикидываешь, какую прямую выбрать, чтобы большинство оставшихся точек образовывали минимальный угол.

crutch_master ★★★★★
()
Ответ на: комментарий от HIS

Я чуть позже приведу тебе теорию что это избыточно.

Для 10 точек никто не расстроиться, если это будет посчитано за 1к операций вместо 400.

crutch_master ★★★★★
()
Ответ на: комментарий от crutch_master

Берешь любые две точки (a,b), а для остальных (c) считаешь угол (abc)

Конечно для трёх точек ты получишь какой нибудь угол.

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

Нет. Не правильно.

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

HIS
() автор топика
Ответ на: комментарий от crutch_master

Да что же вы все с этой регрессией. Может и на автомобиле едете по дороге с одной крутой извилиной по этой регрессии? ;)

HIS
() автор топика
Последнее исправление: HIS (всего исправлений: 1)
Ответ на: комментарий от crutch_master

Вот посмотри на свою аватарку

там три направления, которые очевидны для всех.

Остальные под вопросом.

Вот именно вопрос про то, как найти эти три направления.

HIS
() автор топика
Последнее исправление: HIS (всего исправлений: 1)
Ответ на: комментарий от quickquest

А если взять более сложную задачу… Если известно, что полученные точки группируются в НЕСКОЛЬКО отрезков, и надо выделить все эти отрезки?

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

Если известно, что полученные точки группируются в НЕСКОЛЬКО отрезков, и надо выделить все эти отрезки?

Это задача кластерного анализа ©, обзорчик ©.

quickquest ★★★★★
()
Ответ на: комментарий от hobbit

Как их группировать? Есть алгоритм?

HIS
() автор топика
Ответ на: комментарий от quickquest

Ээээ…

Дык там таки опять факториал получается.

HIS
() автор топика
Ответ на: комментарий от HIS

Дык там таки опять факториал получается.

Дык, общая задача кластеризации является NP-полной ©.

Но хочется на порядки быстрее.

Для ускорения применяют параметрические апроксимации моделей, эвристические улучшайзеры, вариации метода Монте-Карло, и прочие мат. хитрости.

quickquest ★★★★★
()
Ответ на: комментарий от quickquest

эвристические улучшайзеры

Да!

На самом деле ты всегда по делу. мне нравится.

Хочу с тобой дружить.

HIS
() автор топика
Ответ на: комментарий от quickquest

Дык, общая задача кластеризации является NP-полной

Ну даже в двухмерном пространстве уже.

Нужно перебрать все по удалённости всех расположений по двум координатам.

HIS
() автор топика
Ответ на: комментарий от quickquest

факториал вполне себе не самая большая штука что разрастается.

Но если его применять много где и часто - это не фонтан.

HIS
() автор топика
Ответ на: комментарий от HIS

Нужно перебрать все

Метод Монте-Карло позволяет перебирать не всё, но с вероятной потерей глобального экстремума. Если локальный экстремум допустим по точности, то сокращение времени бывает весьма существенным.

quickquest ★★★★★
()
Ответ на: комментарий от quickquest

наверное ты прав.

Но всё же. как на счёт вопроса в топике. Нужно найти элементы, которые наиболее на прямой.

HIS
() автор топика
Ответ на: комментарий от quickquest

Странно что тут мега знающий про всё во вселенной не встрял.

Извини что через тебя.

HIS
() автор топика
Ответ на: комментарий от no-such-file

Привет! Ты пришёл из моих кошмарных снов…

Какие нафиК нейросетки если просто есть уже координаты?

HIS
() автор топика
Ответ на: комментарий от HIS

Какие нафиК нейросетки если просто есть уже координаты?

Так это было к вопросу «выделить несколько прямых из горы точек».

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

И каким боком тут нейросеть?

Мне интересно. Да.

HIS
() автор топика
Ответ на: комментарий от hobbit

Вот реально это всё можно найти в поисковиках.

За что ты говоришь спасибо? За то что за тебя нашли?

Это твоё право.

Я спрашиваю то, что не так просто. Это не тривиальные решения.

Да, я нашёл (сам лично разработал) некие решения (может они и лучшие). Но я просто спрашиваю, есть ли уже утверждённые человечеством наилучшие решения про которые я не знаю.

HIS
() автор топика
Последнее исправление: HIS (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.