Rasterden vektöre çizgi çizme ** LINES **


16

İşte zaten böyle sorular:

... ve diğerleri.

Bir B&W png resmim var, labirent gibi bir çizim içeriyor, örneğin sadece çizgiler içeriyor , alan yok.

Bunu herhangi bir vektör biçimine dönüştürmeniz gerekir, ancak LINES olarak . Ne denedim her program, örneğin VectorMagic, potrace vb hatları kapalı yol alanlarına dönüştürür.

Orijinal PNG görüntüsünün küçük bir kısmı - yakınlaştırılmış: resim açıklamasını buraya girin

İzin sonucu: resim açıklamasını buraya girin

Gördüğünüz gibi, "çizgi" diğer alan benzeri herhangi bir şekil gibi her iki tarafından da izlenir .

Bir yol arıyorsanız , en iyi eşleşen çizgi genişliğiyle çizgileri gerçek çizgilere (PATHS) nasıl izleyeceğiniz . (ancak herhangi bir satır yeterli olacaktır).

Bunun nedeni: izlenen çizgiler ve düğümlerle çalışmanız gerekir, örneğin bazı düğümleri bezier ve benzeri gibi dönüştürün. Şekillerle (kolayca) mümkün değil.

Herhangi bir fikir:

  • herhangi bir izleme programından vectorized hatları nasıl alınır .
  • hangi araç bunu yapabilir? (herhangi bir işletim sistemi - Windows, OS X, Linux kullanabilir ...)

Yanıtlar:


15

Centerline Takibi

Bir çizgi sanatı bitmap'in merkez hattı izini gerçekleştirebilen ücretsiz bir Açık Kaynak aracı AutoTrace vardır.

resim açıklamasını buraya girin

Çalışma Autotrace en azından aşağıdaki seçeneklerle:

autotrace -centerline -color-count 2 -output-file output.svg -output-format SVG input.png 

resim açıklamasını buraya girin

Daha sonra konturları ince ayarlayabilir ve istenen kontur gücünü ekleyebiliriz.

Komut satırına aşina olmadığımız takdirde, AutoTrace için grafik ön uç Frontline'ı da yükleyebiliriz .

Linux kullanıcıları, çoğu dağıtımda varsayılan depolarından sağlanan otomatik izlemeyi yükleyebilir. Windows için projenin sayfasından indirebileceğiniz önceden derlenmiş paketler vardır.

AutoTrace için uygulamanın kılavuz sayfasında veya arayarak bulunabilen birçok ek parametre vardır autotrace -help.

Eğri çizgilerden ziyade düz çizgiler elde etmek için, örneğin aşağıdaki parametreleri kullanabiliriz:

  • -line-threshold [real]:
    Bir spline, uç noktaları tarafından tanımlanan düz çizgiden belirtilen piksel sayısından daha fazla sapma göstermezse, düz çizgi olarak kabul edin (varsayılan: 1).

  • - line-reversion-threshold [real]:
    Bir spline, eğri uzunluğunun karesi ile tartılan düz çizgiden daha yakınsa, eğrileri olan bir liste olsa bile düz bir çizgi tutun; varsayılan .01'dir.


1
+1 İzleyici için yalnızca otomatik izlemeli düz segmentler oluşturma seçeneği olup olmadığını biliyor musunuz?
joojaa

@joojaa: seçenekler için düzenlemeye bakın.
Takkat

Keşke inşa etmek için autotrace alabilirdim ... Bunu kullanmak isterdim
slashdottir

1
@slashdottir: hangi sistemi kullanıyorsunuz? Projenin sitesi taşındı Github son deveIopment için ve hata raporları için. Bağlantıyı içerecek şekilde cevabı düzenledim.
Takkat

Ah harika! OSX kullanıyorum. Link için çok teşekkür ederim!
slashdottir

10

Dürüst olmak gerekirse ... kalem aracını alın ve yolları manuel olarak izleyin. En iyi çıktı ile sonuçlanır .

Otomatik izleme genellikle en iyi seçenek değildir. Yalnızca konturlayabileceğiniz yollar istediğinizde, otomatik izleme genellikle sefil bir şekilde başarısız olur.


görüntü gerçekten çok sayıda çizgi ile COMPLEX. Ayrıca daha fazla görüntü var - sadece çok fazla iş - alternatif arıyor ...;)
jm666

Ayrıca ben "aracı" bazı optimizasyon yapılacak umuyoruz, örneğin her zaman mümkün olan en uzun yolları ve benzeri yaratacaktır ... manuel çalışma her zaman en iyi değil;)
jm666 4:15

