Cevap bağlama bağlıdır : yalnızca az sayıda (sınırlı) segmenti araştıracaksanız, hesaplamalı olarak pahalı bir çözüm elde edebilirsiniz. Bununla birlikte, bu hesaplamayı iyi etiket noktaları için bir tür arama içine dahil etmek isteyeceksiniz gibi görünüyor. Eğer öyleyse, aday hat segmenti biraz değiştiğinde, hesaplama açısından hızlı olan veya bir çözümün hızlı bir şekilde güncellenmesine izin veren bir çözüme sahip olmak büyük avantaj sağlar.
Örneğin, sistematik bir arama yapmak istediğinizi varsayalımP (0), P (1), ..., P (n) noktalarının bir sırası olarak temsil edilen bir konturun tüm bağlı bir bileşeni boyunca. Bu, bir işaretçi (diziye dizin) s = 0 ("başlangıç" için "s") ve başka bir işaretçi f ("bitiş" için) hangi mesafe (P (f), P (s))> = 100 ve sonra s (P (f), P (s + 1))> = 100 kadar ilerledikçe. Bu, bir aday çoklu hat (P (s), P (s +) üretir. 1) ..., P (f-1), P (f)) değerlendirme için. Bir etiketi desteklemek için "uygunluğunu" değerlendirdikten sonra, s'yi 1 (s = s + 1) arttırır ve f değerini (') f' ve s 's'ye bir kez daha minimum adayın üzerine çıkana kadar artırmaya devam edersiniz. 100 aralığı üretilir, (P (s '), ... P (f), P (f + 1), ..., P (f')) olarak temsil edilir. Bunu yaparken, P (s) köşeleri ... P (s ' Kondisyonun sadece düşürülen ve eklenen köşe noktaları bilgisinden hızla güncellenmesi son derece arzu edilir. (Bu tarama prosedürü s = n olana kadar sürdürülecektir; her zamanki gibi, f'nin işlemde n'den 0'a "sarılmasına" izin verilmelidir.)
Bu düşünce , aksi halde cazip olabilecek birçok olası fitness önlemini ( sinuosity , tortuosity , vb.) L2 tabanlı önlemleri tercih etmemize neden olur , çünkü temeldeki veriler biraz değiştiğinde genellikle hızlı bir şekilde güncellenebilir. İle bir analoji alınması Ana Bileşen Analizi (daha iyi olduğu küçük istendiği gibi), aşağıdaki ölçü eğlendirmek önerir: iki daha küçük olanı kullanır özdeğerler ve kovaryans matrisinokta koordinatları. Geometrik olarak, bu, çoklu çizginin aday bölümü içindeki köşelerin "tipik" yan yana sapmasının bir ölçüsüdür. (Bir yorum, karekökünün, çok çizginin köşelerinin ikinci atalet momentlerini temsil eden elipsin daha küçük yarı ekseni olmasıdır .) Yalnızca eşdoğrusal köşe kümeleri için sıfıra eşit olacaktır; aksi takdirde sıfırı aşıyor. Bir çizginin başlangıcı ve bitişi tarafından oluşturulan 100 piksel taban çizgisine göre ortalama bir yan yana sapmayı ölçer ve böylece basit bir yorumu vardır.
Kovaryans matrisi sadece 2 x 2 olduğu için, özdeğerler tek bir kuadratik denklem çözülerek hızla bulunur. Ayrıca, kovaryans matrisi, bir çoklu çizgideki köşelerin her birinden gelen katkıların toplamıdır. Bu nedenle, noktalar atıldığında veya eklendiğinde hızlı bir şekilde güncellenir , bu da n-nokta konturu için bir O (n) algoritmasına yol açar: bu, uygulamada öngörülen oldukça ayrıntılı konturlara iyi ölçeklenecektir.
İşte bu algoritmanın sonucuna bir örnek. Siyah noktalar konturun köşeleridir. Kesintisiz kırmızı çizgi, bu kontur dahilinde uçtan uca uzunluğun en iyi aday çokgen segmentidir. (Sağ üstteki görsel olarak belirgin aday yeterince uzun değil.)