图像文字颜色检测

| 分类 技术随笔  | 标签 图像处理 

这里讨论背景元素简单的纯色背景的情况。

过程如下:

  1. 取图像开头的像素得到背景颜色
  2. 对图像做边缘检测
  3. 使用形态学操作平滑边缘
  4. 对边缘做轮廓检测,并做孔洞填充
  5. 遍历原图的所有像素,如果该像素坐标位于字体轮廓内,且与背景颜色并不相似,则对其颜色进行计数,像素出现次数最多的颜色就是字体的颜色。

问题:

因为文字和背景过度区域有很多中间颜色的像素,所以需要进行去除,主要是判断和背景颜色是否相似。那如何判断和背景颜色相似?很多背景颜色和文字颜色都是蓝色,只是一个深一点,一个浅一点,这样将RGB转换到HSB比较色调是不行的。我还是采用了比较RGB值的差的方法。

相关链接:

  1. 颜色空间转换
  2. RGBtoHSB, java docs
  3. 老铁!怎么识别一张图片上文字的颜色

上一篇     下一篇