通过独立应用程序进行图像处理

时间:2010-10-17 08:25:39

标签: java matlab image-processing

我正在开发一个项目,用于执行基于内容的图像检索,前端将在java中。

主要问题是选择执行图像处理的工具。由于Matlab为CBIR提供了许多功能。但是使用Matlab的主要问题是你需要在使用该应用程序的每台计算机上安装Matlab。

还有其他方法可以让我的项目(使用其他工具或驱动程序),以便我的应用程序可以在不使用任何其他工具的情况下运行吗???

或者我可以仅在Matlab中开发整个应用程序并将其部署为独立应用程序??? 谢谢..

5 个答案:

答案 0 :(得分:6)

有很多图像处理库,例如Java:ImageJApache Commons项目也有一个。例如,如果您需要更高级别的计算机视觉库,那么C ++的OpenCV也具有Java绑定。

您也可以在Matlab中开发整个应用程序,但要部署独立应用程序,则需要许可Mathworks Builder NE(这可能很昂贵)。 Matlab非常适合研究和原型设计。

还有其他替代方案可以快速进行原型设计,例如Python和PIL。

我认为最重要的是有很多选择。

答案 1 :(得分:6)

Java image utilities library:用于加载,编辑,分析和保存像素图像文件的Java库。

它支持各种文件格式。

为命令行提供演示应用程序。它也有AWT GUI工具包。

答案 2 :(得分:2)

Matlab是一种优秀的原型制作工具,正如 carlosdc 所指出的那样。 Matlab提供有关UI编程的有限选项。 GUIDE适用于小型项目,但对大型项目的帮助更大。

使用MATLAB Builder JA,您可以将Matlab代码编译为Java类。

关于实时绘制时间序列,像JFreeChart这样的库比较慢。

答案 3 :(得分:2)

我认为OpenCV 是用于图像处理的最佳库之一,但Java Advanced Imaging也非常好,但没有那么多的功能和示例。在JAI中颜色相似性很简单,但形状可能涉及更多代码。

如果您选择使用OpenCV,我认为您至少有两种可能的Java绑定实现。我的小组使用的是one。它有一些处理依赖性。

无论您选择哪种图书馆,都要为挫折做好准备。 Matlab用户习惯于它提供的所有优秀功能,当他们必须将代码移植到其他语言时,最终必须编写更多代码。

答案 4 :(得分:2)

好吧,经过长时间的搜索,我终于找到了部署Matlab代码的方法以及独立应用程序的java ..

步骤很简单:: - 1.转到并获取位于location ::

的Javabuilder.jar文件

<强> Matlab的\工具箱\ javabuilder \罐\ javabuilder.jar

接下来在Matlabs命令行中输入 deploytool ...

现在将打开deploytool窗口,创建一个新的java项目。 选择要使用的Matlab文件。

deploytool现在将 .m 文件转换为 .jar 文件。

现在使用上述两个jar文件并开发java兼容的matlab代码

这就是你可以创建matlab的独立应用程序的方式..