Görüntü İşleme için Açık Kaynak JavaScript Kitaplığı

Gauss, gri tonlama, yüksek geçiş, ters çevirme, laplacian, ayna, RGB, Roberts, doygunluk ve daha fazlası gibi farklı filtre türlerini kullanarak görüntülere farklı efektler uygulamak için JavaScript API'si.

Lena.js, yazılım geliştiricilerin JavaScript uygulamalarının içinden farklı türde görüntülerle çalışmasına olanak tanıyan çok basit, hafif bir görüntü işleme kitaplığıdır. Herhangi bir dış bağımlılık olmaksızın Node üzerinde ve tarayıcı içinde çalışabilen saf bir JavaScript kitaplığıdır. Kütüphane açık kaynak kodludur ve MIT lisansı altında mevcuttur. Kitaplık, tarayıcı içindeki ağır resimlerle pek iyi değil ama küçük resimlerin işlenmesi için çok verimli.

Lena.js'nin kullanımı çok kolaydır ve resimlere farklı efektler uygulayabilir. Görüntü filtreleri, yazılım uygulamalarının yalnızca tek bir tıklamayla görüntülere farklı efektler uygulamasını sağlar. Kitaplık, birkaç önemli görüntü filtresi için destek içeriyor, bunlardan bazıları gauss, gri tonlama, yüksek geçiş, ters çevirme, laplacian, ayna, gürültü, Prewitt, RGB, Roberts, doygunluk, sepya, keskinleştirme ve çok daha fazlası. Kitaplık ayrıca bir görüntüye birden çok filtre uygulamayı da destekler. Filtreler aynı global değişken LenaJS'de saklanır ve anahtar veya nokta gösterimi kullanılarak kimliği üzerinden erişilebilir.

Previous Next

LenaJ'lere Başlarken

LenaJ'leri NPM aracılığıyla kurmanın önerilen yolu. Lütfen yüklemek için aşağıdaki komutu kullanın.

Lena.Js'yi NPM aracılığıyla kurun

 npm install lena.js --save 

JavaScript ile Görüntüye Filtreler Uygulayın

Açık kaynak Lena.js kitaplığı, JavaScript uygulamaları içindeki görüntülere farklı türde efektler uygulamak için kullanılabilecek bir dizi kullanışlı filtre sağlamıştır. Önce lütfen resme doğru adresi girin ve ardından mevcut filtreler listesinden filtreyi seçin. Seçili görüntüye kolayca filtre uygulamak için filterImage ve redrawCanvas yöntemlerini kullanabilirsiniz. Filtreyi uygulamak için bir resim ve bir tuval kullanılacaktır.

Gürültü Filtre Ekle JavaScript

 
const noise = function (pixels, amount = 0) {
  const level = amount * 255 * 0.1
  let random;
  for (let i = 0; i < pixels.data.length; i += 4) {
    random = (0.5 - Math.random()) * level;
    pixels.data[i] += random;
    pixels.data[i + 1] += random;
    pixels.data[i + 2] += random;
  }
  return pixels
}
export default noise
 

Resimlere Birden Çok Filtre Uygulamak

Lena.js kitaplığı, yazılım geliştiricilerin kendi JavaScript uygulamaları içindeki görüntülerine birden çok filtre uygulamasına olanak tanır. Genellikle, bir görüntüye filterImage yöntemiyle tek bir filtre uygulanır. Bir görüntüye birden çok filtre uygulamak için filterImage yerine redrawCanvas yöntemini kullanmanız gerekir. İlk argüman olarak zaten bir filtre ile oluşturulmuş bir resmi iletmeniz ve resme kolaylıkla eklenecek olan ikinci argüman olarak yeni bir filtre geçirmeniz gerekir.

JavaScript API ile Görüntüleri İşleme

LenaJs kitaplığı, yazılım programcılarına JavaScript içindeki görüntülere programlı olarak filtre ekleme yeteneği verir. LenaJ'lerle filtre uygulamak oldukça basittir, API filtre eklemek için iki yol sunar; filterImage() ve redrawCanvas(). Filtreyi uygulamak için yönteme bir resim ve bir tuval sağlamanız gerekir. Filtreyi elde etmek için LenaJs['filername'] yöntemini kullanabilir ve filterImage() yöntemini kullanarak görüntüye uygulayabilirsiniz.

Görüntülerde Contrast Filtre uygulayın<

 
const contrast = function (pixels, amount) {
  const level = Math.pow((amount + 100) / 100, 2)
  let data = pixels.data
  let r
  let g
  let b
  for (let i = 0; i < data.length; i += 4) {
    r = data[i]
    g = data[i + 1]
    b = data[i + 2]
    r = r / 255
    r -= 0.5
    r *= level
    r += 0.5
    r *= 255
    g = g / 255
    g -= 0.5
    g *= level
    g += 0.5
    g *= 255
    b = b / 255
    b -= 0.5
    b *= level
    b += 0.5
    b *= 255
    r = r < 0 ? 0 : r > 255 ? 255 : r
    g = g < 0 ? 0 : g > 255 ? 255 : g
    b = b < 0 ? 0 : b > 255 ? 255 : b
    data[i] = r
    data[i + 1] = g
    data[i + 2] = b
  }
  return pixels
}
export default contrast
 
 Türkçe