>>456
c[blw*i+3*j+0]=0; //Blue
c[blw*i+3*j+1]=0; //Green
//c[blw*i+3*j+2]=0; //Red
を
const unsigned offset = blw * i + 3 * j;
const unsigned gray = (c[offset] + c[offset + 1] + c[offset + 2]) / 3;
c[offset] = gray;
c[offset + 1] = gray;
c[offset + 2] = gray;
にすればrgb平均化によるグレイ化ができる。
但し、要求仕様によってはgrayの式を調整する必要あり。