JDK中的类可以处理图像跟踪过程的哪些部分?

时间:2013-11-09 10:09:55

标签: java image vector-graphics

我有一项研究任务,我需要编写一个Java程序来跟踪(矢量化)图像。

我可能只使用JDK 1.5及以上版本;所以,我必须在必要时实现一些算法。

程序必须通过以下步骤:

  1. 色彩还原(色彩量化); [对于一组颜色或最多颜色数]
  2. 删除[具有给定最大尺寸]的区域
  3. 边缘检测
  4. 简化段[最小值是Douglas-Peucker算法]
  5. 将细分细分为曲线
  6. 输出到SVG
  7. 我想确保尽可能使用JDK API。然而,我以前的研究并没有真正提供很多有用的资源。 (到目前为止,最有用的资源是JAI的Sun文档 - Java Advanced Imaging API - this location

    我的问题是:JDK中的类可以处理或促进哪些步骤?


    由于这是一个相当全面的问题,我会尽可能地提出250点奖励。

3 个答案:

答案 0 :(得分:1)

使用JDK编写的类可以处理图像跟踪过程的所有方面(因为Java是Turing完整的,并且存在图像跟踪器,它们可以用Java实现 - QED)。至于你的具体调查领域,

1)是的! JAI包括quantization种方法 6)是的!试试Batik SVG Toolkit,尤其是SVG Generator 2-5)你将不得不实施。 4)特别看起来有一些可用的实现,但我没有详细调查。

答案 1 :(得分:1)

  

图像处理工具的Java选择是JAI。这些文档可用,并与其他Java工具兼容。

您是否需要实施此类图像处理任务和算法,或者只是应用并获取其效果?即使你可能宁愿使用纯JDK,我也坚持要求外部库得到帮助。 FMHO将是最好的选择。

我建议去Open CV,这是一个非常完整和稳定的图像处理库。它现在具有Java支持和良好的文档可用性,您还会发现受到威胁的community

你提到的东西:

  1. 色彩还原(色彩量化); [对于一组颜色或最大数量的颜色]
  2. 删除[具有给定最大尺寸]的区域
  3. 边缘检测简化段[最小值是Douglas-Peucker算法]
  4. 将细分细分为曲线
  5. 就像使用库函数和SVG一样简单我认为它也可以用它来执行。

答案 2 :(得分:1)

  

图像跟踪过程的哪些部分可以由类处理   JDK?

Java可以处理图像处理程序所需的所有进程,没问题。真正的问题是,您想编写自己的课程还是使用第三方图书馆?