首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenCV -检测调查问卷中复选框的手写标记

OpenCV -检测调查问卷中复选框的手写标记
EN

Stack Overflow用户
提问于 2019-05-07 03:14:22
回答 1查看 1.9K关注 0票数 4

我正在做很多病人入院调查问卷。以下是调查问卷的扫描示例。我需要处理它们并将其存储到数据库中,但我在检测这些手写标记时遇到了问题:

病人摄入量问卷

问卷中有不同类型的分数。某些复选框被涂成黑色。某些复选框有勾号或十字标记。这些标记表示复选框处于选中状态。我需要使用opencv2来识别选中了哪些框。

我已经尝试了光学字符识别,但结果并没有真正的帮助。这些标记的形状太多,因此OCR会将它们识别为不同的字符。我需要找出在调查问卷中选中了哪些框。cv2本可以解决这个问题,但我毫无头绪。

代码语言:javascript
复制
# Expected input: An image of Questionnaire

# Expected output:
Have you seen other health care providers for your problems of dizziness 
and/or imbalance? [selected] Yes [unselected] No

Have you been through a program of Vestibular and Balance Rehabilitation 
Therapy? [selected] Yes [unselected] No

=============================
[unselected] vertigo
[unselected] falling
...
[selected] Drunk-like

=============================
[selected] Vertigo
[selected] Falling
[selected] Fatigue
[selected] Wooziness
[selected] Spinning
[unselected] Disconnected

我之前尝试使用Python tesseract OCR包:

代码语言:javascript
复制
from PIL import Image
import pytesseract
path ="page1.jpg"
img = Image.open(path)
text = pytesseract.image_to_string(img, lang='eng', config='-c preserve_interword_spaces=1 --psm 6')
print text
代码语言:javascript
复制
O Vertigo           O Falling              O Fatigue                 W Vertigo          YA Falling             y[ Fatigue
[ Wooziness     O Spinning         O Disconnected       A \Wooziness     Q Spinning         [ Disconnected
O Imbalance      B Drunk-like        O Swirling             O Imbalance      O Drunk-like       @ Swirling      ;
O Faint            [ Rocking        O Can’tfocus         M Faint           4 Rocking          O Can’t focus
O Lightheaded O Swaying -~ . -0 Unsteady       O Lightheaded O Swaying       N Unsteady
O “onaboat” O Swimming sensation                      Weonaboat” @ Swimming sensation
O Other:                                                        0 Other:

我的想法是:如果OCR将矩形复选框识别为字符'O‘或数字'0',则应取消选中该复选框。否则,它应该被选中。基于该规则,我可以根据OCR结果来检测手写标记。我将在几个样本上进行测试,并查看精度,尽管我不确定这是否可行。如果是这样的话,我将在几分钟后返回到这篇文章。

EN

回答 1

Stack Overflow用户

发布于 2020-09-25 21:21:43

从示例中可以看出,黑色在标记的复选框区域中占主导地位。您可以使用OCR通过检测文本来调整复选框区域的方向(假设您的扫描位置从不精确),我建议您只计算复选框区域中像素值的平均值(只要您使用区域大小对其进行平均,就不必达到100%的精度)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56011081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档