我正在使用JAI媒体api和ImageMagick?

ImageMagick有一些可伸缩性问题,而且基于JNI的JMagick也没有吸引力。 与ImageMagick相比,在进行调整大小操作时,JAI的结果质量较差。

有谁知道有什么优秀的工具,无论是开源的还是商业的,都是本地java,并提供高质量的结果?


当前回答

尝试使用Catalano框架。

Keypoints:

像AForge.NET/Accord.NET这样的架构。 使用相同的代码在桌面和Android两个环境中运行。 并行包含多个过滤器。 发展如火如荼。

Catalano框架是一个用于Java和Android的科学计算框架。该项目开始于AForge许多特性的初始移植。NET和Accord。NET框架的。NET框架,但正在稳步增长,现在在这些项目之间共享更高级的功能。

例子:

FastBitmap fb = new FastBitmap(bitmap);

Grayscale g = new Grayscale();
g.applyInPlace(fb);

Threshold t = new Threshold(120);
t.applyInPlace(fb);

bitmap = fb.toBitmap();

//Show the result

其他回答

I cannot say that it is the "best" library, but I think you can try this: http://algart.net/java/AlgART/ It is an open-source Java library, supporting generalized "smart" arrays and matrices with elements of different types (from 1 bit to 64-bit floating point), including 2D-, 3D- and multidimensional image processing and other algorithms, working with arrays and matrices. Unfortunately right now it consists not enough demo and examples, but, on the other hand, it contains a lot of JavaDocs. It lay in the base of commercial software (SIMAGIS) during several years, but now it is open-source.

RoboRealm视觉软件列表中提到了JHLabs和NeatVision以及许多其他非java库。

在我看来,最好的方法是使用GraphicsMagick图像处理系统和im4java作为Java的命令行接口。

GraphicsMagick有很多优点,但有一个是万能的:

通用汽车被用来处理数十亿 世界上最大的照片档案 网站(例如Flickr和Etsy)。

尝试使用Catalano框架。

Keypoints:

像AForge.NET/Accord.NET这样的架构。 使用相同的代码在桌面和Android两个环境中运行。 并行包含多个过滤器。 发展如火如荼。

Catalano框架是一个用于Java和Android的科学计算框架。该项目开始于AForge许多特性的初始移植。NET和Accord。NET框架的。NET框架,但正在稳步增长,现在在这些项目之间共享更高级的功能。

例子:

FastBitmap fb = new FastBitmap(bitmap);

Grayscale g = new Grayscale();
g.applyInPlace(fb);

Threshold t = new Threshold(120);
t.applyInPlace(fb);

bitmap = fb.toBitmap();

//Show the result

加工技术很新,但是非常非常好。