Mekansal bağlamda Lanczos yeniden örnekleme için faydalı olan nedir?


46

GDAL, en yakın komşu olan bilinear, kübik ve spline'ların normal karışımının ötesinde bir yeniden örnekleme yöntemi içerir: "Lanczos pencereli sinc yeniden örnekleme". Bunun bir evrişim filtresi olduğunu anlıyorum, ancak sonuçların öznel olma eğiliminde olduğu görüntülerin aksine, mekansal veriler için kullanılan yeniden örneklemenin başka sonuçları da var. Lanczos nedir ve kullanımı çıktıyı nasıl etkiler?


4
Bu, iyi bir cevabı olan stackoverflow.com/questions/1854146/… adresinin tam bir kopyasıdır .
whuber

Claude Duchon tarafından 1979 tarihli bir makalenin 4. Bölümü yardımcı olabilir.
whuber

Yanıtlar:


72

Lanczos yeniden örnekleme nedir?

Her ne kadar teori erken bir makalede ve Wikipedia makalesinde tanımlanmış olsa da , yeniden örnekleme yöntemleri için bir "his" en iyi şekilde basit veya standart görüntüler üzerinde hesaplanarak elde edilir. Bu, kapsamlı deneyler gerektiren geniş bir konu olabilir, ancak bazı basitleştirmeler de yapılabilir:

  • Bu operatörler her renk kanalında ayrı olarak çalışır. Bu nedenle, tek renkli ("siyah beyaz") bir görüntü üzerinde nasıl çalıştıklarını incelemek yeterlidir.

  • Görüntü işlemede kullanılan çoğu evrişim operatörü, x ve y yönlerinde aynı şekilde ve her iki yönde bağımsız olarak çalışır. Aslında, bunlar önce satırlara sonra da sütunlara uygulanan tek boyutlu operatörlerdir. Bu, onları detaylı olarak çizilebilen "1D" görüntüleri inceleyerek çalışabileceğimiz anlamına gelir.

  • Doğrusal bir operatör hakkında bilmemiz gereken her şey (tüm evrişim operatörlerini içerir), bir operatörün hepsinin en basit sabit olmayan görüntüsü üzerinde nasıl çalıştığından çıkarılabilir: bu bir değerden diğerine ani bir sıçramadır.

Birkaç popüler yeniden örnekleme yönteminin bir resmine bakalım. Aslında, iki resme ihtiyacımız var: biri yeni örneklerin eskiden daha kaba olduğu "aşağı örneklemede" ne olacağını göstermek için, diğeri ise yeni görüntülerin eskisini daha iyi hale getirdiği "yukarı örneklemeye" bakmak için. İkincisi ile başlayalım, çünkü daha fazla ayrıntı gösterir.

Örnekleme

Görüntü olarak 7 ila 80 hücreye yeniden örnekleme

Soldaki 7'ye 7 görüntü orijinal tek boyutlu, çünkü her satır aynı. Yeniden örnekleme sütunlar arasında gerçekleşir. Diğer beş görüntünün boyutu 80'e 80'dir ve her yöntemin orijinal kaba pikseller arasında nasıl araya girdiğini ayrıntılı olarak gösterir. En yakın komşu örneklemesi, karanlık ve aydınlık arasındaki keskin bölünmeyi korurken, diğer dört yöntem araya giren bölgeyi bir dereceye kadar bulanıklaştırır. Özellikle, Lanczos yeniden örnekleyici orijinalden daha koyu olan bazı bölgeleri ve orijinalden daha açık olan bazı bölgeleri oluşturur. (Bunun GIS çalışması için etkileri olabilir, çünkü böyle bir ekstrapolasyonOrijinal değerlerin listesi potansiyel olarak yeni değerlerin geçersiz olmasına neden olabilir. Orijinal renk haritasının menzilinin ötesine geçerek bazen yeniden örnekleme görüntüsündeki aşırı değerlerin yanlış gösterilmesine neden olabilirler. Bu, örneğin ArcGIS’te örneklenen bikubik evrişim ile ilgili bir problemdir.)

