利用PHP和百度ai实现文本以及图片的审核
步骤:
首先打开百度ai 开发平台 注册一个账号:
注册账号,进入控制台
创建自己的应用,获取apikey 和秘钥
进入文档页 文本审核:
图像审核:
代码实例:
class Sentive { protected $accessTokenUrl = 'https://aip.baidubce.com/oauth/2.0/token';//获取token url protected $textUrl = 'https://aip.baidubce.com/rest/2.0/antispam/v2/spam';//文本审核url protected $imgUrl = 'https://aip.baidubce.com/api/v1/solution/direct/img_censor';//图片审核url protected $avatarUrl = 'https://aip.baidubce.com/rest/2.0/solution/v1/face_audit';//头像审核url protected $grant_type; protected $client_id; protected $client_secret; function __construct() { $this->grant_type = 'client_credentials'; $this->client_id = 'xxx';//API Key $this->client_secret = 'xxx';//Secret Key } static function request($url = '', $param = '') { if (empty($url) || empty($param)) { return false; } $postUrl = $url; $curlPost = $param; $curl = curl_init();//初始化curl curl_setopt($curl, CURLOPT_URL, $postUrl);//抓取指定网页 curl_setopt($curl, CURLOPT_HEADER, 0);//设置header curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上 curl_setopt($curl, CURLOPT_POST, 1);//post提交方式 curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost); $data = curl_exec($curl);//运行curl curl_close($curl); return $data; } static function request_post($url = '', $param = array(), $type) { if (empty($url) || empty($param)) { return false; } $postUrl = $url; $curlPost = $param; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $postUrl); curl_setopt($curl, CURLOPT_HEADER, 0); // 要求结果为字符串 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // post方式 curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost); if ($type == "text") { curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); } else { curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json;charset=utf-8')); } curl_setopt($curl, CURLINFO_HEADER_OUT, true); $data = curl_exec($curl); $code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($code === 0) { throw new \Exception(curl_error($curl)); } curl_close($curl); return $data; } //获取token public function getToken() { new Redis(); $post_data['grant_type'] = $this->grant_type; $post_data['client_id'] = $this->client_id; $post_data['client_secret'] = $this->client_secret; $o = ""; foreach ($post_data as $k => $v) { $o .= "$k=" . urlencode($v) . "&"; } $post_data = substr($o, 0, -1); $res = self::request($this->accessTokenUrl, $post_data); $redis->setkey("filterToken", json_decode($res, true)['access_token']); return json_decode($res, true)['access_token']; } //文本审核 public function textVerify($data) { new Redis(); $token = $redis->get("filterToken"); if (empty($token)) { $token = $this->getToken(); } $curl = $this->textUrl . "?access_token=" . $token; $result = self::request_post($curl, $data, "text"); return json_decode($result, true); } //图片审核 public function imgVerify($img) { $redis = new Redis(); $token = $redis->get("filterToken"); if (empty($token)) { $token = $this->getToken(); } $curl = $this->imgUrl . "?access_token=" . $token; $bodys = array( 'image' => $img, 'scenes' => array("ocr", "face", "public", "politician", "antiporn", "terror", "webimage", "disgust", 'watermark') ); $bodys = json_encode($bodys); $result = self::request_post($curl, $bodys, "img"); return json_decode($result, true); } //头像审核 public function avatarVerify($img) { $redis = new Redis(); $token = $redis->get("filterToken"); if (empty($token)) { $token = $this->getToken(); } $curl = $this->avatarUrl . "?access_token=" . $token; $bodys = array( "configId" => "1", "images" => $img ); $result = self::request_post($curl, $bodys, "text"); return json_decode($result, true); } }
链接:https://www.php.cn/php-weizijiaocheng-435576.html
利用PHP和百度ai实现文本以及图片的审核的更多相关文章
- PHP利用百度ai实现文本和图片审核
之前做平台内容发布审核都是自己构建一套违禁词库,在代码中利用词库判断用户发布的内容,现在可以使用百度ai api完成这个功能.接下来就简单说下怎么做吧: 首先打开百度ai 开发平台 注册一个账号: 注 ...
- c# 利用AForge和百度AI开发实时人脸识别
baiduAIFaceIdentify项目是C#语言,集成百度AI的SDK利用AForge开发的实时人脸识别的小demo,里边包含了人脸检测识别,人脸注册,人脸登录等功能 人脸实时检测识别功能 思路是 ...
- 利用开源框架Volley来下载文本和图片。
Android Volley是Android平台上很好用的第三方开源网络通信框架.使用简单,功能强大. 下载连接地址:http://download.csdn.net/detail/zhangphil ...
- 百度AI认为最漂亮的中国女星是----范冰冰
一.程序说明 1.1 程序说明 之前写调用百度AI接口的程序,然后刷到了两条明星的新闻,就想到了写个给明星颜值排下名的程序. 程序的关键点是两个,第一个是百度AI接口的调用这点其实直接使用早前实现的类 ...
- C# 如何添加Word文本和图片超链接
超链接简单来讲就是内容链接,通过设置超链接可以实现对象与网页.站点之间的连接.链接目标可以是网页.图片.邮件地址.文件夹或者是应用程序.设置链接的对象可以是文本或者图片. 在以下内容中,我将介绍如何用 ...
- 百度AI文本审核API使用说明
虽然,虽然,虽然,今天: 百度发布了2019年第一季度未经审计的财务报告.本季度百度营收241亿元人民币(约合35.9亿美元),同比增长15%,移除业务拆分收入影响,同比增长21%.低于市场预期242 ...
- 利用百度AI OCR图片识别,Java实现PDF中的图片转换成文字
序言:我们在读一些PDF版书籍的时候,如果PDF中不是图片,做起读书笔记的还好:如果PDF中的是图片的话,根本无法编辑,做起笔记来,还是很痛苦的.我是遇到过了.我们搞技术的,当然得自己学着解决现在的痛 ...
- 百度AI技术
利用百度提供接口,实现智能语音 语音合成 -- TTS(text to speech) 注册 在 ai.baidu.com 页面中点击 控制台 ,弹出登陆 / 注册页面 创建应用 登陆成功后,点击左侧 ...
- 百度AI开放平台- API实战调用
百度AI开放平台- API实战调用 一. 前言 首先说一下项目需求. 两个用户,分别上传了两段不同的文字,要计算两段文字相似度有多少,匹配数据库中的符合条件的数据,初步估计列出来会有60-1 ...
随机推荐
- python py文件转换成exe
1.首先学会了最简单的方法 1)pip install pyinstaller 安装pyinstall 2)pyinstaller aaaa.py 转换,会在当前目录下建两个文件夹,其中一个文件夹 ...
- css linear-gradient;心跳animation
css线性背景 background:linear-gradient(20deg,#ccffff,#ffcccc); transform transform:scale(1.5); transform ...
- nuget cli 打包发包
微软官网打包说明:https://docs.microsoft.com/zh-cn/nuget/quickstart/create-and-publish-a-package-using-visual ...
- 偏函数(partial)
from functools import partial def add(a,b,c,d): return a+b+c+d add = partial(add,1,2) print(add(3,4) ...
- Java并发与多线程与锁优化
前言 目前CPU的运算速度已经达到了百亿次每秒,所以为了提高生产率和高效地完成任务,基本上都采用多线程和并发的运作方式. 并发(Concurrency):是指在某个时间段内,多任务交替处理的能力.CP ...
- SpringMVC的 几个注解
1.@RequestMapping: 是一个用来处理请求地址映射的注解,可用于类或方法上. 1):用在类上:是父路径. 2):用在方法上:是子路径. @Controller //设置想要跳转的父路径 ...
- LDD3 第9章 与硬件通信
一.I/O端口和I/O内存 每种外设都通过读写寄存器进行控制.大部分外设都有几个寄存器,不管是在内村地址空间还是在I/O地址空间,这些寄存器的访问地址都是连续的. 在硬件层,内存区域和I/O区域没有区 ...
- iview的Affix组件滚动时没有按照预期固定
业务场景 新建任务的页面,创建和重置按钮,页面没有滚动时,直接跟在内容下面:页面滚动时,固定于页面下方,不随内容进行滚动,以方便按钮的操作.效果如下: 问题以及解决办法 直接使用<Affix : ...
- Harbor安装(docker-compose) -- 企业级Registry仓库
根据Harbor官方描述: Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distri ...
- WEUI官方样式小程序工具打开预览
https://github.com/Tencent/weui-wxss 用微信web开发者工具打开dist目录(请注意,是dist目录,不是整个项目)