Google Vision OCR 爬坑建议

首先安装 Google Vision shell composer require google/cloud-vision 第一次使用的时候真的遇到的问题很多,文档是英文的,自己慢慢摸索的途中不免进行去百度google搜索 但是搜索出来的结果却不尽人意,可能是搜索方式不太对哈哈~,其实使用蛮简单,因为是别人现成对轮子,只不过使用对时候坑比较多, 所以特别列出以下几点。 1. 身份认证(就这个身份认证我搞了2个小时) 2. $vision->image($img_path) 图片如果传入url的话会抛出异常

身份认证

进入 https://console.cloud.google.com/ 在列表里面找到api与服务选择凭据,创建凭据,选择服务帐号与密钥进行创建,我选择的格式是json 这个就是我们需要的凭据,导出以后放进项目

php require 'vendor/autoload.php';

use Google\Cloud\Vision\VisionClient;

$vision = new VisionClient( [ 'keyFile' => jsondecode(filegetcontents($keypath), true) ] ); 

到这里身份认证就没有问题了,还有其他的方式,可自行研究,文档太高深,说实话不太喜欢阅读。

图片导入以及function选择

在google官方提供的文档当中是这样写的demo

require 'vendor/autoload.php';

use Google\Cloud\Vision\VisionClient;

$vision = new VisionClient();

// Annotate an image, detecting faces.
$image = $vision->image(
fopen('/data/family_photo.jpg', 'r'),
['faces']
); $annotation = $vision->annotate($image); // Determine if the detected faces have headwear.
foreach ($annotation->faces() as $key => $face) {
if ($face->hasHeadwear()) {
echo "Face $key has headwear.\n";
}
}

['faces']features方法是可以多传的,更具需求传入,在最后我列出了所有的features。

