如何利用VFP 来对JPG 图片 进行识别

fdz81 2015-06-13 10:20:50

如图 是学生没有填涂的空图,如果现在有学生填涂了,想识别出来,考生填涂的字母及对应的位置。请问如何实现,最好有例子或关键程序段。
...全文
2378 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
flycap995 2016-08-31
  • 打赏
  • 举报
回复
VFP可以实现答题卡的阅读功能,前提是对图像内像素位置和颜色进行分析,我没有这方面的具体例子,但是我写过对图像内特定颜色进行识别的代码。
liups 2015-08-03
  • 打赏
  • 举报
回复
光标阅读机是这个的专用设备 要先定义卡,左侧那一列称为同步头,和其他左右向的黑块,确保了定位 有API函数可以实现各种功能,只要调用就好了 不要直接处理图像
zhaihs 2015-07-28
  • 打赏
  • 举报
回复
看楼主发的图应该是专门的填涂卡,有专门的OMR 设备读取啊。 自己写代码,针对JPG识别,理论上是能达到的,但是准确的定位是个问题。 你能保证扫描的时候文件定位就是准确的吗? 如果不是准确的,就需要考虑如何利用那一圈小黑块辅助定位的的问题了。
dfwxj 2015-07-26
  • 打赏
  • 举报
回复
VFP可能没这能力,应该需要专业设备来处理。就算能识别,那么多填涂卡谁扫描进电脑?
fdz81 2015-06-15
  • 打赏
  • 举报
回复
周末研究一下
xuzuning 2015-06-14
  • 打赏
  • 举报
回复
vfp 不太适合做这种事情,给一个简单的测试例,已提供思路
PUBLIC oform1

oform1=NEWOBJECT("form1")
oform1.Show
RETURN


**************************************************
*-- Form: form1 (d:\amp\web\vfp\ocr.scx)
*-- 父类: form
*-- 基类: form
*
DEFINE CLASS form1 AS form


Top = 0
Left = 0
Height = 361
Width = 433
DoCreate = .T.
Caption = "Form1"
Name = "Form1"


ADD OBJECT command1 AS commandbutton WITH ;
Top = 336, ;
Left = 168, ;
Height = 25, ;
Width = 48, ;
Caption = "加载", ;
Name = "Command1"


ADD OBJECT label1 AS label WITH ;
AutoSize = .T., ;
BackStyle = 0, ;
Caption = "Label1", ;
Height = 16, ;
Left = 228, ;
Top = 340, ;
Width = 38, ;
Name = "Label1"


PROCEDURE MouseMove
LPARAMETERS nButton, nShift, nXCoord, nYCoord
Local c,r,g,b
c = ThisForm.Point(nXCoord, nYCoord)
c = ((c % 256) + (int(c/256)%256) + (int(c/256/256))) /3
*c = IIF(c < 128, 1, 0)
ThisForm.Label1.Caption = IIF(c < 64, '有', '无')
*WAIT WINDOW TRANSFORM(nXCoord) +',' + TRANSFORM(nYCoord) + ':' + TRANSFORM(c) NOWAIT
ENDPROC


PROCEDURE command1.Click
thisform.picture="ocr001.bmp"
ENDPROC


ENDDEFINE
*
*-- 结束定义: form1
**************************************************


探索左侧和右下角的定位块并计算出答题框的坐标,遍历就可以

2,717

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