Java DIP - Açık Kaynak Kitaplıkları

Bu bölümde, yaygın olarak kullanılan ve projeye kolayca entegre edilebilen bazı ücretsiz görüntü işleme kitaplıklarını keşfedeceğiz. Bu kütüphaneler şunları içerir -

  • ImageJ
  • Fiji
  • Commons Görüntüleme
  • ImageMagick
  • Endrov
  • LeadTools
  • OpenCv

ImageJ

ImageJ, Macintosh için NIH Image'dan esinlenen, kamuya açık bir Java görüntü işleme programıdır. 8 bit, 16 bit ve 32 bit görüntüleri görüntüleyebilir, düzenleyebilir, analiz edebilir, işleyebilir, kaydedebilir ve yazdırabilir.

ImageJ'nin temel özelliklerinden bazıları aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

Runs Everywhere

ImageJ, hem 32-bit hem de 64-bit modlarında Linux, Mac OS X ve Windows üzerinde çalışmasına izin veren Java ile yazılmıştır.

2

Open Source

ImageJ ve onun Java kaynak kodu ücretsiz olarak ve kamu malıdır.

3

Toolkit

Applet, sunucu uygulaması veya uygulama geliştirmek için ImageJ'yi bir görüntü işleme araç seti (sınıf kitaplığı) olarak kullanın.

4

Data Types

8 bit gri tonlama veya dizinlenmiş renk, 16 bit işaretsiz tam sayı, 32 bit kayan nokta ve RGB rengi.

5

File Formats

GIF, JPEG, BMP, PNG, PGM, FITS ve ASCII'yi açın ve kaydedin. DICOM'u açın. Bir URL kullanarak TIFF'leri, GIF'leri, JPEG'leri, DICOM'ları ve ham verileri açın.

6

Selections

Dikdörtgen, eliptik veya düzensiz alan seçimleri oluşturun. Çizgi ve nokta seçimleri oluşturun.

7

Image Enhancement

Hem 8 bit gri tonlamalı hem de RGB renkli görüntülerde yumuşatma, keskinleştirme, kenar algılama, medyan filtreleme ve eşiklemeyi destekler.

8

Color Processing

32 bit renkli bir görüntüyü RGB veya HSV bileşenlerine bölün. 8 bit bileşenleri renkli bir görüntüde birleştirin.

Fiji

Fiji, bir görüntü işleme paketidir. ImageJ'nin (ve ImageJ2'nin) Java, Java3D ve uyumlu bir menü yapısında düzenlenmiş birçok eklenti ile birlikte dağıtımı olarak tanımlanabilir. Ubuntu, Linux ile karşılaştırıldığında Fiji, ImageJ ile karşılaştırır.

ImageJ temel özelliklerinin yanı sıra, Fiji'nin bazı gelişmiş özellikleri aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

Registering 3D images

Bu, Elastik Hizalama ve Montaj, Özellik Çıkarma, Görüntü Sabitleyici vb. İçerir.

2

Segmenting images

35'ten fazla segmentasyon türü sunar.

3

Useful keyboard short cuts

Fuji'nin birçok klavye kısayolu var.

4

Scripting

JavaScript, JRuby, Jython, Clojure ve Beanshell'de Makrolarla komut dosyası oluşturmaya izin verin.

5

Developing Plug-ins

Eklenti geliştirmeye başlamak için Komut Dosyası Düzenleyicisini kullanın ve ardından eklentileri çalıştırın.

6

ImageJ Tricks

ImageJ'nin kullanımı kolaydır, ancak bazen gerçekten uygulanan bazı işlevleri dilersiniz, ancak nasıl tetikleyeceğinizi bilmiyorsunuz.

Commons Görüntüleme

Daha önce Apache Commons Sanselan olarak bilinen Apache Commons Imaging, (boyut, renk, boşluk, ICC profili vb.) Ve meta veriler gibi görüntü bilgilerinin hızlı ayrıştırılması dahil olmak üzere çeşitli görüntü biçimlerini okuyan ve yazan bir kitaplıktır.

ImageJ'nin temel özelliklerinden bazıları aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

Java

Apache Commons Imaging,% 100 saf Java ile yazılmıştır. Herhangi bir JVM'de ve herhangi bir platformda herhangi bir değişiklik yapılmadan yürütülür.

2

Image Formats

Çok çeşitli görüntü formatlarını okur ve yazar ve diğer kitaplıkların tümü veya çoğu tarafından kaçırılan bazı varyasyonları ve kodlamaları destekler.

