ここで行われたように、3次スプライン補間を使用して中間点を取得するために画像処理に取り組んでいます。Java言語でこれを達成するにはどうすればよいですか。いくつかの要点があります:
- x = 24、35、67、78、79。
- y = 13, 45, 8, 45, 23. x=1 から 100 までの中間点を取得したい.
Javaで利用可能なライブラリまたは関数はありますか. 伝えてください。
ここで行われたように、3次スプライン補間を使用して中間点を取得するために画像処理に取り組んでいます。Java言語でこれを達成するにはどうすればよいですか。いくつかの要点があります:
Javaで利用可能なライブラリまたは関数はありますか. 伝えてください。
Apache 共通数学ライブラリには、Akima アルゴリズムを使用してデータセットの 3 次スプライン補間を計算するために使用できる AkimaSplineInterpolator クラスがあります。
<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());
}
}
JFree ( http://www.jfree.org/index.html )、JGraph、JGraphT ( http://jgrapht.org/ ) などのライブラリを見てみましょう。