0

几天前,我带着一个目标发现了 AForge。我希望能够操纵图像的颜色。但是,在尝试了几种不同的方法后,我一直无法找到解决方案。我仔细查看了他们提供的文档,但这对我没有任何帮助。我一直在使用的文档的具体部分是: http ://www.aforgenet.com/framework/docs/html/3aaa490f-8dbe-f179-f64b-eedd0b9d34ac.htm

他们给出的例子:

// create filter
YCbCrLinear filter = new YCbCrLinear( );
// configure the filter
filter.InCb = new Range( -0.276f, 0.163f );
filter.InCr = new Range( -0.202f, 0.500f );
// apply the filter
filter.ApplyInPlace( image );

我为按钮单击事件复制了它,但未指定它的“图像”部分。我将图片框中的图像转换为位图,然后在最后一行引用它,认为它会起作用。但这完全没有影响。我的代码如下:

private void ColManButton_Click(object sender, EventArgs e)
{
Bitmap newimage = new Bitmap(pictureBox1.Image);
YCbCrLinear filter = new YCbCrLinear();
filter.InCb = new Range(-0.276f, 0.163f);
filter.InCr = new Range(-0.202f, 0.500f);
filter.ApplyInPlace(newimage);
}

我的问题本质上是,对于任何熟悉或愿意帮助这个框架的人,我如何在按钮的单击事件下使用 AForge 的 YCbCrLinear 类来获取我的图像并操纵它的颜色?

4

2 回答 2

2

请记住在应用过滤后设置图片框图像。

private void ColManButton_Click(object sender, EventArgs e)
{
    Bitmap newimage = new Bitmap(pictureBox1.Image);
    YCbCrLinear filter = new YCbCrLinear();
    filter.InCb = new Range(-0.276f, 0.163f);
    filter.InCr = new Range(-0.202f, 0.500f);
    filter.ApplyInPlace(newimage);

    pictureBox1.Image = newimage;
}
于 2016-01-30T23:34:31.577 回答
-1

在 aforge 网站上,您可以下载示例过滤器应用程序的源代码,您尝试过吗?

于 2012-11-06T19:07:36.207 回答