Поиск границы точек может быть полезен во многих областях информатики. В настоящее время у меня есть видимые вершины 3D-сетки, которые я проецировал 2D. Двумерные точки будут использоваться для получения границы и различных типов ребер.Граница двумерных точек
Пример изображения, полученного с помощью ссылки matlab on a function obtaining the boundary of points, показывает границы (оранжевые и красные) набора двумерных точек. Оранжевая граница использует коэффициент сжатия и похожа на границу, создаваемую convex hull function. В нашем случае нам нужна более естественная граница точек, таких как красная граничная линия (а не та, что достигается выпуклой функцией корпуса). Граничная функция по matlab не определена, поскольку я использую более старые версии 2014 года (я предполагаю, что это причина).
Есть ли другой способ/функция для достижения естественной граничной линии двумерных точек? Я проверил функцию выпуклого корпуса на изображении, и он пропускает множество граничных точек.
Что именно вы подразумеваете под более естественной границей? Функция Matlab использует коэффициент сжатия - вы просто хотите сделать это с другой степенью сжатия или у вас есть другой набор критериев? –
Чтобы добавить к этому: для меня неясно, для красной линии, почему некоторые пункты не включены, а другие. – Bernhard
Просто, чтобы уточнить, что я имел в виду под естественной границей в терминах формы объекта. Возьмем автомобиль, например. Предположим, что это первоначально представлено облаком точек в трехмерном пространстве. Я проецирую облако точек в 2D-пространство от направления точек камеры. Визуально внешние 2D-точки представляют собой границу или край автомобиля. Контур или край будут кривыми, иногда использование выпуклой оболочки может не представлять контурную линию автомобиля реалистично. Кажется, я не могу использовать граничную функцию в Matlab, поскольку она не определена. С другой стороны, я опробовал выпуклый корпус – Sade