3

Metadata support

EXIF meta verileri dahil olmak üzere çeşitli meta verilerin yapılandırılmış bir şekilde okunmasını ve yazılmasını destekler.

4

Network Friendly

Ağ dostudur. Commons Imaging yalnızca ihtiyaç duyduğu verileri okur ve okunanı ağ üzerinde çok ağır olmaması için önbelleğe alır.

5

Easy to use

Kullanımı çok kolay olacak şekilde tasarlanmıştır. Basit, temiz bir arayüze sahiptir. Çoğu işlem, tek bir Görüntüleme yöntemi çağrılarıdır.

6

Transparent

Commons Imaging şeffaf olmayı hedefler. Yok edilecek gizli arabellek yok, boşaltılacak yerel bellek yok, arka plan iş parçacığı yok.

7

Open Source

Özgür Yazılım / Açık Kaynaktır. Apache Yazılım Lisansı altında mevcuttur.

8

Color Conversions

ColorConversions sınıfı, şu renk uzayları arasında dönüştürme yöntemleri sunar - CIE-L * CH, CIE-L * ab, CIE-L * uv, CMY, CMYK, HSL, HSV, Hunter-Lab, RGB, XYZ ve YXY.

ImageMagick

ImageMagick, bitmap görüntüleri oluşturmak, düzenlemek, oluşturmak veya dönüştürmek için bir yazılım paketidir. DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PNG, Postscript, SVG ve TIFF dahil olmak üzere 100'den fazla formattaki görüntüleri okuyabilir ve yazabilir. Görüntüleri yeniden boyutlandırmak, çevirmek, aynalamak, döndürmek, deforme etmek, yamultmak ve dönüştürmek, görüntü renklerini ayarlamak, çeşitli özel efektler uygulamak veya metin, çizgi, çokgen, elips ve Bezier eğrisi çizmek için ImageMagick'i kullanın.

ImageMagick'in temel özelliklerinden bazıları aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

Format conversion

Bir görüntüyü bir formattan diğerine dönüştürür (örn. PNG'den JPEG'e).

2

Transform

Bir resmi yeniden boyutlandırabilir, döndürebilir, kırpabilir, çevirebilir veya kırpabilir.

3

Transparency

Görüntünün bazı kısımlarını görünmez kılar.

4

Draw

Bir resme şekil veya metin ekler.

5

Decorate

Bir görüntüye bir sınır veya çerçeve ekler.

6

Special effects

Bir görüntüyü Bulanıklaştırabilir, keskinleştirebilir, eşik yapabilir veya tonlayabilir.

7

Animation

Bir grup görüntüden bir GIF animasyon dizisi oluşturabilir.

8

Composite

Bir görüntüyü diğerinin üzerine bindirebilir.

9

Morphology of shapes

Özellikleri çıkarır, şekilleri tanımlar ve görüntülerdeki desenleri tanır.

10

Encipher or decipher an image

Sıradan görüntüleri anlaşılmaz anlamsız saçmalıklara ve tekrar geri dönüştürür.

Endrov

Endrov, çok amaçlı bir görüntü analiz programıdır. Bağımsız olarak yazılmıştır ve diğer özgür yazılımların ve birçok ticari paketin eksikliklerinin çoğunu gidermek için tasarlanmıştır.

Endrov'un bazı temel özellikleri aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

View data

Verileri 2D ve 3D olarak görüntüler. Her kanalın kendi X, Y ve Z çözünürlüğüne sahip olabileceği karmaşık 4D veri şemalarını ve sınırsız sayıda kanalı işlemek için tasarlanmıştır.

2

Annotate your images

Resimlerinizi anlamak ve istatistik almak için otomatik olarak veya elle açıklama ekler.

3

Undo and Redo

Tüm işlemler için geri alabilir ve yineleyebilir.

4

Lazy Evaluation

Yerden büyük görüntü setlerini işlemek için tasarlanmıştır. Endrov, çoğunlukla araştırma programlama dillerinde bulunan bir kavram olan tembel değerlendirme kullanır.

5

Scripting language

Geleneksel komut dosyası yazmanın yanı sıra grafiksel komut dosyası dilini de destekler.

6

Java

Java ile yazılmıştır. Eklenti mimarisi, yeni Java eklentileriyle kolay genişletme sağlar. Matlab ile etkileşime girebilir.

7

Formats

Bio formatları kullanarak neredeyse tüm ticari ve açık dosya formatlarına erişir.

