先说一下:对于放射胶片OCR识别来说胶片上80%以上区域都属于是无用部分
前几年在一家杭州医疗科技公司做胶片自助打印项目 用到的其中一个辅助小模块,本意是想尽可能去除放射胶片内容的杂质部分,提升OCR准确率的同时减少效率(早期整个项目是站长从0到1夜以继日【996】一点一点敲出来的OCR这块不太成熟,无关区域干扰导致识别效果不理想,图片大识别效率低还大量占用资源)。
- 识别真正用到的可能就是边角的一小块文字区域,其他部分都是无用的,甚至于干扰到OCR的识别准确率。
- 图片越大软件处理起来也更加吃计算机资源,效率也比较低(主要还是当时计算机配置一般,做过的这行的都知道,面向用户的这块硬件医疗公司都是不愿投入太多的)
所以 这个模块的作用就是OCR前初步过滤一遍 把比较符合识别要求的文本区域识别出来,至少能过滤掉50%以上的杂质区域,会得到很多文字区域的小图再进行OCR识别,准确率和效率都会提升很多。
基于c#+Opencvsharp实现的图像文字区域坐标检测
基于openv膨胀 腐蚀等文字核心逻辑算法 在图片中检测出包含文字的区域 结合ocr可提高图像识别的精确度以及提升效率 源码开箱即用
运行效果图如下:
注意:本项目基于.net5.0框架编写 可自行移植至.net framework(建议4.0以上 太低了Opencvsharp4可能有兼容问题)