在C中加速数组中的三维查找表

时间:2016-02-29 04:48:55

标签: arrays

我有一个三维查找表LUT [WIDTH] [HEIGHT] [DEPTH]。我必须将此LUT应用于大图像(4k x 4k)中的每个像素,我需要提高性能。我尝试了以下方法:

u8 lut[1024][1024][32];
u16 image[4096][4096];
u16 image2[4096][4096];

for (z = 0; z < 32; z++) {
    for (y = 0; y < 4096; y++) {
        for (x = 0; x < 4096; x++) {
             ci1 = colorindex = image[x + y*4096]
             ci2 = colorindex2 = image2[x + y*4096]
             result_image[x + (y*4096) + (z*4096*4096)] = lut[ci + (1024*ci2) + (1024*1024)*z];
        }       
     }

但结果并不好。有没有办法改善这个?

0 个答案:

没有答案