【数字图像处理】图像分块:不重叠

将高120,宽160的图像分块,分成5*5的方块,不重叠,并求每块的平均值与方差

   int r = 0,c = 0;   //用来标识块索引
    float aver[24][32]={0},pri[24][32]={0};
    int sum[24][32]={0};
    float pri_value=0.0;
    for (int ss = 0; ss < 120; ss++)
    {
        r = ss / 5; //行索引
        for (int i = 120*r /24; i < 120*(r + 1) / 24; i++)
        {
            for (int j = 0; j < 160;j++)
            {    
                 c= j / 5;  //列索引    
                 sum[r][c]+=Image_Use[i][j];
            }
        }    
    }
    
    //平均值
    for(i=0;i<24;i++)
      for(int j=0;j<32;j++)
      {
        aver[i][j]=(float)(sum[i][j])/25.0;
      }
    
    
    //方差
     for (int ss = 0; ss < 120; ss++)
    {
        r = ss / 5; //行索引
        for (int i = 120*r /24; i < 120*(r + 1) / 24; i++)
        {
            for (int j = 0; j < 160;j++)
            {    
                 c= j / 5;  //列索引    
                 pri[r][c]+=(Image_Use[i][j]-aver[r][c])*(Image_Use[i][j]-aver[r][c]);
            }
        }    
    }
      for(i=0;i<24;i++)
      for(int j=0;j<32;j++)
      {      
        pri[i][j] = pri[i][j]/25.0;
      }
原文地址:https://www.cnblogs.com/-wenli/p/12023247.html