📜  Java DIP-开源库

📅  最后修改于: 2020-12-14 05:44:50             🧑  作者: Mango


在本章中,我们将探讨一些免费的图像处理库,这些库已被广泛使用并且可以轻松地集成到项目中。这些库包括-

  • 图像
  • 斐济
  • 共同体成像
  • 图像魔术
  • 恩德罗夫
  • LeadTools
  • OpenCv的

图像

ImageJ是受NIH Image for Macintosh启发的公共领域Java图像处理程序。它可以显示,编辑,分析,处理,保存和打印8位,16位和32位图像。

下面介绍了ImageJ的一些基本功能-

Sr.No. Feature & Description
1

Runs Everywhere

ImageJ is written in Java, which allows it to run on Linux, Mac OS X and Windows, in both 32-bit and 64-bit modes.

2

Open Source

ImageJ and its Java source code are freely available and in the public domain.

3

Toolkit

Use ImageJ as an image processing toolkit (class library) to develop applets, servlets, or applications.

4

Data Types

8-bit grayscale or indexed color, 16-bit unsigned integer, 32-bit floating-point, and RGB color.

5

File Formats

Open and save GIF, JPEG, BMP, PNG, PGM, FITS, and ASCII. Open DICOM. Open TIFFs, GIFs, JPEGs, DICOMs, and raw data using a URL.

6

Selections

Create rectangular, elliptical, or irregular area selections. Create line and point selections.

7

Image Enhancement

Supports smoothing, sharpening, edge detection, median filtering, and thresholding on both 8-bit grayscale and RGB color images.

8

Color Processing

Split a 32-bit color image into RGB or HSV components. Merge 8-bit components into a color image.

斐济

斐济是图像处理软件包。可以将它描述为ImageJ(和ImageJ2)与Java,Java3D以及许多组织成一致菜单结构的插件的分发。斐济与ImageJ相提并论,而Ubuntu与Linux相提并论。

除了ImageJ基本功能,以下还介绍了斐济的一些高级功能-

Sr.No. Feature & Description
1

Registering 3D images

This involves Elastic Alignment and Montage, Feature Extraction, Image Stabilizer etc.

2

Segmenting images

It offers more than 35 types of segmentation.

3

Useful keyboard short cuts

Fuji has a lot of keyboard short-cuts.

4

Scripting

Allow scripting with Macros, in JavaScript, JRuby, Jython, Clojure, and Beanshell.

5

Developing Plug-ins

Use the Script Editor to start developing plug-ins and then run the plug-ins.

6

ImageJ Tricks

ImageJ is easy to use, but sometimes you wish for some function that is actually implemented, yet you do not know how to trigger.

共同体成像

Apache Commons Imaging,以前称为Apache Commons Sanselan,是一个读写各种图像格式的库,包括快速解析图像信息,例如(大小,颜色,空间,ICC配置文件等)和元数据。

下面介绍了ImageJ的一些基本功能-

Sr.No. Feature & Description
1

Java

Apache Commons Imaging is written in 100% pure Java. It executes on any JVM, and any platform, without modification.

2

Image Formats

It reads and writes a wide variety of image formats, and supports some variations and encodings missed by all or most other libraries.

3

Metadata support

It supports reading and writing a variety of meta data in a structured way, including EXIF meta data.

4

Network Friendly

It is network-friendly. Commons Imaging only reads the data it needs, and caches what is read so that it is not too heavy on the network.

5

Easy to use

It is designed to be very easy to use. It has a simple, clean interface. Most operations are a single Imaging method calls.

6

Transparent

Commons Imaging aims to be transparent. There are no hidden buffers to dispose, no native memory to free, no background threads.

7

Open Source

It is Free Software/Open Source. It is available under the Apache Software License.

8

Color Conversions

The ColorConversions class offers methods to convert between the following color spaces − CIE-L*CH, CIE-L*ab, CIE-L*uv, CMY, CMYK, HSL, HSV, Hunter-Lab, RGB, XYZ, and YXY.

图像魔术

ImageMagick是一个用于创建,编辑,合成或转换位图图像的软件套件。它可以读取和写入100多种格式的图像,包括DPX,EXR,GIF,JPEG,JPEG-2000,PDF,PNG,Postscript,SVG和TIFF。使用ImageMagick调整图像大小,翻转,镜像,旋转,变形,剪切和变换图像,调整图像颜色,应用各种特殊效果或绘制文本,线条,多边形,椭圆和贝塞尔曲线。

