我有一個圖像,我正在提取一個子圖像以供給我的神經網絡。我試圖計算同一鄰域中所有子圖像的平均輸出。所以如果我有一個原始圖像(m×n像素),並且在大小(sub_width和sub_height)處發現了一個子圖像(sub_x,sub_y),我還需要提取相同大小的子圖像(sub_width和sub_height )在(sub_x +米,sub_y + n),其中m和n爲1去 - 3.查找相鄰子圖像的算法
我已經有一個工作溶液:
for (int subX = (x-3); subX < (x+4); subX++)
for (int subY = (y-3); subY < (y+4); subY++)
if ((subX > 0) && (subY > 0))
if (((subX + width) < img.getWidth()) && ((subY + height) < img.getHeight())){
counter++;
testingImage = img.getSubimage(subX, subY, width, height);
}
的x,y,寬度和高度均爲整數我發現的原始子圖像。
img是原始的全尺寸BufferedImage。
雖然我對錶演不太滿意。有沒有更快/更聰明的方法來做到這一點?
'img.getSubimage'花費了多少時間?如果很多,也許你可以用你自己的專門功能替換它。 – mik01aj 2014-12-05 21:25:08
我沒有時間說實話。但是,我不認爲這個問題與getSubimage方法有關。性能非常好,直到我添加了這個代碼塊。我大大增加了所需的計算。這只是應用程序的一小部分,但我有N個元素需要通過這個代碼塊。以前我只有一個subImage,所以沒問題。 – wFateem 2014-12-05 22:17:06