Görüntü Evrişimi
Bir görüntüye kendi evrişim çekirdeğinizi uygulayın. Ağırlıklardan oluşan 3x3 veya 5x5 bir matris, sonucu bölen isteğe bağlı bir ölçek ve sonrasında eklenecek bir ofset girin; araç da filtreyi tüm renk kanallarına uygular. Kod yazmadan keskinleştirme, bulanıklaştırma, kenar, kabartma ve hareket filtreleri oluşturun; ders kitaplarındaki çekirdekleri deneyin veya görüntü işleme fikirlerinin prototipini hazırlayın.
Sık sorulan sorular
Çekirdeği nasıl girerim?
3x3 çekirdek için 9, 5x5 çekirdek için 25 sayı girin; sayıları boşluk, virgül veya satır sonlarıyla ayırarak sol üstten başlayıp satır satır yazın. Varsayılan 0 -1 0 / -1 5 -1 / 0 -1 0, klasik bir keskinleştirme çekirdeğidir. Her ağırlık -1000 ile 1000 arasında olmalıdır.
Ölçek ne işe yarar?
Her pikselin ağırlıklı toplamı, ofset eklenmeden önce ölçeğe bölünür. Varsayılan değer 0 olduğunda araç, çekirdeğin toplamı pozitifse bu toplamı, değilse 1 değerini kullanır; böylece bulanıklaştırma ve keskinleştirme çekirdeklerinde genel parlaklık korunur. Bir çekirdeği kendiniz normalleştirmek için 1000 değerine kadar herhangi bir ölçek girebilirsiniz.
Ofset ne işe yarar?
-255 ile 255 arasındaki ofset, ölçekleme sonrasında her sonuca eklenir. Kenar ve kabartma çekirdekleri genellikle sıfır civarında değerler üretir; bu nedenle 128 ofseti, hem pozitif hem de negatif tepkilerin görünmesi için değerleri orta griye taşır. 0 ile 255 dışındaki sonuçlar kırpılır.
Başlangıç için hangi çekirdekler işe yarar?
Kutu bulanıklaştırma çekirdeği dokuz adet 1'den oluşur; Gauss bulanıklaştırma çekirdeği 1 2 1 / 2 4 2 / 1 2 1, kenar algılayıcı -1 -1 -1 / -1 8 -1 / -1 -1 -1, kabartma çekirdeği ise -2 -1 0 / -1 1 1 / 0 1 2 şeklindedir. Daha güçlü bir bulanıklaştırma için yirmi beş adet 1'den oluşan 5x5 çekirdek kullanın.
Filtre tüm kanallara uygulanır mı?
Çekirdek her renk kanalına ayrı ayrı uygulanır; bu nedenle kırmızı, yeşil ve mavi aynı şekilde filtrelenir. Alfa kanalı filtrelemeden önce ayrılır ve işlemden sonra geri yüklenir; böylece şeffaflık hiçbir zaman bulanıklaştırılmaz veya keskinleştirilmez. Sonuç PNG olarak kaydedilir.
Sonucum neden siyah veya beyaz?
Çekirdek ağırlıklarının toplamı sıfırsa ve ofset kullanılmıyorsa düz alanların tepkisi sıfır olacağından siyaha dönüşür. Ağırlıkların toplamı büyük bir pozitif sayıysa ve ölçek çok küçükse tüm değerler kırpılarak beyaza dönüşür. Tepkinin tamamını görmek için otomatik ölçeği kullanın veya 128 ofsetini ekleyin.
Görüntü boyutu değişir mi?
Hayır, çıktının genişliği ve yüksekliği girişle aynıdır. Kenara yakın pikseller, kenarda mevcut olan komşu pikseller kullanılarak filtrelenir. Bir kenarı 4000 pikselden uzun olan görüntüler filtrelemeden önce sığacak şekilde küçültülür.
Hangi biçimlerde dosya yükleyebilirim?
5 MB'a kadar JPEG, PNG, GIF, WebP, TIFF ve AVIF görüntüleri desteklenir; animasyonlu dosyaların ilk karesi kullanılır. Filtrelenmiş görüntü, kayıpsız bir PNG dosyası olarak indirilir.
Neden yalnızca 3x3 ve 5x5 çekirdekler?
Bu iki boyut, klasik filtrelerin neredeyse tamamını kapsar ve büyük görüntülerde her isteğin hızlı işlenmesini sağlar. Daha güçlü bulanıklaştırma için ayrılabilir bir Gauss filtresi kullanan özel bulanıklaştırma aracı daha uygundur. Daha geniş bir etki gerekiyorsa aracı iki kez çalıştırın.
Evrişimi hangi motor gerçekleştiriyor?
Araç, libvips üzerine kurulu sharp kütüphanesinin convolve işlemini kullanır. Hesaplama, girdiğiniz ağırlıklar için kesin sonuç verir ve aynı girdi her zaman aynı çıktıyı üretir.