现在我有512*512*3 numpy数组,我想对每个8*8块应用一个函数,例如,dct转换,有没有任何built_in模块可以做到这一点?我试图以天真的方式实现它
for c in xrange(3):
for x in xrange(0, 512, 8):
for y in xrange(0, 512, 8):
img[x:x + 8, y:y + 8, c] = dct_2d(img[x:x + 8, y:y + 8, c])
img[x:x + 8, y:y + 8, c] = idct_2d(img[x:x + 8, y:y + 8, c])
Run Code Online (Sandbox Code Playgroud)
这需要很长时间来迭代和计算.