convhull работает только в том случае, если вы имеете выпуклую форму (например, эллипсоид). Если ваше распределение данных имеет вогнутые кривые, такие как форма банана, то конволл не будет работать. К счастью, у MATLAB есть функция, чтобы справиться с этим: alphashape
В зависимости от значения «альфа» вы получаете более или менее грани в полученном многоугольнике.
когда у вас есть х, у координаты граней, вы можете построить их непосредственно, но полигон будет иметь плоские стороны, или:
вместо интерполирования, вы можете определить х, у, г сетки в которой можно просмотреть данные и спросить, является ли x, y в альфа-форме? Если да, то дайте ему значение г = 1, и если не дать ему значение г = 0, то просто контур сетки, где г = 1.
вы также можете использовать impoly рисовать многоугольник вручную
hobbysplines на обмене файлов Matlab также позволяет сгладить края многоугольника