#include "image.h" #include main(int ac,char *av[]) { ImageData *img,*outimg; int res; int x,y,mx,my; if(ac<3) { printf("パラメータが足りません"); return; } // ファイルより画像データの読み込み res=readBMPfile(av[1],&img); if(res<0) { printf("画像が読めません"); return; } // 結果格納用画像データ作成 outimg=createImage(img->width,img->height,24); effect(img,outimg); writeBMPfile(av[2],outimg); disposeImage(img); disposeImage(outimg); } // エフェクト処理 int effect(ImageData *img,ImageData *outimg) { int x,y; int val; int rr,gg,bb; int gray; int adr; Pixel col; for(y=0;yheight;y++) { for(x=0;xwidth;x++) { val = getPixel(img,x,y,&col); //画像上の画素情報を取得 rr=col.r; gg=col.g; bb=col.b; if(rr>gg) gray=rr; else gray=gg; if(bb>gray) gray=bb; col.r = gray; col.g = gray; col.b = gray; setPixel(outimg,x,y,&col); // 画像に値をセットする } } return TRUE; }