8

Microscopic Processing

Tüm mikroskoplarınızı tek bir programla kontrol edebilir ve anında görüntü analizi yapabilir.

LEADTOOLS

LEADTOOLS, belge temizleme, tıbbi görüntü geliştirme, renk dönüştürme ve düzeltme, gürültü azaltma, kenar algılama ve daha fazlası dahil olmak üzere çeşitli kategorilerde 200'den fazla görüntü işleme işlevi sağlar.

LEADTOOLS'un temel özelliklerinden bazıları aşağıda açıklanmıştır -

Sr.No. Özellik Açıklama
1

Scanned Document Image Processing

Bu güçlü işlevler koleksiyonu, delinmiş delikler, eğri açılar, kenarlıklar, toz benekleri ve daha fazlası gibi taranmış belge ve kusurları okuyabilir.

2

Medical Image Processing

Daha iyi görseller için arka planı kaydırarak, seçerek, çıkararak ve kaldırarak görüntüyü geliştirin veya ayrıntıları vurgulayın.

3

Geometric Transformation

Bu işlevler, görüntüleri temizlemek, hizalamak, düzeltmek veya sanatsal 3B efektler uygulamak için kullanılabilir.

4

Brightness and Contrast

Bu işlevler, görüntüleri geliştirmek, sanatsal efektler uygulamak veya tıbbi görüntülerin tanısal değerlendirmesine yardımcı olmak için kullanılabilir.

5

Color Space Conversion

IIS ve Windows WF barındırılan uygulamalar dahil olmak üzere tek ve çok iş parçacıklı uygulamalara görüntü renk alanı işlevselliği ekleyebilirler.

6

Color Correction

Bu işlevler, değiştirilen renk kanallarıyla görüntüleri düzeltmek, renk yoğunluklarını dengelemek veya çeşitli görüntü analizi görevlerini gerçekleştirmek için kullanılır.

7

Image Enhancement

Bu işlevler, fotoğrafta kırmızı göz ve dengesiz renkler gibi yaygın hataları düzeltmenin yanı sıra tıbbi görüntülerin tanısal değerlendirmesine yardımcı olmak için kullanılır.

8

Region of Interest

Bu işlevler, bir görüntünün belirli bölümlerinde görüntü işleme işlevlerini gerçekleştirmek, barkodda zamandan tasarruf etmek ve OCR tanıma veya çeşitli görüntü analizi görevlerini gerçekleştirmek için görüntülerde ilgilenilen bölgeleri oluşturmak ve değiştirmek için kullanılır.

OpenCV

OpenCV, bir BSD lisansı altında piyasaya sürülür ve bu nedenle hem akademik hem de ticari kullanım için ücretsizdir. C ++, C, Python ve Java arayüzlerine sahiptir ve Windows, Linux, Mac OS, iOS ve Android'i destekler. OpenCV, hesaplama verimliliği için ve gerçek zamanlı uygulamalara güçlü bir odaklanma ile tasarlanmıştır. Optimize edilmiş C / C ++ ile yazılmış kitaplık, çok çekirdekli işlemeden yararlanabilir.

OpenCV'nin bazı temel özellikleri kısaca açıklanmıştır -

Sr.No. Özellik Açıklama
1

Smoothing Images

Bu, Blur, GaussianBlur, medianBlur ve iki taraflı Filtre uygulanmasını içerir.

2

Eroding and Dilating

İki çok yaygın morfoloji operatörünü uygulayabilir - Genişleme ve Erozyon.

3

Morphology Transformations

Açma, kapama, TopHat ve BlackHat gibi Morfolojik Dönüşümleri uygulamak için OpenCV işlevi morfolojisiEx.

4

Image Pyramids

OpenCV, belirli bir görüntüyü örneklemek veya yukarı örneklemek için pyrUp ve pyrDown işlevlerini kullanır.

4

Basic Thresholding Operations

OpenCV işlev eşiğini kullanarak temel eşikleme işlemlerini gerçekleştirin.

5

Adding borders to your images

OpenCV işlevi copyMakeBorder, sınırları ayarlamak için kullanılır (görüntünüze ekstra dolgu).

7

Remapping

OpenCV'de remap işlevi basit bir yeniden eşleme uygulaması sunar.

8

Histogram Calculation

Basit amaçlar için OpenCV, bir dizi dizinin (genellikle görüntüler veya görüntü düzlemleri) histogramını hesaplayan calcHist işlevini uygular. 32 boyuta kadar çalışabilir.