Die 5 besten Bildverarbeitungsbibliotheken in Java
Dieses Tutorial zeigt die fünf besten Bildverarbeitungsbibliotheken in Java.
Die 5 besten Bildverarbeitungsbibliotheken in Java
Es werden ziemlich viele Bildverarbeitungsbibliotheken bereitgestellt, die in Java für die Bildverarbeitung verwendet werden können. Einige der Bibliotheken werden bezahlt, andere sind Open Source; Wir haben die 5 besten Open-Source-Bibliotheken ausgewählt, die für die Bildverarbeitung in Java verwendet werden können.
1. OpenCV
Die OpenCV
ist eine der am häufigsten verwendeten Bibliotheken für Bildverarbeitung oder Computer Vision über mehrere Programmiersprachen hinweg. Das OpenCV
steht unter der BSD-Lizenz und ist für kommerzielle und akademische Nutzung kostenlos.
Neben Java unterstützt OpenCV
auch die Sprachen C++, C und Python und kann auf Betriebssystemen wie Windows, Linux, macOS, Android und iOS implementiert werden.
Das OpenCV
kann auch Multiprocessing nutzen, da es in optimiertem C/C++ geschrieben ist. Die folgende Tabelle beschreibt einige der Hauptfunktionen dieser Bibliothek.
Besonderheit | Beschreibung |
---|---|
Erodieren und Dilatieren | Das OpenCV kann die beiden am weitesten verbreiteten Morphologieoperationen Erodieren und Dilatieren anwenden. |
Morphologische Transformationen | Das OpenCV hat eine Methode morphology , die morphologische Transformationen wie opening , closing , BlackHat , Tophat usw. anwendet. |
Bilder glätten | Das OpenCV kann Bildglättungsoperationen wie Blur , medianBlur , GaussianBlur und bilaterale Filter anwenden. |
Bild Pyramiden | Das OpenCV verfügt über Methoden wie pyrUp und pyrDown , um ein Bild hoch- und herunterzurechnen. |
Neuzuordnung | Das OpenCV hat die Methode remap() , die die einfache Remapping-Operation durchführt. |
Histogrammberechnung | Die OpenCV haben die Methode calcHist um dynamische Histogramme zu erzeugen. |
Fügen Sie Rahmen zu Ihren Bildern hinzu | Mit der OpenCV -Methode copyMakeBorder kann den Bildern ein Rahmen hinzugefügt werden. |
Für weitere Informationen und um die Bibliothek herunterzuladen, besuchen Sie diesen Link.
2. BildJ
ImageJ
ist eine weitere berühmte Bibliothek für die Bildverarbeitung mit Java. Diese Bibliothek kann 8-, 16- und 32-Bit-Bilder bearbeiten, analysieren, anzeigen, verarbeiten, drucken und speichern.
Hier sind die Hauptmerkmale dieser Bibliothek.
Besonderheit | Beschreibung |
---|---|
Alle Betriebssysteme kompatibel | Das ImageJ basiert auf Java, das auf jedem Betriebssystem lauffähig ist. |
Werkzeugkasten | Das ImageJ stellt ein Toolkit zur Verfügung, mit dem applets , servlets oder Anwendungen für die Bildverarbeitung entwickelt werden können. |
Datentypen | Der ImageJ bietet RGB-Farben, 8-Bit-Graustufen und -Farben, 16-Bit-Ganzzahlen ohne Vorzeichen und 32-Bit-Gleitkommadatentypen. |
Auswahl | Der ImageJ kann Linien- und Punktauswahlen und rechteckige, elliptische oder unregelmäßige Bereichsauswahlen erstellen. |
Dateiformate | Der ImageJ kann JPEG-, GIF-, PNG-, BMP-, PGM-, FITS- und ASCII-Formate öffnen und speichern und GIFs, TIFFs, JPEGs, DICOMs und Rohdaten über eine URL öffnen. |
Farbverarbeitung | Der ImageJ kann ein Bild in RGB- oder HSV-Komponenten für ein 32-Bit-Bild zerlegen und 8-Bit-Komponenten zu einem Farbbild zusammenfügen. |
Bildverbesserung | ImageJ bietet Operationen wie Glätten, Schärfen, Medianfilterung, Kantenerkennung und Schwellenwertbildung für Graustufen- und RGB-Bilder. |
Für weitere Informationen und um die Bibliothek herunterzuladen, besuchen Sie diesen Link.
3. Fidschi
Fiji
ist ein Bildverarbeitungspaket, das auf ImageJ
, ImageJ2
, Java
, Java 3D
und vielen anderen Plugins basiert. Fiji
kann als Schnittstelle für die Bibliothek ImageJ
betrachtet werden; Sehen wir uns einige Hauptfunktionen dieses Pakets an.
Besonderheit | Beschreibung |
---|---|
Registrieren von 3D-Bildern | Fiji bietet Operationen wie Elastic Alignment, Feature Extraction, Montage, Image Stabilizer usw., um 3D-Bilder zu registrieren. |
Bilder segmentieren | Fiji bietet 35 Arten von Bildsegmentierungen. |
Skripterstellung | Fiji bietet Funktionalitäten, um Scripting mit Macros in JRuby , Jython , JavaScript , Clojure und Beanshell zu ermöglichen. |
Tastatürkürzel | Fidschi bietet viele nützliche Tastaturkürzel. |
ImageJ -Tricks |
Fiji bietet mehr Funktionalitäten für die ImageJ -Bibliothek. |
Plugins entwickeln | Fiji stellt einen Skripteditor zur Verfügung, um Plugins zu entwickeln. |
Für weitere Informationen und um die Bibliothek herunterzuladen, besuchen Sie diesen Link.
4. Apache Commons-Imaging
Apache Commons
bietet viele Funktionalitäten und die Bildverarbeitung ist eine davon. Es kann zum Lesen, Schreiben und Analysieren von Bildern verwendet werden.
Hier sind die Hauptfunktionen der Bildverarbeitung von Apache Commons
.
Besonderheit | Beschreibung |
---|---|
Gebaut in Java | Der Apache Commons ist rein in Java-Sprache gebaut. |
Metadaten-Unterstützung | Die Apache Commons stellen das Lesen und Schreiben der Metadaten strukturiert bereit. |
Bildformate | Apache Commons unterstützt eine Vielzahl von Bildformaten, auch wenn andere Bibliotheken dies nicht unterstützen. |
Netzwerkfreundlich | Der Apache Commons ist sehr netzwerkfreundlich, da er nur die Daten liest, die er benötigt, und somit das Netzwerk schont. |
Transparent | Die Apache Commons sind sehr transparent; Es hat keine versteckten Puffer, um Hintergrundthreads wie andere Bibliotheken zu beseitigen. |
Farbkonvertierungen | Die Apache Commons stellen eine Farbkonvertierungsklasse bereit, die die Farbräume zwischen CIE-L*ab , CIE-L*CH , CIE-L*uv , Hunter-Lab , CMYK konvertieren kann , CMY , HSV , HSL , RGB , XYZ und YXY . |
Für weitere Informationen und um die Bibliothek herunterzuladen, besuchen Sie diesen Link.
5. FÜHRWERKZEUGE
LEADTOOLS
ist eine Bildverarbeitungsbibliothek für Java, die viele Funktionen wie Dokumentenbereinigung, medizinische Bildverbesserung, Kantenerkennung, Farbkonvertierung und -korrektur, Rauschunterdrückung usw. bietet. Sehen wir uns die Hauptfunktionen dieser Bibliothek an.
Besonderheit | Beschreibung |
---|---|
Medizinische Bildverarbeitung | Die LEADTOOLS ist eine der besten Java-Bibliotheken für die medizinische Bildverarbeitung. |
Bildverarbeitung gescannter Dokumente | Die LEADTOOLS bieten einige leistungsstarke Funktionen zum Lesen gescannter Dokumente; Es kann Unvollkommenheiten und Artefakte wie gestanzte Löcher, Staubflecken, schiefe Winkel usw. erkennen. |
Helligkeit und Kontrast | Die LEADTOOLS stellen Funktionen bereit, um Bilder zu verbessern, bei der diagnostischen Auswertung medizinischer Bilder zu helfen oder künstlerische Effekte anzuwenden. |
Geometrische Transformation | Die LEADTOOLS bieten Funktionen, um Bilder zu korrigieren, künstlerische 3D-Effekte sauber anzuwenden oder auszurichten. |
Farbkorrektur | Die LEADTOOLS bieten Funktionen, um Bilder mit Farbkorrekturen zu korrigieren, Farbintensitäten auszugleichen oder andere Bildanalyseaufgaben durchzuführen. |
Farbraumkonvertierung | Die LEADTOOLS bieten Funktionen zum Hinzufügen von Bildfarbräumen zu Single-Threaded- und Multi-Threaded-Anwendungen. |
Bildverbesserung | Die LEADTOOLS bieten Funktionen zum Korrigieren häufiger Fehler in der Fotografie, wie z. B. unausgewogene Farben oder rote Augen. Es bietet auch eine diagnostische Bewertung der medizinischen Bildverarbeitung. |
Für weitere Informationen und um die Bibliothek herunterzuladen, besuchen Sie diesen Link.
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook