我正在進行圖像處理以獲得使用三次樣條插值的中間點,如同完成here。我如何用Java語言實現這一點。比如我有一些要點:如何使用三次樣條插值在java中獲得曲線?
- x = 24,35,67,78,79。
- Y = 13,45,8,45,23, 我想獲得的中間點爲x = 1至100。
是否有任何庫或功能在Java可用。請告訴。
我正在進行圖像處理以獲得使用三次樣條插值的中間點,如同完成here。我如何用Java語言實現這一點。比如我有一些要點:如何使用三次樣條插值在java中獲得曲線?
是否有任何庫或功能在Java可用。請告訴。
Apache常用數學庫有類AkimaSplineInterpolator,它可以用來計算使用Akima算法的數據集的三次樣條插值。
<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());
}
}
看一看libs,如JFree(http://www.jfree.org/index.html),JGraph和JGraphT(http://jgrapht.org/)。
這兩個庫都沒有包含'spline' – Mavie