【示例教程】LEADTOOLS中如何利用代码去除图片中特定的颜色

本篇教程演示Leadtools中如何通过使用BalanceColorsCommand来删除一个特定的颜色。

本篇教程演示Leadtools如何通过使用BalanceColorsCommand来删除一个特定的颜色。 
Leadtools 19总套包下载>>>
 这是需要处理的输入图像,各种颜色的文本。 在这里,底部的红色文字也会被包括到到黑色的平面,所以它也会被删除掉。

【示例教程】LEADTOOLS中如何利用代码去除图片中特定的颜色
此语法将BalanceColorsCommand应用于红色的参数没有权重,而绿色和蓝色的参数具有标准的权重。
    RasterCodecs codecs = new RasterCodecs();    RasterImage image = codecs.Load(imagePath);    BalanceColorsCommand bcc = new BalanceColorsCommand(       new BalanceColorCommandFactor(0, 0, 0), // red       new BalanceColorCommandFactor(0, 1, 0), // green       new BalanceColorCommandFactor(0, 0, 1)); // blue    bcc.Run(image);

 下图为处理后的效果,有效地去除了红色色调。剩余的图像是青色的。

【示例教程】LEADTOOLS中如何利用代码去除图片中特定的颜色
可以使用相同的过程来分离颜色平面,然后使用AddCommand重新组合它们。 但是,如果青色平面实际上是黑色平面的反色,则在执行AddOperation之前需要将其去除。
ColorSeparateCommand csc = new ColorSeparateCommand(ColorSeparateCommandType.Cmyk);    csc.Run(image);    csc.DestinationImage.RemovePageAt(4); // page 4 is black plane    csc.DestinationImage.RemovePageAt(1); // page 1 is cyan plane    AddCommand ac = new AddCommand(AddCommandType.Add);    ac.Run(csc.DestinationImage);    InvertCommand ic = new InvertCommand();    ic.Run(ac.DestinationImage);     AutoBinarizeCommand abc = new AutoBinarizeCommand();    abc.Run(ac.DestinationImage);

这是输出的最终效果图片,黑色文本和红色文本以编程方式被删除,可以最后用于OCR。

【示例教程】LEADTOOLS中如何利用代码去除图片中特定的颜色

【示例教程】LEADTOOLS中如何利用代码去除图片中特定的颜色
标签:图像处理

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2017年11月5日
下一篇 2017年11月5日

相关推荐

发表回复

登录后才能评论