-1

ここで行われたように、3次スプライン補間を使用して中間点を取得するために画像処理に取り組んでいます。Java言語でこれを達成するにはどうすればよいですか。いくつかの要点があります:

  • x = 24、35、67、78、79。
  • y = 13, 45, 8, 45, 23. x=1 から 100 までの中間点を取得したい.

ここに画像の説明を入力

Javaで利用可能なライブラリまたは関数はありますか. 伝えてください。

4

2 に答える 2

2

Apache 共通数学ライブラリには、Akima アルゴリズムを使用してデータセットの 3 次スプライン補間を計算するために使用できる AkimaSplineInterpolator クラスがあります。

http://commons.apache.org/proper/commons-math/apidocs/org/apache/commons/math3/analysis/interpolation/AkimaSplineInterpolator.html

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.6.1</version>
</dependency>

以下のコードは、要件の完全な実装ではありません。ただし、これを出発点として、さらに構築することができます。お役に立てれば!

public static void main(String[] main) {
    double [] xDouble = new double [] {24.0, 35.0, 67.0, 78.0,79.0};
    double [] yDouble = new double [] {13.0, 45.0, 8.0, 45.0, 23.0};

    AkimaSplineInterpolator asi = new AkimaSplineInterpolator();
    PolynomialSplineFunction psf = asi.interpolate(xDouble, yDouble);

    for (PolynomialFunction pf : psf.getPolynomials()) {
        System.out.println(pf.polynomialDerivative());  
    }
}
于 2016-05-30T09:11:36.507 に答える
-2

JFree ( http://www.jfree.org/index.html )、JGraph、JGraphT ( http://jgrapht.org/ ) などのライブラリを見てみましょう。

于 2016-05-30T07:17:56.827 に答える