这里还存在一个问题,我的图片是url,我尝试使用fopenfilegetcontents`打开一个url,但是被抛出了异常(异常没深究,太高端看不懂,咱也不敢问), 最后是这样成功的,并成功拿到了返回。

[
'faces', // Corresponds to `FACE_DETECTION`
'landmarks', // Corresponds to `LANDMARK_DETECTION`
'logos', // Corresponds to `LOGO_DETECTION`
'labels', // Corresponds to `LABEL_DETECTION`
'text', // Corresponds to `TEXT_DETECTION`,
'document', // Corresponds to `DOCUMENT_TEXT_DETECTION`
'safeSearch', // Corresponds to `SAFE_SEARCH_DETECTION`
'imageProperties',// Corresponds to `IMAGE_PROPERTIES`
'crop', // Corresponds to `CROP_HINTS`
'web' // Corresponds to `WEB_DETECTION`
]

features

[
'faces', // Corresponds to `FACE_DETECTION`
'landmarks', // Corresponds to `LANDMARK_DETECTION`
'logos', // Corresponds to `LOGO_DETECTION`
'labels', // Corresponds to `LABEL_DETECTION`
'text', // Corresponds to `TEXT_DETECTION`,
'document', // Corresponds to `DOCUMENT_TEXT_DETECTION`
'safeSearch', // Corresponds to `SAFE_SEARCH_DETECTION`
'imageProperties',// Corresponds to `IMAGE_PROPERTIES`
'crop', // Corresponds to `CROP_HINTS`
'web' // Corresponds to `WEB_DETECTION`
]

 

以上初次使用的坑,见识略薄(也可能是我的理解和使用方式不对),也希望你们在使用的过程中能有所帮助!

Google Vision OCR的更多相关文章

  1. 【转】OCR识别引擎tesseract使用方法——安装leptonica和libtiff

    原文来自:http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece7631046893b4c4380146d96864968d4e414c4224 ...

  2. 深入学习使用ocr算法识别图片中文字的方法

    公司有个需求,简单点说需要从一张图片中识别出中文,通过python来实现,当然其他程序也行,只要能实现,而小编主要学习python,所以就提了python.一个小白在网上遨游了一天,终于找到一丝丝思绪 ...

  3. JAVA使用Tess4J进行ocr识别

    Tess4J是对Tesseract OCR API.的Java JNA 封装.使java能够通过调用Tess4J的API来使用Tesseract OCR.支持的格式:TIFF,JPEG,GIF,PNG ...

  4. Google Coral Edge TPU USB加速棒上手体验

    Edge AI是什么?它为何如此重要? 传统意义上,AI解决方案需要强大的并行计算处理能力,长期以来,AI服务都是通过联网在线的云端基于服务器的计算来提供服务.但是具有实时性要求的AI解决方案需要在设 ...

  5. Awesome Python

    Awesome Python  A curated list of awesome Python frameworks, libraries, software and resources. Insp ...

  6. Machine and Deep Learning with Python

    Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...

  7. python 各种开源库

    测试开发 来源:https://www.jianshu.com/p/ea6f7fb69501 Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. 链接 sel ...

  8. python 三方面库整理

    测试开发 Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. –推荐 mechanize- Python中有状 ...

  9. Python开源框架、库、软件和资源大集合

    A curated list of awesome Python frameworks, libraries, software and resources. Inspired by awesome- ...

随机推荐

  1. [HLSL]HLSL 入门参考 (dx11龙书附录B译文)

    原文:[HLSL]HLSL 入门参考 (dx11龙书附录B译文) HLSL 高级着色语言 参考文档 龙书DirectX12现已推出中文版,其附录B的高级着色器语言参考的翻译质量比本文更高,有条件的读者 ...

  2. 第三期 行为规划——11.在C ++中实现第二个成本函数

    在大多数情况下,单一成本函数不足以产生复杂的车辆行为.在这个测验中,我们希望您在C ++中实现更多的成本函数.我们稍后会在本课中使用这两个C ++成本函数.这个测验的目标是创建一个成本函数,使车辆在最 ...

  3. P3899 [湖南集训]谈笑风生 主席树

    #include<iostream> #include<string.h> #include<algorithm> #include<stdio.h> ...

  4. CODE FESTIVAL 2017 qual A C Palindromic Matrix(补题)

    彩笔看到题目后,除了懵逼,没有啥反应了,唯一想的就是 这是不是dp啊?看了题解才发现,原来是这样啊. 画几个矩阵看看就能看出来规律. 思路:先假设这是个M * N的矩阵 如果M和N都是偶数,则每个出现 ...

  5. ubuntu 运行级别initlevel

    Linux 系统任何时候都运行在一个指定的运行级上,并且不同的运行级的程序和服务都不同,所要完成的工作和要达到的目的都不同,系统可以在这些运行级之间进行切换,以完成不同的工作.Ubuntu 的系统运行 ...

  6. Python--day70--csrf简单用法、 跨站请求伪造和csrf_token使用

    1,csrf简单用法 2,Django里面的setting加入了防跨站伪造:这段代码帮你生成特殊字符串,帮你塞到html页面中来 3,csrf_token使用:

  7. <STL源码剖析> 6.3.6 power

    计算power的算法说明 http://www.sxt.cn/u/324/blog/2112 翻译自  http://videlalvaro.github.io/2014/03/the-power-a ...

  8. H3C ACL规则的匹配顺序

  9. 央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家

    央行下属的上海资信网络金融征信系统(NFCS)签约机构数量突破800家 ——已接入NFCS的P2P网贷机构将优先 接入央行征信系统   P2P网贷行业的健康发展依赖于信用体系的支撑和保障,加快完善适应 ...

  10. P2P公司是如何进行风险管理的

    关于P2P的风控很多人仍然是一知半解,甚至不少长期P2P圈内的资深玩家对此也是“既没吃过猪肉,也没见过猪跑”.   但是不可否认的是,作为一种跳过银行间接贷款融资模式的.一种在借款人和出借人之间直接发 ...