(Not: Burada gösterilen "bicubic" yöntemi, ArcGIS'in "bicubic convolution" değil, bicubic spline'dır.)

Görüntü değerlerini göstermek için hafifliği kullanmak, doğal olmasına rağmen çok kesin değildir. Bir sonraki çizim bunu hücre değerlerini (dikey eksen) sütun (yatay eksen) grafikleyerek düzeltiyor.

7 ila 80 hücreyi grafik olarak yeniden örnekleme

Grafiklerdeki düşük değerler, görüntülerin daha koyu kısımlarına karşılık gelir. Orijinalin düşünceli bir incelemesi gizli bir varsayımı açığa çıkarır: orijinal görüntü karanlıktan aydınlığa keskin bir sıçrama gibi görünse de, atlama aslında sütunların büyüklüğünün yedinci (1/7) üzerinde gerçekleşir. Resmin tasvir ettiği orijinal sahnede bu aralıkta gerçekte ne olduğunu kim söyleyebilir? Her biri şeyin bir farklı ama potansiyel olarak aynı derecede geçerli oluşturma veriyor: Bu nedenle bu kısa aralığında oluşabilecek yeniden örnekleme yöntemleri arasında farklılıkların çok kritik olmamalı olabilir orijinal sahnede meydana geliyor. Bu anlamda, en yakın komşu örneklemenin en sadık enterpolasyon yöntemi olduğu artık belli değil.

Çıkaracağımız sonuçlardan biri , herhangi bir örnekleme yönteminin doğruluğunun, altta yatan sahnenin doğasına bağlı olduğudur . Sahne, bir noktadan diğerine yumuşak bir şekilde değişmesi gereken değerlerden oluşuyorsa, en yakın komşu yöntemi gösterilenler arasında en az sadık örnekleme yöntemi olabilir .

altörnekleme

Aşağı örneklenmiş görüntüler

