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. Python 常量

  2. @atcoder - AGC035E@ Develop

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定初始集合为 1 ~ N 的全集,并给定一个 K. 每次对于当 ...

  3. python基础之逻辑题(3)

    Python基础之逻辑题(3) 1.编写一个函数实现将IP地址转换成一个整数 2.求结果:---lambda 3.求a的结果 4.求下面nums的输出 5.求下面片段的输出 6.写出程序的结果:--- ...

  4. WebStorm使用参考手册

    WebStorm 是 JetBrains 推出的一款商业的 JavaScript 开发工具 任何一个编辑器都需要保存(ctrl + s),这是所有win平台上编辑类软件的特点,但是webstorm编辑 ...

  5. html--多媒体文件

    添加多媒体文件 1.添加多媒体文件标记 <embed src="" width="" height=""></embed& ...

  6. ios html5头部无法固定的问题(安卓正常)

    需求:头部菜单导航固定,中间正文可以拉动,在安卓手机正常,在ios上下拉的时候头部被带下来,有卡顿用户体验也不会,解决方法如下: 有问题的布局代码 <div class="page&q ...

  7. jieba完整文档

    jieba “结巴”中文分词:做最好的 Python 中文分词组件 "Jieba" (Chinese for "to stutter") Chinese tex ...

  8. Java使用RandomAccessFile读写文件

    目录 转载自:http://blog.csdn.net/akon_vm/article/details/7429245 Java RandomAccessFile RandomAccessFile是用 ...

  9. H3C 以太网流量控制

  10. TabHost选项卡的实现(二):使用Fragment实现

    在上一篇博客<TabHost选项卡的实现(一):使用TabActivity实现>中,讲解了如何使用TabActivity创建管理选项卡,但是,通过TabActivity创建选项卡的方式已经 ...