Другая возможность состоит в том, чтобы сканировать все наборы из трех последовательных вершин и выбрать две, наиболее удаленные от линий, соединяющих их вершины предшественника и преемника, т.е. выбрать две вершины, принадлежащие двум самым большим углам в исходном наборе данных.Исправьте эти две вершины, затем примените Дугласа-Пекера к промежуточным вершинам.
Это может быть шумно, если все ваши точки расположены близко друг к другу.В этом случае, вместо того, чтобы просто рассматривать последовательные наборы из трех вершин, вы можете работать наружу в обоих направлениях от каждой входной вершины, используя Дугласа-Пекера, чтобы пропустить ненужные вершины в каждом направлении.Это приведет к большим, более широко расставленным тройкам.Снова найдите две вершины, наиболее удаленные от линий, соединяющих вершины предшественника / преемника, исправьте их и примените Дугласа-Пекера к промежуточным вершинам.
Возможны другие варианты, но это должно дать лучшую отправную точку, чемлибо «случайный», либо «самый дальний», как описано в других ответах.