下面介绍了ImageMagick的一些基本功能-

Sr.No. Feature & Description
1

Format conversion

It converts an image from one format to another (e.g. PNG to JPEG).

2

Transform

It can resize, rotate, crop, flip or trim an image.

3

Transparency

It renders portions of an image invisible.

4

Draw

It adds shapes or text to an image.

5

Decorate

It adds a border or frame to an image.

6

Special effects

It can Blur, sharpen, threshold, or tint an image.

7

Animation

It can create a GIF animation sequence from a group of images.

8

Composite

It can overlap one image over another.

9

Morphology of shapes

It extracts features, describe shapes and recognize patterns in images.

10

Encipher or decipher an image

It converts ordinary images into unintelligible gibberish and back again.

恩德罗夫

Endrov是一个多功能图像分析程序。它是独立编写的,旨在解决其他免费软件和许多商业软件包的许多缺点。

Endrov的一些基本功能如下所述-

Sr.No. Feature & Description
1

View data

It views data, in 2D and 3D. Designed to handle complex 4D data schemes and unlimited number of channels, where each channel can have its own X, Y, and Z resolution.

2

Annotate your images

It annotates your images, automatically or by hand, to understand them and get statistics.

3

Undo and Redo

It can undo and redo for all operations.

4

Lazy Evaluation

It is designed from the ground to handle large image sets. Endrov uses lazy evaluation, a concept mostly available in research programming languages.

5

Scripting language

It supports graphical scripting language, as well as traditional scripting.

6

Java

Written in Java. Plug-in architecture allows easy extension with new Java plug-ins. It can interact with Matlab.

7

Formats

It accesses almost all commercial and open file formats using Bio-formats.

8

Microscopic Processing

It can control all your microscopes with one program and do on-the-fly image analysis.

铅工具

LEADTOOLS在多个类别中提供了200多种图像处理功能,包括文档清除,医学图像增强,颜色转换和校正,降噪,边缘检测等。

LEADTOOLS的一些基本功能如下所述-

Sr.No. Feature & Description
1

Scanned Document Image Processing

This powerful collection of functions can read scanned documents of artefacts and imperfections such as punched holes, skewed angles, borders, dust speckles, and more.

2

Medical Image Processing

Enhance the image or highlight the details by shifting, selecting, subtracting, and removing the background for better visuals.

3

Geometric Transformation

These functions can be used to clean, align, correct images, or apply artistic 3D effects.

4

Brightness and Contrast

These functions can be used to enhance images, apply artistic effects, or aid in diagnostic evaluation of medical images.

5

Color Space Conversion

They can add image color space functionality to single and multi-threaded applications including IIS and Windows WF hosted applications.

6

Color Correction

These functions are used to correct images with swapped color channels, balance color intensities or perform various image analysis tasks.

7

Image Enhancement

These functions are used to correct common errors in photography such as red-eye and imbalanced colors as well as aid in diagnostic evaluation of medical images.

8

Region of Interest

These functions are used to create and modify regions of interest in images to perform image processing functions on specific portions of an image, save time in bar-code, and OCR recognition or perform various image analysis tasks.

OpenCV的

OpenCV是在BSD许可下发布的,因此,它在学术和商业方面均免费。它具有C++,C, Python和Java接口,并且支持Windows,Linux,Mac OS,iOS和Android。 OpenCV旨在提高计算效率,并且非常注重实时应用程序。该库以优化的C / C++语言编写,可以利用多核处理的优势。

简要描述了OpenCV的一些基本功能-

Sr.No. Feature & Description
1

Smoothing Images

This involves applying Blur, GaussianBlur, medianBlur and bilateral Filter.

2

Eroding and Dilating

It can apply two very common morphology operators − Dilation and Erosion.

3

Morphology Transformations

OpenCV function morphologyEx to apply Morphological Transformation such as opening, closing, TopHat, and BlackHat etc.

4

Image Pyramids

OpenCV functions pyrUp and pyrDown to down sample or up sample a given image.

4

Basic Thresholding Operations

Perform basic thresholding operations using OpenCV function threshold.

5

Adding borders to your images

OpenCV function copyMakeBorder is used to set the borders (extra padding to your image).

7

Remapping

In OpenCV, the function remap offers a simple remapping implementation.

8

Histogram Calculation

For simple purposes, OpenCV implements the function calcHist, which calculates the histogram of a set of arrays (usually images or image planes). It can operate with up to 32 dimensions.