Java DIP - Perpustakaan Sumber Terbuka
Dalam bab ini, kami menjelajahi beberapa pustaka pemrosesan gambar gratis yang banyak digunakan dan dapat dengan mudah diintegrasikan dalam proyek ini. Perpustakaan ini termasuk -
- ImageJ
- Fiji
- Commons Imaging
- ImageMagick
- Endrov
- LeadTools
- OpenCv
ImageJ
ImageJ adalah program pemrosesan gambar Java domain publik yang terinspirasi oleh NIH Image untuk Macintosh. Itu dapat menampilkan, mengedit, menganalisis, memproses, menyimpan, dan mencetak gambar 8-bit, 16-bit, dan 32-bit.
Beberapa fitur dasar ImageJ dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Runs Everywhere ImageJ ditulis dalam Java, yang memungkinkannya berjalan di Linux, Mac OS X dan Windows, dalam mode 32-bit dan 64-bit. |
2 | Open Source ImageJ dan kode sumber Java-nya tersedia secara bebas dan dalam domain publik. |
3 | Toolkit Gunakan ImageJ sebagai toolkit pemrosesan gambar (pustaka kelas) untuk mengembangkan applet, servlet, atau aplikasi. |
4 | Data Types 8-bit grayscale atau warna indeks, 16-bit unsigned integer, 32-bit floating-point, dan warna RGB. |
5 | File Formats Buka dan simpan GIF, JPEG, BMP, PNG, PGM, FITS, dan ASCII. Buka DICOM. Buka TIFF, GIF, JPEG, DICOM, dan data mentah menggunakan URL. |
6 | Selections Buat pilihan area persegi panjang, elips, atau tidak beraturan. Buat pilihan garis dan titik. |
7 | Image Enhancement Mendukung smoothing, sharpening, edge detection, median filtering, dan thresholding pada gambar warna RGB dan grayscale 8-bit. |
8 | Color Processing Pisahkan gambar berwarna 32-bit menjadi komponen RGB atau HSV. Gabungkan komponen 8-bit menjadi gambar berwarna. |
Fiji
Fiji adalah paket pemrosesan gambar. Ini dapat digambarkan sebagai distribusi ImageJ (dan ImageJ2) bersama dengan Java, Java3D, dan banyak plug-in yang diatur ke dalam struktur menu yang koheren. Fiji dibandingkan dengan ImageJ seperti Ubuntu dibandingkan dengan Linux.
Selain fitur dasar ImageJ, beberapa fitur lanjutan Fiji dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Registering 3D images Ini melibatkan Penyelarasan dan Montase Elastis, Ekstraksi Fitur, Penstabil Gambar, dll. |
2 | Segmenting images Ini menawarkan lebih dari 35 jenis segmentasi. |
3 | Useful keyboard short cuts Fuji memiliki banyak jalan pintas keyboard. |
4 | Scripting Izinkan pembuatan skrip dengan Makro, dalam JavaScript, JRuby, Jython, Clojure, dan Beanshell. |
5 | Developing Plug-ins Gunakan Editor Skrip untuk mulai mengembangkan pengaya dan kemudian menjalankan pengaya. |
6 | ImageJ Tricks ImageJ mudah digunakan, tetapi terkadang Anda menginginkan beberapa fungsi yang benar-benar diterapkan, namun Anda tidak tahu cara memicunya. |
Commons Imaging
Apache Commons Imaging, sebelumnya dikenal sebagai Apache Commons Sanselan, adalah pustaka yang membaca dan menulis berbagai format gambar, termasuk penguraian cepat informasi gambar seperti (ukuran, warna, spasi, profil ICC, dll.) Dan meta data.
Beberapa fitur dasar ImageJ dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Java Pencitraan Apache Commons ditulis dalam 100% Java murni. Ini dijalankan pada JVM apa pun, dan platform apa pun, tanpa modifikasi. |
2 | Image Formats Itu membaca dan menulis berbagai macam format gambar, dan mendukung beberapa variasi dan pengkodean yang terlewat oleh semua atau sebagian besar perpustakaan lainnya. |
3 | Metadata support Ini mendukung membaca dan menulis berbagai meta data dengan cara terstruktur, termasuk meta data EXIF. |
4 | Network Friendly Ramah jaringan. Commons Imaging hanya membaca data yang dibutuhkan, dan menyimpan apa yang dibaca sehingga tidak terlalu berat di jaringan. |
5 | Easy to use Ini dirancang agar sangat mudah digunakan. Ini memiliki antarmuka yang sederhana dan bersih. Kebanyakan operasi adalah panggilan metode Imaging tunggal. |
6 | Transparent Commons Imaging bertujuan untuk menjadi transparan. Tidak ada buffer tersembunyi untuk dibuang, tidak ada memori asli yang perlu dikosongkan, tidak ada thread latar belakang. |
7 | Open Source Ini adalah Perangkat Lunak Gratis / Sumber Terbuka. Ini tersedia di bawah Lisensi Perangkat Lunak Apache. |
8 | Color Conversions Kelas ColorConversions menawarkan metode untuk mengonversi antara ruang warna berikut - CIE-L * CH, CIE-L * ab, CIE-L * uv, CMY, CMYK, HSL, HSV, Hunter-Lab, RGB, XYZ, dan YXY. |
ImageMagick
ImageMagick adalah rangkaian perangkat lunak untuk membuat, mengedit, menulis, atau mengonversi gambar bitmap. Itu dapat membaca dan menulis gambar dalam lebih dari 100 format termasuk DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PNG, Postscript, SVG, dan TIFF. Gunakan ImageMagick untuk mengubah ukuran, membalik, mencerminkan, memutar, mendistorsi, menggeser, dan mengubah gambar, menyesuaikan warna gambar, menerapkan berbagai efek khusus, atau menggambar teks, garis, poligon, elips, dan kurva Bezier.
Beberapa fitur dasar ImageMagick dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Format conversion Ini mengubah gambar dari satu format ke format lain (misalnya PNG ke JPEG). |
2 | Transform Itu dapat mengubah ukuran, memutar, memotong, membalik atau memotong gambar. |
3 | Transparency Ini membuat bagian dari gambar tidak terlihat. |
4 | Draw Ini menambahkan bentuk atau teks ke gambar. |
5 | Decorate Ini menambahkan batas atau bingkai ke gambar. |
6 | Special effects Itu dapat mengaburkan, mempertajam, ambang, atau mewarnai gambar. |
7 | Animation Itu dapat membuat urutan animasi GIF dari sekelompok gambar. |
8 | Composite Itu bisa tumpang tindih satu gambar di atas yang lain. |
9 | Morphology of shapes Ini mengekstrak fitur, mendeskripsikan bentuk, dan mengenali pola dalam gambar. |
10 | Encipher or decipher an image Ini mengubah gambar biasa menjadi omong kosong yang tidak dapat dipahami dan kembali lagi. |
Endrov
Endrov adalah program analisis gambar multiguna. Ini ditulis secara independen dan dirancang untuk mengatasi banyak kekurangan perangkat lunak bebas lainnya dan banyak paket komersial.
Beberapa fitur dasar Endrov dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | View data Ini melihat data, dalam 2D dan 3D. Dirancang untuk menangani skema data 4D yang kompleks dan jumlah saluran yang tidak terbatas, di mana setiap saluran dapat memiliki resolusi X, Y, dan Z sendiri. |
2 | Annotate your images Ini menganotasi gambar Anda, secara otomatis atau dengan tangan, untuk memahaminya dan mendapatkan statistik. |
3 | Undo and Redo Itu dapat membatalkan dan mengulang untuk semua operasi. |
4 | Lazy Evaluation Ini dirancang dari awal untuk menangani kumpulan gambar besar. Endrov menggunakan evaluasi malas, sebuah konsep yang sebagian besar tersedia dalam bahasa pemrograman penelitian. |
5 | Scripting language Ini mendukung bahasa skrip grafis, serta skrip tradisional. |
6 | Java Ditulis dalam bahasa Jawa. Arsitektur plug-in memungkinkan ekstensi yang mudah dengan plug-in Java baru. Itu dapat berinteraksi dengan Matlab. |
7 | Formats Ini mengakses hampir semua format file komersial dan terbuka menggunakan Bio-format. |
8 | Microscopic Processing Itu dapat mengontrol semua mikroskop Anda dengan satu program dan melakukan analisis gambar saat itu juga. |
LEADTOOLS
LEADTOOLS menyediakan lebih dari 200 fungsi pemrosesan gambar dalam beberapa kategori termasuk pembersihan dokumen, peningkatan citra medis, konversi dan koreksi warna, pengurangan noise, deteksi tepi, dan banyak lagi.
Beberapa fitur dasar LEADTOOLS dijelaskan di bawah ini -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Scanned Document Image Processing Kumpulan fungsi yang hebat ini dapat membaca dokumen pindaian artefak dan ketidaksempurnaan seperti lubang berlubang, sudut miring, batas, bintik debu, dan banyak lagi. |
2 | Medical Image Processing Sempurnakan gambar atau sorot detail dengan menggeser, memilih, mengurangi, dan menghapus latar belakang untuk visual yang lebih baik. |
3 | Geometric Transformation Fungsi-fungsi ini dapat digunakan untuk membersihkan, menyelaraskan, mengoreksi gambar, atau menerapkan efek 3D artistik. |
4 | Brightness and Contrast Fungsi ini dapat digunakan untuk menyempurnakan gambar, menerapkan efek artistik, atau membantu dalam evaluasi diagnostik gambar medis. |
5 | Color Space Conversion Mereka dapat menambahkan fungsionalitas ruang warna gambar ke aplikasi tunggal dan multi-utas termasuk aplikasi yang dihosting IIS dan Windows WF. |
6 | Color Correction Fungsi ini digunakan untuk mengoreksi gambar dengan saluran warna yang ditukar, menyeimbangkan intensitas warna atau melakukan berbagai tugas analisis gambar. |
7 | Image Enhancement Fungsi ini digunakan untuk mengoreksi kesalahan umum dalam fotografi seperti mata merah dan warna yang tidak seimbang serta membantu dalam evaluasi diagnostik gambar medis. |
8 | Region of Interest Fungsi-fungsi ini digunakan untuk membuat dan memodifikasi wilayah yang diminati dalam gambar untuk menjalankan fungsi pemrosesan gambar pada bagian tertentu dari gambar, menghemat waktu dalam kode batang, dan pengenalan OCR atau melakukan berbagai tugas analisis gambar. |
OpenCV
OpenCV dirilis di bawah lisensi BSD dan karenanya gratis untuk penggunaan akademis dan komersial. Ini memiliki antarmuka C ++, C, Python, dan Java dan mendukung Windows, Linux, Mac OS, iOS, dan Android. OpenCV dirancang untuk efisiensi komputasi dan dengan fokus yang kuat pada aplikasi waktu nyata. Ditulis dalam C / C ++ yang dioptimalkan, library ini dapat memanfaatkan pemrosesan multi-core.
Beberapa fitur dasar OpenCV dijelaskan secara singkat -
Sr.No. | Fitur & Deskripsi |
---|---|
1 | Smoothing Images Ini melibatkan penerapan Blur, GaussianBlur, medianBlur dan Filter bilateral. |
2 | Eroding and Dilating Ini dapat menerapkan dua operator morfologi yang sangat umum - Dilasi dan Erosi. |
3 | Morphology Transformations Morfologi fungsi OpenCV Ex untuk menerapkan Transformasi Morfologi seperti pembukaan, penutupan, TopHat, dan BlackHat dll. |
4 | Image Pyramids OpenCV berfungsi pyrUp dan pyrDown untuk menurunkan atau menaikkan sampel gambar tertentu. |
4 | Basic Thresholding Operations Lakukan operasi thresholding dasar menggunakan ambang fungsi OpenCV. |
5 | Adding borders to your images Fungsi OpenCV copyMakeBorder digunakan untuk mengatur batas (bantalan ekstra ke gambar Anda). |
7 | Remapping Di OpenCV, peta ulang fungsi menawarkan implementasi pemetaan ulang sederhana. |
8 | Histogram Calculation Untuk tujuan sederhana, OpenCV mengimplementasikan fungsi calcHist, yang menghitung histogram dari sekumpulan array (biasanya gambar atau bidang gambar). Ini dapat beroperasi hingga 32 dimensi. |