PDA

View Full Version : نوشتن فیلتر Blur



seyedVB
سه شنبه 31 فروردین 1389, 00:53 صبح
سلام . من دارم با سی شارپ فیلتر Blur رو می نویسم . و یک الگوریتم هست که می گه

رنگ یک پیکسل باید میانگین رنگ های چهار طرفش(بالا ، پایین ، چپ ، راست ) باشه .

من اینو نوشتم ولی Output اصلا شبیه Blur نیست .

شبیه اینه :

http://sites.google.com/site/parkhidpage/filecap/isitblur.jpg?attredirects=0


Bitmap bitmap = new Bitmap(sapPicture.Image);

for(int x=0;x<bitmap.Width-1;x++)
for (int y = 0; y <bitmap.Height-1; y++)
{
if (y>=1) Up = bitmap.GetPixel(x, y - 1);
if (x >= 1) Left = bitmap.GetPixel(x - 1, y);
Down = bitmap.GetPixel(x, y + 1);
Right = bitmap.GetPixel(x + 1, y);
int avg= Up.ToArgb() + Down.ToArgb() + Left.ToArgb() + Right.ToArgb();
bitmap.SetPixel(x, y, Color.FromArgb(avg/4));
}
//displaying the effect
sapPicture.Image = bitmap;

ramin2nt2
سه شنبه 31 فروردین 1389, 01:57 صبح
سلام

لینک زیر رو بررسی کنید

http://www.codeproject.com/KB/GDI-plus/csharpfilters.aspx