0

我是 Aforge.net 的新手。
我已经使用 Aforge.Net 使用 YCbCr 过滤器进行了过滤和图像处理

YCbCrFilter.Y = new Range(0, 1);
YCbCrFilter.Cb = new Range(-0.1862745098039216f, 0.0294117647058824f);
YCbCrFilter.Cr = new Range(0.0137254901960784f, 0.2254901960784314f);
// apply the filter
var YCbCrFilteredImage = YCbCrFilter.Apply(bitmap);

我需要将结果图像(即YCbCrFilteredImage)转换为Grayscale图像,以便稍后将其转换为黑白图像。
那么如何进行灰度转换呢?

4

1 回答 1

0

Salam Ruba 使用这个灰度值 Grayscale(0.2125, 0.7154, 0.0721) 和阈值 BradleyLocalThresholding 是这个库中最好的。也可以代替 YCbCrFilter 也许你想使用HSL 过滤,这里是你的代码

    YCbCrFiltering YCbCrFilter = new YCbCrFiltering();
    YCbCrFilter.Y = new Range(0, 1);
    YCbCrFilter.Cb = new Range(-0.1862745098039216f, 0.0294117647058824f);
    YCbCrFilter.Cr = new Range(0.0137254901960784f, 0.2254901960784314f);
    // apply the filter
    var YCbCrFilteredImage = YCbCrFilter.Apply(bitmap);
    Grayscale gfilter = new Grayscale(0.2125, 0.7154, 0.0721);
    YCbCrFilteredImage = gfilter.Apply(YCbCrFilteredImage);
    BradleyLocalThresholding thfilter = new BradleyLocalThresholding();
    thfilter.ApplyInPlace(YCbCrFilteredImage);

您现在可以搜索 blob;)

于 2016-05-15T19:02:41.630 回答