vkseeion.runocr OCR识别记录
· 3 min read
微信小程序的VisionKit 拥有OCR能力,但是这个能力有点弱。
微信小程序拥有OCR检测,来自于VisionKit 视觉能力。
记录一下跑起来过程中遇到的几个问题。
官方文档问题
我们看到官方文档OCR这里,有一些片段告诉你怎么用,但是只有片段,因此你如果把这些代码复制粘贴到你的代码中,是跑不起来的。
官方也提供了一个photo-ocr-detect github样例,但是看起来很复杂。
没有非常快速上手的样例。
ai编程
尝试让ai来生成代码,ai确实会生成,但是代码跑起来有问题。然后让ai查问题,发现了一些兼容性问题,就是有些代码里面用的老写法,而新版里面是要用新写法的,导致代码的混用。
之后碰到一个问题,就是从官方文档、github样例、ai编程代码三个地方来揉合代码的时候,各种变量、写法不一致,复制粘贴很容易把变量搞错。
调试问题
由于VisionKit不能在模拟器调试,只能真机预览,导致报错信息都看不到,只能使用c时代的printf大法,不断地在代码中加弹窗提示,来判断程序走到哪里了,不过弹窗有长度限制,导致信息不全,最后尝试在页面加text进行显示。
效果
进过调试,终于运行成功了。就是先用一个canvas,画出图片,然后再用getImageData来获取数据,最后再runocr执行。
canvas的大小设定,导致图片的效果很差。
最后识别的效果也很差,拍照和屏幕截图拿来识别,基本上只能识别出十几个文字出来,并且还有错的。