Etiket yerleştirmek için doğru noktayı belirleyin


12

Aşağıda gösterilen resimde, etiketli dört kümeyi tanımladığım bir 2D veri setim var [0,1,2,3]. Her şekil için etiketleri doğal bir şekilde yerleştirmek için bir algoritma arıyorum . İlk tahminim onları aşağıda gösterilen kümenin "kütle merkezi" ne yerleştirmekti. Bitişik kümeler için bu işe yarar. 0Ancak kümede olduğu gibi şekil alan kümeler için yaklaşım başarısız olur. Bir açıklama kullanmadan etiketleri bu resme yerleştirmek için daha iyi bir yöntem ne olurdu?

* Burada doğal bir dereceye kadar özneldir, ancak etiketlerin amacı, izleyicinin xy düzlemindeki belirli bir bölgeyi bir sayı ile ilişkilendirmesine yardımcı olmaktır.

resim açıklamasını buraya girin


1
DSP.SE'ye Hoşgeldiniz. Bu harika bir soru! =)
Phonon

@Kapalı Eğer kümeler bir ortalama ve 2x2 kovaryans matrisinin 2 boyutlu gaussianları olarak modellenmişse, doğal yerleşimin sadece gaussianların ortalaması olacağını düşünürdüm. Kümelerinizin ortalamasını zaten belirlediniz mi?
Spacey

Yanıtlar:


11

Etiketi segmentin en iç noktasına yerleştirmeye ne dersiniz? En içteki kısmı, segment maskesinin maksimum mesafe dönüşümü ile tanımlayalım.

Mathematica ve sıralama gibi yazılım sistemleriyle başarmak kolaydır.

Bir segment için maske ve mesafe dönüşümü: resim açıklamasını buraya girin

Her bir mesafe ve ayrı mesafe dönüşümlerinin maksimum olduğu konumlandırma etiketleri için tekrarladıktan sonra:

resim açıklamasını buraya girin


1
"En içteki" nin ne anlama geldiğini biraz ayrıntılandırmayı düşünür müsünüz? Mathematica'ya (python kullanarak) erişimim yok, ancak sunulan herhangi bir çözümü kodlayabilmeliyim.
Hooked

@Hooked Düzenlemeye bakın. Mesafe dönüşümünü hesaplayan bir fonksiyona erişiminiz varsa, hepiniz ayarlandınız.
Matthias Odisio

2
Bu harika görünüyor ve kendimi uygulamanın zor olacağını düşünmüyorum. Açık olmak gerekirse, uyguladığınız dönüşüm "... her pikselin değerinin yerini en yakın arka plan pikseline olan mesafeyle değiştirdiği görüntünün mesafe dönüşümüdür" mü?
Hooked

Evet, işte bu. Bir mesafe dönüştürme işlevini kendiniz kodlamanız gerekmediği sürece bu çözümü uygulamak zor olmayacaktır (hızlı uygulamalar kodlamak daha
zordur

8

Etiketi yerleştirmek için ideal yerin iki hedefi karşılaması gerektiğini belirtiyorum:

  • merkeze yakınlık, .d
  • okunabilirlik, demek .l

Ergo, veya gibi bütünsel bir metriği en aza indirerek ideal noktayı belirleyebiliriz , burada değiş tokuş parametresidir.lxdαl+αdα

D' belirlenmesi basittir. , etiket tarafından alınan alan altındaki toplam varyasyona (veya detay seviyesinin başka bir ölçüsüne) ayarlanabilir . Örneğinizdeki sorunu önlemek için segmentin dışındaki bölgelerde bunu yüksek bir sayıya ayarlayabilirsiniz.dl

Gerisi sayısal optimizasyon.


1
d
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.