1

画像をトレース (ベクトル化) するための Java プログラムを作成する必要がある研究課題があります。

JDK 1.5 以降のみを使用できます。そのため、必要に応じていくつかのアルゴリズムを実装する必要があります。

プログラムは次のステップを通過する必要があります。

  1. 減色 (色の量子化); [一組の色または最大色数の場合]
  2. 領域の削除 [指定された最大サイズ]
  3. エッジ検出
  4. セグメントを単純化 [最小は Douglas-Peucker アルゴリズム]
  5. セグメントを曲線に丸める
  6. SVG への出力

可能な限り JDK API を使用するようにしたいと考えています。しかし、私の以前の調査では、実際には多くの有用なリソースが見つかりませんでした. (これまでで最も役立つリソースは、この場所にある JAI (Java Advanced Imaging API) の Sun ドキュメントです)

私の質問は次のとおりです。これらのステップのうち、JDK のクラスによって処理 (または促進) できるのはどれですか?


これはかなり包括的な質問なので、できたら 250 ポイントの報奨金を出します。

4

3 に答える 3

1

What parts of the image tracing process can be handled by classes in the JDK?

Java can handle all the processes required by your image processing program, no problem. The real question is , do you want to write your own classes or use a 3rd party library ?

于 2013-11-16T13:52:52.107 に答える
1

画像処理ツールの Java の選択肢はJAIです。利用可能なドキュメントがあり、残りの Java ツールと互換性があります。

そのような画像処理タスクとアルゴリズムを実装する必要がありますか、それとも単に適用してその効果を得る必要がありますか? 純粋な JDK を使用する方がよい場合でも、外部ライブラリを使用することをお勧めします。最良の選択肢となるFMHO。

本当に完全で安定した画像処理ライブラリであるOpen CVを使用することをお勧めします。現在、Java のサポートと優れたドキュメントの入手可能性があり、侵害されたコミュニティも見つかります。

あなたが言及したようなもの:

  1. 減色 (色の量子化); [一組の色または最大色数の場合]
  2. 領域の削除 [指定された最大サイズ]
  3. エッジ検出 セグメントを単純化 [最小は Douglas-Peucker アルゴリズム]
  4. セグメントを曲線に丸める

ライブラリの機能を使うのと同じくらい簡単で、SVGについてもそれで実行できると思います。

于 2013-11-14T23:05:39.220 に答える