I15 Answer


void streakVertical( image img )
{
  int r, c, pixA, pixB, pixC, pixD, max, avg ;

  for ( r = 0; r<img.nrows-3; r++ )
    for ( c = 0; c<img.ncols; c++ )
    {
      pixA = getPixel( img, r, c );
      pixB = getPixel( img, r+1, c );
      pixC = getPixel( img, r+2, c );
      pixD = getPixel( img, r+3, c );
      avg = (pixA + pixB + pixC + pixD)/4;

      setPixel( img, r, c, (unsigned char)avg );
    }
}

Comments: Notice how the loops avoid going out of bounds.


back