注册 登录
编程论坛 VC++/MFC

我这个中值滤波的程序应该如何优化呢?

满口黄牙 发布于 2014-05-15 20:04, 545 次点击
int x,y,z,p,q;
    float o;
    for(x=0;x<20;x++)
        for(y=0;y<360;y++)
            for(z=0;z<800;z++)
            {
                if(y>1&&z>1)
                float aa[9]={gRef0[x][y][z],gRef0[x][y-1][z],gRef0[x][y-2][z],gRef0[x][y][z-1],gRef0[x][y-1][z-1],gRef0[x][y-2][z-1],gRef0[x][y][z-2],gRef0[x][y-1][z-2],gRef0[x][y-2][z-2]};
                for(p=0;p<8;p++)
                    for(q=0;q<8-p;p++)
                    {
                        if(aa[p]>aa[p+1])
                        {
                            o=aa[p];
                            aa[p]=aa[p+1];
                            aa[p+1]=o;
                        }
                    }
                gRef[x][y-1][z-1]=aa[5];
            
            }
}

这个程序占用太多内存,请问各位牛人朋友,我应该如何优化呢?能力有限,恳请大神们帮忙看看啊
0 回复
1