void blur(int height, int width, RGBTRIPLE image[height][width]) { // grid: , width -1 is leftwards , width +1 is rightwards, height +1 is above height -1 is below int TempRed =0; int TempBlue=0; int TempGreen=0; int pixelcount=0; RGBTRIPLE buffer2[height][width]; RGBTRIPLE blur[height][width]; for(int y = 0 ; y < height ; y++) { for(int x = 0 ; x < width ; x++) { buffer2[y][x]= image[y][x]; } } for(int y = 0 ; y < height ; y++) { for(int x = 0 ; x < width ; x++) { if(y - 1 > -1 && x - 1 > -1) { TempBlue +=buffer2[y-1][x-1].rgbtBlue; TempRed +=buffer2[y-1][x-1].rgbtRed; TempGreen +=buffer2[y-1][x-1].rgbtGreen; pixelcount++; } if(y - 1 > -1) { TempBlue +=buffer2[y-1][x].rgbtBlue; TempRed +=buffer2[y-1][x].rgbtRed; TempGreen +=buffer2[y-1][x].rgbtGreen; pixelcount++; } if(y - 1 > -1 && x + 1 < width) { TempBlue +=buffer2[y-1][x+1].rgbtBlue; TempRed +=buffer2[y-1][x+1].rgbtRed; TempGreen +=buffer2[y-1][x+1].rgbtGreen; pixelcount++; } if(x - 1 > -1) { TempBlue +=buffer2[y][x - 1].rgbtBlue; TempRed +=buffer2[y][x - 1].rgbtRed; TempGreen +=buffer2[y][x - 1].rgbtGreen; pixelcount++; } TempBlue +=buffer2[y][x].rgbtBlue; TempRed +=buffer2[y][x].rgbtRed; TempGreen +=buffer2[y][x].rgbtGreen; pixelcount++; if(x + 1 < width) { TempBlue +=buffer2[y][x+ 1].rgbtBlue; TempRed +=buffer2[y][x+ 1].rgbtRed; TempGreen +=buffer2[y][x+ 1].rgbtGreen; pixelcount++; } if(y + 1 < height && x - 1 > -1) { TempBlue +=buffer2[y+1][x-1].rgbtBlue; TempRed +=buffer2[y+1][x-1].rgbtRed; TempGreen +=buffer2[y+1][x-1].rgbtGreen; pixelcount++; } if(y + 1 < height ) { TempBlue +=buffer2[y+1][x].rgbtBlue; TempRed +=buffer2[y+1][x].rgbtRed; TempGreen +=buffer2[y+1][x].rgbtGreen; pixelcount++; } if(y + 1 < height && x + 1 < width) { TempBlue +=buffer2[y+1][x+1].rgbtBlue; TempRed +=buffer2[y+1][x+1].rgbtRed; TempGreen +=buffer2[y+1][x+1].rgbtGreen; pixelcount++; } blur[y][x].rgbtBlue = round(TempBlue/pixelcount); blur[y][x].rgbtRed = round(TempRed/pixelcount); blur[y][x].rgbtGreen = round(TempGreen/pixelcount); } } for(int y = 0 ; y < height ; y++) { for(int x = 0 ; x < width ; x++) { image[y][x]= blur[y][x]; } } return; }