İyi şanslar! Gerçekten ne istediğini manuel beceri ve sabır gerektirir düşünüyorum. Tek bir yol oluşturmaya değer otomatik bir çözüm görmedim. Bence imkansızı dürüstçe arıyorsun.
Scott

2
@scott genel olarak sadece bu işe yarayabilir bu özel durumda duygularınızı kabul ediyorum.
joojaa

5

İzlemenizden sonra, burada gösterildiği gibi Interpolate Path'ları kullanmayı deneyin:

Dolgudan ortalama kontur


VAY. Bu ÇOK umut verici görünüyor. Teşekkür ederim! +1.
jm666

@ jm666 tabii ki bu tür yöntemler sürekli yolları ile ilgili sürece çok iyi otomatik olmayacak.
joojaa

5

Illustrator çok gibi izleme merkezi çizgisini yapabilir -autotrace . Çoğu şey için süper yararlı değil, ancak bu durumda görüntü oldukça sentetik ve işe yarayabilir.

Yor kaynak görüntü kötüdür, bu yüzden kaliteden ödün vermeden bunu denemenin gerçek bir yolu yoktur, orijinalleriniz daha iyi olmalıdır (çok yakınlaştırılmaya gerek yoktur)

Bunu yap:

  1. İzleme ayarlarında dolguları devre dışı bırakın ve konturları etkinleştirin.

  2. Nesne → Genişlet

resim açıklamasını buraya girin

Resim 1 : İzlemeden ve genişletildikten sonra nesne.

  1. İzleme hatalarından elde edilen sonuçları daha da geliştirmek için şunları yapın: Nesne → Yol → Basitleştir , düz kenarları kontrol edin.

resim açıklamasını buraya girin

Resim 2 : Sadeleştirmeden sonra

  1. Bana öyle geliyor ki, resminiz çizgi yönlerinde ve köşe konumlarında biraz sınırlıdır, eğer doğruysa, şimdi daha iyi (mükemmel değilse) sonuçlar için puanları ölçmeye çalışabilirsiniz.

resim açıklamasını buraya girin

Resim 3 : Sonuçta nicemlemenin ne yapabileceği.

Not: Paylaştığınız kaynağın eksik olduğu göz önüne alındığında, sonucumun oldukça iyi olduğunu söyleyebilirim. Genel olarak hat izlemesine güvenmenin mümkün olmadığını kabul ederken, bu durumda işe yarayacaktır.

PPS: Köşeleriniz üst üste biniyor, bu da otomatik izleyicilere biraz keder veriyor Bunları, izleyicileri ÇOK daha mutlu hale getirmesi gereken ImageMagick'te birkaç Morfoloji operatörü ile tespit edip düzeltebilirsiniz.


Ayrıca güzel. Artık basit komut satırı kullanımı nedeniyle autotrace kullanılıyor - birçok görüntü için. Yukarıdaki bitmap görüntü, daha büyük bir görüntünün küçük bir parçasıdır (% 1300 yakınlaştırma) :) - bu nedenle bozulmuş görünüyor. +1, teşekkürler.
jm666

@ jm666 emin, isterseniz cmd'den illustrator kullanabilirsiniz, ancak başlamak için biraz iş var.
joojaa

Illustrator'ın görüntü izini ve yalnızca konturları kullanmak için örnekle denedim. Kullanılabilir sonuç alamadım. Kuşkusuz buna çok fazla yatırım yapmadım ve örnek izleme için ideal değil. Ama genel olarak AI'nin izini sadece vuruşlara ayarladığım zaman, orijinal izlemeden önce oldukça sağlam ve keskin olmadığı sürece gerçek sanat eserinin yalnızca% 30-60'ının izini sürdüğünüz anlamına gelir.
Scott

@Scott, işe yaraması için görüntüyü orijinal (ish) boyutuna ve ayarlanmış çizgi genişliği parametresine daralttım. Farklı genişlikteki konturları izlediğinizde, bunu 2 veya 3 ayrı geçişte yapmanız gerekebilir.
joojaa


2

WinTopo adında iyi bir ücretsiz araç buldum , bu benim için işi yaptı, yani merkez hattı izleme.

Yönteme "tek dokunuşla vektörleştirme" denir ve iyi çalışır.

Bir CBS bağlamından geldiğim için - pro sürümünde Georeference için bir seçenek var.

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.