如何編寫一個簡單的方法,將源單元格映射到目標,然後平均?
public static boolean matrixReduce(double[][] dst, double[][] src) {
double dstMaxX = dst.length - 1, dstMaxY = dst[0].length - 1;
double srcMaxX = src.length - 1, srcMaxY = src[0].length - 1;
int count[][] = new int[dst.length][dst[0].length];
for (int x = 0; x < src.length; x++) {
for (int y = 0; y < src[0].length; y++) {
int xx = (int) Math.round((double) x * dstMaxX/srcMaxX);
int yy = (int) Math.round((double) y * dstMaxY/srcMaxY);
dst[xx][yy] += src[x][y];
count[xx][yy]++;
}
}
for (int x = 0; x < dst.length; x++) {
for (int y = 0; y < dst[0].length; y++) {
dst[x][y] /= count[x][y];
}
}
return true;
}
謝謝JB Nizet。你是對的,我很抱歉,但是我對所有的搜索感到有些茫然。我剛剛編輯了這個問題,我發佈了這個庫。 – Xxxo
你有沒有任何代碼顯示你迄今爲止的嘗試? –
@TimBiegeleisen No Tim。我想實現的這個過程只是一個更大的過程的一小部分。所以,我沒有任何代碼能夠顯示我迄今所做的工作。此外,我不問任何解決方案:)只是一個如何使用Java插值的例子。 – Xxxo