Burada 16 x 16 görüntüyü 8 x 8 görüntüye (2'ye 2 toplama) altörnekleme sonucunu görüyoruz. En yakın komşu keskin sınırı kesin olarak korur. Lanczos , görünen keskinliği artırarak diğerlerinden farklıdır . Yakından bakıldığında, sınırın bir tarafındaki karanlık alanı kararttığını ve diğer taraftaki ışık alanını aydınlatacağını göstermektedir. Grafikler bunu netleştiriyor:

Aşağı örnek görüntülerin grafikleri

Bilinear, bicubic ve Gaussian resamplers, tüm pozitif ağırlıkları (veya çok küçük negatif ağırlıkları) olan evrişim operatörlerinin özelliklerini gösterir: komşu değerleri ortalama veya "smear". Aşağı örneklemede bu, keskin özelliklerin bulanıklaşmasına neden olur. Bulanıklığın derecesi çekirdeğin genişliğine bağlıdır. Bu diğerleri gibi, Lanczos yeniden örnekleyicisi de atlamayı bulanıklaştırır, ancak her iki tarafta onu "aşıyor". Bu, görüntülerin hemen üzerinde görülen kontrast geliştirmedir. Bu kontrastı artırma eğilimi nedeniyle (görüntüdeki yüksekler ve düşükler arasındaki yerel farklılıklar), Lanczos yeniden örnekleyicisine genellikle "keskinleştirme filtresi" denir. Bu grafikler, bu karakterizasyonun farklı bir anlayış gerektirdiğini gösteriyorZira, açıkça, atlamanın her iki tarafındaki değerlerin ortalamasını azaltmıyor. Piksel 4'te, değeri 0.56, diğer evrişim filtreleri tarafından hesaplanan değerlerle karşılaştırılabilir.

Kullanmak çıktıyı nasıl etkiler?

Daha karmaşık bir görüntüde neler olduğuna bir göz atalım.

Karmaşık bir görüntünün örnekleri

13 x 13 görüntü olan orijinal, mümkün olan en yüksek uzamsal frekansa sahip bir desen içerir (sağdaki her sütunla aydınlık ve karanlık arasında değişebilir). Altörnekleme yaparken bu tür özellikleri yeniden üretmeyi umut edemeyiz: daha az piksel miktarı tüm bu bilgileri tutamaz. Öyleyse, böyle bir görüntü örneklendiğinde ne olduğuna odaklanalım. Sahnenin sadık bir şekilde çoğaltılmasını önemsersek, bu yüksek frekanslı modelin doğru şekilde çoğaltılmasını isteyeceğiz.

Daha küçük görüntüler 25'e 25 piksele yeniden örneklenir: neredeyse 2 boyutlu bir inceltme. Gözüme göre, Lanczos ve bilinear yöntemleri, dört evrişim örnekleyicileri arasındaki çizgileri en keskin şekilde yeniden üretir. En yakın komşu, elbette en sadık olanıdır (çünkü değerleri ortalamaya alamaz).

Örneklenen karmaşık görüntünün grafikleri

Aynı sonuçların bu grafikleri, Lanczos yeniden örnekleyicisinin, sabit değer ışığı içindeki yoğunluğun bir varyasyonunu ortaya koyma pahasına, şeritlerdeki kontrastı (dikey dalgalanmaların alçalmadan en yükseğe yükselmesiyle görüldüğü gibi) koruyabildiğini göstermiştir. Resmin ortasındaki alan (orijinalin 5, 6, 7 pikselleri). Bu varyasyon, görüntünün aydınlık kısmında (ortada) şerit benzeri eserler olarak ortaya çıkar. Burada gösterilen örnekleyicilerin, bu kadar sahte detayı ortaya koyması tek başına.

Mekansal bir uygulamada ne işe yarar?

Açıkçası, Lanczos yeniden örnekleme, yeniden örnekleme için her derde deva veya omnibus bir çözüm değildir. Yerel kontrastı korumak (hatta arttırmak) için diğer birçok evrişim örnekleyiciden daha üstündür. Bu, yeniden örneklenen resmin ayrıntılı özelliklerin veya sınırların tanımını görüntülemek için tasarlandığında yararlı olabilir. Yeniden örneklenen görüntü daha sonra analiz edildiğinde veya işlendiğinde, Lanczos yeniden örnekleme, kenarları ve doğrusal özellikleri algılama yeteneğini artırabilir.

Yeniden örneklenen görüntü başka yollarla analiz edildiğinde, Lanczos yeniden örneklemesinin yararları şüphelidir. Genellikle (yapay olarak) odak aralıkları ve odak standart sapmaları gibi mekansal değişkenlik ölçütlerini artıracaktır. Mekansal araçları genel olarak etkilemeyecek - diğer evrişim örnekleyicileri gibi, genellikle normalleşmiştir (yani yerel ağırlıklı bir ortalama, hiçbir önyargıya sahip olmadan) - ancak bazı yerel ortalamaları artırabilir ve diğerlerine göre azaltabilir. diğer örnekleyiciler.

Buradaki (mutlaka kısa) değerlendirme, Lanczos örnekleyicisinin genellikle alt örnekleme için kullanılmaması gerektiğini gösterir: bu uygulama için, orijinal aralığın ötesinde ekstrapolasyonun potansiyel dezavantajını koruyan basit (ve daha yaygın olarak mevcut) yöntemlerin sahip olduğu hiçbir şey sunmadığı anlaşılmaktadır. veri değerleri.

Kelime Sonrası: genel bir yorum

Burada açıklanan soruşturma, bir CBS operasyonunun nasıl çalıştığı hakkında soruları olduğunda, herkesin neler yapabileceğinin bir örneğidir . CBS'nin kendisini araştırma konusu olarak kullanır: bazı işlemlerin veya analitik yöntemlerin ne yaptığını bilmek için, sadece kontrol edilmiş deneysel koşullar altında uygulayın. Bu durumda basit test görüntüleri oluşturmak, bunları uygun yöntemlere göre yeniden örneklemek ve sonuçları incelemek yeterlidir.

CBS'nin nasıl çalıştığını öğrenmek için bu yaklaşımın üç kritik yönü vardır:

  1. Teorisi . Deney genellikle "kör" yapılamaz: bazı teorileri tanımaya yardımcı olur. Genelde çok fazla şey bilmemize gerek yoktur, fakat temellere ihtiyacımız var. Bu durumda, konvolüsyon teorisi, denememiz gereken görüntü sayısını ve türlerini büyük ölçüde azaltmıştır. Fourier analizi, vb. Hakkında hiçbir şey bilmemize gerek yoktu. (Hata yapmayın, bu tür bilgiler faydalıdır. Ancak bu tür uzmanlık bilgisi eksikliği bizi durdurmamalıdır).
  2. Uygulama . Deneyi gerçekleştirmek için GIS'in kendisini kullanarak, gerçekte ne yaptığını görebiliyoruz . Bu, (yazılımın ne yapması gerektiğini bize söyleyen) teorisi ile pratik (ki gerçekten yaptığı şey) arasındaki bağlantıyı keser .
  3. Niceleme . Soru görsel algı ile ilgili değilse , sonuçları değerlendirmek için yalnızca haritalara (veya bu durumda, görüntülere) bakmaya güvenmemeliyiz . En iyi bilgiyi elde etmek için, çıktıyı ölçmemiz (burada grafiklerle yapılır) ve sık sık istatistiksel yöntemlerle tanımlamamız ve özetlememiz gerekir.

3

Lanczos filtreleri veya sık sık 'keskinleştirme filtresi' olarak adlandırılan görüntü programlarınızdaki benzer filtre türlerini biliyor olabilirsiniz. Bu forumtopikten güzel bir örnek : İlk görüntü orijinal dosyayı gösterir ve eğer pürüzsüz bir enterpolasyon yöntemi kullanırsanız (bicubic altörnekleme gibi) ızgara boyutunu küçültdükten sonra nasıl görüneceğini gösterir.

http://peltarion.eu/img/comp/moire/D_lanczos3.jpg Ancak, bu görüntüye bir Lanczos filtresi uygularsanız veya yeniden örneklemede kullanırsanız, farklar artar, kontrastın yerel olarak arttığını söyleyebilirsiniz. görüntü tanımını buraya girin

Mekansal veri söz konusu olduğunda bu çok faydalı olabilir: Izgaralı bir çokgen haritasını azaltmaya çalıştığınızı veya kenar algılamasına dayanan algoritmalar çalıştırmak istiyorsanız (örneğin, taranmış bir çokgen haritasını dijitalleştirin, görüntü bölümlendirmesini ( örneğin )).

Öte yandan, bazı mekansal doğruluk kaybedersiniz. 16x16 haritasının bir şehirde hava kirliliğini temsil ettiğini, ortalamayı kullanan örneklemenin, bu ızgara hücresindeki ortalama hava kirliliğini daha iyi temsil edeceğini düşünün.


Bu görüntülerin iddia ettiğiniz gibi olduğunu sanmıyorum. Açıkça sağ üst, hücre ortalaması değildir; Öyle olsaydı, sol üst kadranındaki dikey çizgiler orada olmazdı. Bu görüntüye bir miktar "keskinleştirme" uygulanmış ve altta olanı sağ alt köşeye yerleştirilmiş (sağ alt) elde etmek için: bu özelliklerin korunması değil, eserler yaratmaktır. Çünkü (neredeyse) tüm filtreler birim Lanczos filtreler dahil, normalize olan ortalama hakkında noktası için de geçerlidir her birinin onlardan, sadece bir ağırlıksız mahalle ortalama ve bu nedenle ayırt edici özelliği değildir.
whuber

Yorumlarınızı birleştirdim. Ancak hücre içinde , pürüzsüz enterpolatör büyük olasılıkla daha iyi bir tahmin
sağlayacaktır

-1

Gönderen Vikipedi :

Lanczos resampling (Macarca telaffuz: [ˈlaːntsoʃ]), örneklenmiş veriler için yeni değerler hesaplamak için kullanılan bir enterpolasyon yöntemidir. Genellikle çok değişkenli enterpolasyonda, örneğin görüntü ölçeklendirmede (dijital görüntüleri yeniden boyutlandırmak için) kullanılır, ancak diğer herhangi bir dijital sinyal için kullanılabilir. Lanczos çekirdeği, orijinal verilerde hangi numuneleri ve hangi oranda nihai verinin her örneğini oluşturduğunu gösterir. Filtre, Cornelius Lanczos'un adını almıştır, çünkü daha önce kullanılmadığı çeşitli problemler için Fourier serisi ve Chebyshev polinomlarının nasıl kullanılacağını gösterdi.

Uygulama : Lanczos filtresi, teorik olarak en uygun "tuğla duvar" düşük geçişli filtre olan sinc filtrenin pencereli bir şeklidir. Sinc işlevi sınırsızdır ve bu nedenle pratikte doğrudan kullanılamaz. Bunun yerine, pencere işlevlerinde tartışıldığı gibi, filtrenin pencereli formları adı verilen yaklaşımlar kullanılır: filtre tasarımı ve Lanczos filtresi böyle bir pencerelemedir. Pencereler bir aralığın dışında kaybolur ve daha büyük aralıklar kullanmak, daha fazla hesaplama karşılığında birisinin doğruluğunu iyileştirmesini sağlar.

Değerlendirme : Lanczos filtresi, diğer filtreler, özellikle de iç filtre diğer pencerelerle karşılaştırılmıştır. Bazıları Lanczos'u (a = 2 ile birlikte), kesik sinc ve Barlett, kosinüs ve Hann pencereli sinc ile karşılaştırıldığında, "takma, keskinlik ve asgari zillerin azaltılmasında en iyi uzlaşma" buldular.

Sınırlama : Çekirdek> 1 için negatif değerler aldığından, çıkış değerleri negatif olmayan girişlerde bile negatif olabilir. Negatif değerler, görüntü sinyalleri için sınırlar dışındadır ve kırpma artefaktlarına neden olur. Negatif loblar da çınlayan eserler yaratır.

Bununla birlikte, hem alttan çıkma hem de çınlama, pencereleme nedeniyle (penceresiz) sinc filtreye kıyasla azalır; pozitif yan lob boyutunun gösterdiği gibi, özellikle a = 2 için zil sesi özellikle küçüktür.


Neden aşağı oy? Bu cevapta yanlış olan ne? Orijinal bağlantıyı ben de verdim.
Chethan S.

7
Wiki ekstresinin Lanczos filtresinin mekansal veriler üzerindeki etkilerini ve bunun için ne faydası olacağını sorusuna nasıl cevap verdiğini anlamıyorum.
underdark

Bu doğru. Sadece Lanczos Nedir
Chethan S.

9
Bu Wikipedia makalesinin çoğu yardımcı olamayacak kadar belirsiz (başkalarının daha önce de belirttiği gibi). Bu sorunun cevabı gerçekten son cümleyledir, ancak yalnızca "alttan" ve "çınlama" nın ne olduğunu bilen biri tarafından anlaşılabilir ("2D'de" Gibbs salınımı ")," olumlu taraf "ile neyin ifade edildiğini bilir. lob, "ve çekirdek şekiller arasındaki ilişkileri ve bunların Fourier dönüşümleri üzerindeki etkilerini derinden anlar. Kısacası, anlaşılır ve kullanışlı olmak için bu cevabın biraz güçlendirilmesi gerekiyor.
whuber
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.