Görüntüdeki doku algılama ve bölge özellikleri


9

Çözmeye çalıştığım ilginç bir sorunum var. Örneğin, iki doku (A ve B) içeren siyah beyaz bir görüntümüz varsa, tek tek dokuları tamamen kapsayacak sınırların piksel değerlerini bilmekle ilgileniyorum.

Görüntüdeki şablonun (efsaneler) konumlarının bir kümesini verecek olan çapraz korelasyon kullanmayı düşündüm, ancak sınırların piksel değerlerini (bunlar genellikle düzensiz) almak için kullanmanın bir yolu var mı? Ayrıca, bunu yapmanın daha iyi bir yolu var mı?

Bunun gerçek bir örneği, yılda üç yağış seviyesini gösteren bir harita üzerinde yağış bölgelerini tespit etmektir. Her seviyeye, aynı görüntüde doku eşleşmesi için kullanılan açıklamada bulunan bir doku atanır.


4
Örnekleri ve belki de denediğiniz bazı ön çözümleri paylaşmanız faydalı olacaktır
Ivo Flipse

3
Ne yaptığınızı anlayabilmemiz için kesinlikle bazı örnek resimler yükleyin. Bazı bölgeler katı dolu ve diğerleri çapraz tarama gibi? nps.gov/sagu/naturescience/images/...
Endolit

Matlabınız varsa, görüntü işleme araç kutusunu kullanabilirsiniz. Değilse, web siteleri hala kullanmak isteyebileceğiniz standart algoritmalara, örneğin bwconncomp işlevi .
Bay White,

Yanıtlar:


1

İşte basit bir işlem:

  1. Görüntüdeki her bölgeye doku ölçümleri atayın.
  2. Aynı doku ölçüsüne sahip bitişik bölgeleri birleştirmek için bir bölge etiketleme / bağlantı algoritması (veya bölge büyütme algoritması) kullanın.
  3. Her bölgenin konturunu izlemek için basit bir kenar takip algoritması uygulayın.

Yasanın Doku Ölçümleri, bir görüntüdeki dokuyu belirlemek için daha eski ama yine de kullanışlı bir tekniktir ve A dokusunu görüntü boyunca B dokusundan ayırt etmeniz için yeterli olabilir. Wikipedia makalesinde "Yasalar Doku Enerji Önlemleri" bölümüne bakın:

http://en.wikipedia.org/wiki/Image_texture

İlk adım olarak, tüm doku ölçümlerini hesaplayın ve hangi özel ölçümün (örneğin Kenar veya Nokta) bir dokuyu diğerinden en kolay şekilde ayırt etmenize izin verdiğini belirleyin. (Bazı resimler gönderirseniz, bir doku ölçüsü tanımlamanıza yardımcı olabilirim.)

Yalnızca iki dokunuz varsa, A ve B varsa, bunları ön plan ve arka plan olarak değerlendirebilirsiniz ve standart bir bölge etiketleme algoritması çalışır. İşlemede neler olduğunu görmeyi kolaylaştırmak için, beyaz renge A dokuları (doku öğeleri, küçük doku parçaları) ve siyah renge B dokuları atayarak yeni bir görüntü oluşturabilirsiniz. Bölge etiketleme ve / veya kontur takip algoritmaları daha sonra bağlı beyaz ve siyah bölgeleri bulur. OpenCV'deki findContours () işlevi iyi çalışır.

http://en.wikipedia.org/wiki/Connected-component_labeling

Aynı Wikipedia makalesi hem geleneksel çoklu geçiş algoritmasını hem de tek geçiş algoritmasını içerir. Burada açıklanan tek geçiş algoritmasını uygulamadım, ama Chen ve Chang tarafından "Kontur İzleme Tekniğini Kullanan Bir Bileşen Etiketleme Algoritması" makalesinde açıklanan tek geçiş algoritması ile çalıştım. Chen ve Chang'un makalesinde, hızlı bir şekilde uygulanabilen standart bir kontur takip algoritması da açıklanmaktadır.

İkiden fazla dokuya sahipseniz, dokuları renklere yeniden eşledikten sonra bölgeleri kümelemek için bir havza veya ortalama kaydırma algoritması kullanabilirsiniz. Dokudan renge bu yeniden eşleme gerekli olmasa da, işlemin hata ayıklamasını ve anlaşılmasını kolaylaştırır.

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.