OCR问题求助

tztz520 2011-05-04 10:58:12
用office自带的ocr运行不起来, 当用到.OCR miLANG_CHINESE_SIMPLIFIED就会报异常了, 不知道各位有没这方面的经验.

如果有其它更好的OCR方面的控件或DLL,可不可以透露一下,谢谢
...全文
393 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2011-05-04
  • 打赏
  • 举报
回复
lz潜水好久。

微软的OCR是买的清华紫光的。。。
tztz520 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 vbman2003 的回复:]
久违了,午夜逛街...
[/Quote]

是很久不见, 但感觉还是很熟悉
tztz520 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 asftrhgjhkjlkttttttt 的回复:]
引用楼主 tztz520 的回复:
用office自带的ocr运行不起来, 当用到.OCR miLANG_CHINESE_SIMPLIFIED就会报异常了, 不知道各位有没这方面的经验.

如果有其它更好的OCR方面的控件或DLL,可不可以透露一下,谢谢

必须是OFFICE 2003版的,请确定你的版本
[/Quote]

2003, 2007都试过了
tztz520 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhao4zhong1 的回复:]
引用C:\Program Files\Common Files\Microsoft Shared\MODI\11.0\MDIVWCTL.DLL

Private Sub Command1_Click()
Dim strLayoutInfo As String
Dim miDoc As Object
Dim modiLayout As Object

'初始化并加载文档
Se……
[/Quote]

都尝试过这些代码了, 但没什么效果
vbman2003 2011-05-04
  • 打赏
  • 举报
回复
久违了,午夜逛街...
tztz520 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dbcontrols 的回复:]
转一点东西来,顺便学习学习

1、没有安装OFFICE 2003的安装一下_注意_一定要把Document Imaging勾上
2、把C:\Windows\system32\regsvr32.exe复制到C:\Program Files\Common Files\Microsoft Shared\MODI\11.0中_把里面所有DLL都拖到regsvr32.exe上注册下
3、本人建一张有……
[/Quote]

谢谢
现在还是人类 2011-05-04
  • 打赏
  • 举报
回复
现成的没用过,我都是自己开发的。
但是还是用过一些OCR方面的软件,只是感觉识别率不是很理想。
孤独剑_LPZ 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用楼主 tztz520 的回复:]
用office自带的ocr运行不起来, 当用到.OCR miLANG_CHINESE_SIMPLIFIED就会报异常了, 不知道各位有没这方面的经验.

如果有其它更好的OCR方面的控件或DLL,可不可以透露一下,谢谢
[/Quote]
必须是OFFICE 2003版的,请确定你的版本
赵4老师 2011-05-04
  • 打赏
  • 举报
回复
引用C:\Program Files\Common Files\Microsoft Shared\MODI\11.0\MDIVWCTL.DLL

Private Sub Command1_Click()
Dim strLayoutInfo As String
Dim miDoc As Object
Dim modiLayout As Object

'初始化并加载文档
Set miDoc = CreateObject("MODI.Document") '创建对象
miDoc.Create "z.tif" '加载图片文件

Screen.MousePointer = vbHourglass '设置光标忙
'识别
miDoc.Images(0).OCR miLANG_CHINESE_SIMPLIFIED, True, True '有用的就此一句,识别为中文简体

Set modiLayout = miDoc.Images(0).Layout '读出数据
strLayoutInfo = _
"Language: " & modiLayout.Language & vbCrLf & _
"Number of characters: " & modiLayout.NumChars & vbCrLf & _
"Number of fonts: " & modiLayout.NumFonts & vbCrLf & _
"Number of words: " & modiLayout.NumWords & vbCrLf & _
"Beginning of text: " & Left(modiLayout.Text, 50) & vbCrLf & _
"First word of text: " & modiLayout.Words(0).Text
MsgBox strLayoutInfo, vbInformation + vbOKOnly, "Layout Information"
Set modiLayout = Nothing
Set miDoc = Nothing
Screen.MousePointer = vbDefault
End Sub
dbcontrols 2011-05-04
  • 打赏
  • 举报
回复
转一点东西来,顺便学习学习

1、没有安装OFFICE 2003的安装一下_注意_一定要把Document Imaging勾上
2、把C:\Windows\system32\regsvr32.exe复制到C:\Program Files\Common Files\Microsoft Shared\MODI\11.0中_把里面所有DLL都拖到regsvr32.exe上注册下
3、本人建一张有文字的图片_便于测试_本人这里直接在Fireworks里打了四个字_并保存到f:\1.tif
4、打开VB建一工程_点击菜单中的"工程"->"引用"_找到Microsoft Office Document Imaging 11.0 Type Library_勾选添加
4、拖一个按钮到窗口上_双击按钮并输入代码:
Private Sub Command1_Click()

Dim miDoc As MODI.Document
Dim miWord As MODI.Word
Dim strWordInfo As String

Set miDoc = New MODI.Document
miDoc.Create "f:\1.tif"

miDoc.Images(0).OCR miLANG_CHINESE_SIMPLIFIED, True, True

Set miWord = miDoc.Images(0).Layout.Words(2)
MsgBox miWord.Text, vbInformation + vbOKOnly, _
"Word Information"

Set miWord = Nothing
Set miDoc = Nothing
End Sub

假如操作无误_您应该能够看到结果了
dbcontrols 2011-05-04
  • 打赏
  • 举报
回复
没这方面的经验.
ADOBE公司应该有这方面的产品
赵4老师 2011-05-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dbcontrols 的回复:]
转一点东西来,顺便学习学习

1、没有安装OFFICE 2003的安装一下_注意_一定要把Document Imaging勾上
2、把C:\Windows\system32\regsvr32.exe复制到C:\Program Files\Common Files\Microsoft Shared\MODI\11.0中_把里面所有DLL都拖到regsvr32.exe上注册下
3、本人建一张有……
[/Quote]
刚搞定了。
关键是安装或更新的时候“_注意_一定要把Document Imaging勾上!!!!!!!!!有木有!!!!!!!!!!”
赵4老师 2011-05-04
  • 打赏
  • 举报
回复
我以前在Win2000下安装了CHSOCR.msi后用二值化tif图识别是可以的。
刚才在Win2003下重新安装了CHSOCR.msi后在.Create时报错。
simon__sun 2011-05-04
  • 打赏
  • 举报
回复
http://www.pudn.com/downloads267/sourcecode/windows/detail1222716.html
看看这个有用吗
lxq19851204 2011-05-04
  • 打赏
  • 举报
回复
LZ神人!!
dbcontrols 2011-05-04
  • 打赏
  • 举报
回复
学习了,谢谢楼主分享
[Quote=引用 12 楼 tztz520 的回复:]
终于找到问题了, office 的OCR是一定要用二值化的图片来识别的, 如果是其它的有颜色的图就报些乱七八糟的错误来误导人, 比如会报 ocr running error, ep_dcom_ocr等. 希望大家以后不走弯路,避免这个问题, 我就是自己随便弄了一张图来害自己了.
[/Quote]
tztz520 2011-05-04
  • 打赏
  • 举报
回复
终于找到问题了, office 的OCR是一定要用二值化的图片来识别的, 如果是其它的有颜色的图就报些乱七八糟的错误来误导人, 比如会报 ocr running error, ep_dcom_ocr等. 希望大家以后不走弯路,避免这个问题, 我就是自己随便弄了一张图来害自己了.

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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