百度AI鏈接:https://ai.baidu.com
- 註冊百度AI的賬戶、完善百度AI賬戶中的應用信息等。
- 下載對應的SDK(本文以PHP爲例)
下載完成後 將文件放置在自己的項目中。
本文目錄結構如上圖所示。
3.創建AipOcr.php(自定義)
<?php
/**
* Created by PhpStorm.
* User: timkj
* Date: 2019/5/19
* Time: 下午4:22
*/
require_once 'class/AipOcr.php';
// 你的 APPID AK SK
const APP_ID = '';
const API_KEY = '';
const SECRET_KEY = '';
$client = new AipOcr(APP_ID, API_KEY, SECRET_KEY);
//print_r($_POST);
//print_r($_FILES);
//對上傳文件大小 類型進行限制
if($_FILES["file"]["error"])
{
echo $_FILES["file"]["error"];
}else{
if((
$_FILES["file"]["type"]=="image/png"
||$_FILES["file"]["type"]=="image/jpeg"
||($_FILES['file']['type']=="image/jpg")
||($_FILES['file']['type']=="image/x-png")
)&&$_FILES["file"]["size"]<2048000) //小於兩兆 且文件類型爲png 或 jpeg
{
//獲取緩存文件 將緩存文件上傳到API進行驗證 返回成功 進行文件複製
$image = file_get_contents($_FILES["file"]["tmp_name"]);
$idCardSide = "front";
$a = $client->idcard($image, $idCardSide);
//print_r($a);
if ($a['image_status']=='normal'){
//print_r('進入存儲圖片環節');
//判斷圖片檢測正常! 將緩存文件 調整到 文件中
$path .= '../../idcard/'.date('Ymd',time());
if(!file_exists($path))//文件夾不存在,先生成文件夾
{
mkdir($path,0777,true);
}
$file_name=date('YmdHis',time()).mt_rand(1000,9999);
move_uploaded_file($_FILES['file']['tmp_name'], $path . "/" . $file_name .$_FILES['file']['name']);
echo '上傳成功|' . $path . "/" .$file_name .$_FILES['file']['name'];
}else{
echo '識別失敗';
}
}else{
print_r('{image_status":"fileerror"}');
}
}
前端調用AipOcr.php方式:
使用Form表單直接提交File即可。
當證件識別成功纔會將緩存文件複製到指定的文件夾。