调用百度大脑智能里的文字识别实现图片识别

2017-04-20 20:23:58来源:CSDN作者:ufo2006人点击

由于有一本古籍需要识别,网上找了几个软件对于繁体字均感觉识别率不高。试了下发现百度的识别率还可以,于是想自己写一个调用百度图片识别api的程序。

用Delphi2010编码实现。在开发中遇到了几个问题,现写出来供需要的朋友参考。

1. SSL问题,用的是indyhttp控件,使用SSL时需要添加 IdSSLIOHandlerSocketOpenSSL1 组件

然后 idhttp的iohandler 属性指向 IdSSLIOHandlerSocketOpenSSL1。

然后 SSLoptions 的method属性改为 sslvSSLv23

然后再放置两个SSL用到的 DLL 文件,可从这里下载Delphi 2010兼容的dll文件 http://pan.baidu.com/s/1mh6Lu6O


2.图片编码问题,刚开始试用了各种编码,总是提示 error_code":216201,"error_msg":"image format error

 后在网上看到有人提示indy控件默认会对参数重新编码,把这个属性关闭后图片上传正常。

具体属性:httpoptions下的hoforceencodeparams关闭。

图片编码为base64,然后urlencode一下即可。


3.识别完成后的中文乱码问题

  其实传回的只要utf8转为unicode的,但由于一开始图简单,用了 result:= indyhttp.post(url,img) 这样的方法来直接获取返回值,导致返回值被indy又编码了一次。然后再解码就总是不正常。

 后改为post内用流接收返回值,然后再utf8解码正常。


具体源码可以从这里下载:http://download.csdn.net/detail/ufo2006/9820149

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台