在網(wǎng)上看到一篇將女朋友照片轉(zhuǎn)成動(dòng)漫頭像的博文(java實(shí)現(xiàn)),emmmmm, 我不會(huì)Python, 又不會(huì)Java,更重要的是沒(méi)有女朋友! 所以我決定用萬(wàn)能的 首先注冊(cè)個(gè) 到我的控制臺(tái)創(chuàng)建應(yīng)用 然后把 獲取 1.先封裝一個(gè)curl請(qǐng)求方法 2.獲取 通過(guò) 最后貼上別人的女朋友o(╥﹏╥)o 推薦學(xué)習(xí):《PHP視頻教程》
PHP
實(shí)現(xiàn)將別人女朋友照片轉(zhuǎn)成動(dòng)漫頭像!百度AI
,然后進(jìn)到人像動(dòng)漫化開(kāi)通控制臺(tái)(好像是前500次免費(fèi)調(diào)用接口)。Api Key
和Serect Key
記下來(lái), 等下需要用來(lái)獲取AccessToken
AccessToken
<?php class Curl { public function post($url = '', $param = '') { if (empty($url) || empty($param)) { return false; } $postUrl = $url; $curlPost = $param; $curl = curl_init();//初始化curl curl_setopt($curl, CURLOPT_URL,$postUrl);//抓取指定網(wǎng)頁(yè) curl_setopt($curl, CURLOPT_HEADER, 0);//設(shè)置header curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//要求結(jié)果為字符串且輸出到屏幕上 curl_setopt($curl, CURLOPT_POST, 1);//post提交方式 curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost); $data = curl_exec($curl);//運(yùn)行curl if ($error = curl_error($curl)) { die($error); } curl_close($curl); return $data; } }
AccessToken
require_once 'Curl.php'; class AccessToken { // Api Key private $apiKey= ''; // Secret Key private $secretKey = ''; private $requestToeknUrl = "https://aip.baidubce.com/oauth/2.0/token"; private $accessToken; public function __construct() { // 默認(rèn)有效時(shí)間2592000秒, 可以存到緩存中 // 對(duì)返回的數(shù)據(jù)沒(méi)做過(guò)段判斷, 需要的請(qǐng)自行判斷處理 $this->accessToken = ($this->requestAccessToken())['access_token']; } public function requestAccessToken(){ $url = $this->requestToeknUrl; $postData['grant_type'] = 'client_credentials'; $postData['client_id'] = $this->apiKey; $postData['client_secret'] = $this->secretKey; $o = ""; foreach ( $postData as $k => $v ) { $o.= "{$k}=" . urlencode( $v ). "&" ; } $postData = trim($o, '&'); $result = (new Curl())->post($url, $postData); return json_decode($result, true); } public function getAccessToken() { return $this->accessToken; } }
getAccessToken()
方法獲取AccessToken
<?php // require_once 'Curl.php'; require_once 'AccessToken.php'; class Demo { public function index() { // 獲取AccessToken $accessToken = (new AccessToken())->getAccessToken()); // 百度AI接口 $url = 'https://aip.baidubce.com/rest/2.0/image-process/v1/selfie_anime?access_token=' . $accessToken; // 圖片路徑 $img = file_get_contents('C:UsersAdminDesktop6a56f099861bf4c470e5d24f7017b1a.jpg'); // base64編碼的圖片, 可以是本地圖片或網(wǎng)絡(luò)上傳的, 只要能轉(zhuǎn)成base64編碼就可以了 $img = base64_encode($img); $bodys = array( 'image' => $img ); $result = (new Curl())->post($url, $bodys); $result = json_decode($result, true); // data:image/jpg;base64, echo "<img src="data:image/jpg;base64,{$result['image']}" />"; } } (new Demo())->index();
用PHP將女友照片轉(zhuǎn)成可愛(ài)的動(dòng)漫頭像!
相關(guān)推薦
- 在RAKsmart服務(wù)器上怎么管理數(shù)據(jù)科學(xué)工作流
- raksmart日本云服務(wù)器產(chǎn)品優(yōu)勢(shì)
- 當(dāng)分成收益腰斬:站長(zhǎng)必須掌握的3條自媒體變現(xiàn)新通路
- 算力服務(wù)器多少錢(qián)一臺(tái)??jī)r(jià)格因素與選購(gòu)指南
- 美國(guó)站群服務(wù)器搭建sk5需要什么配置?
- 美國(guó)服務(wù)器防攻擊技術(shù)有哪些
- 當(dāng)分成收益腰斬:站長(zhǎng)必須掌握的3條自媒體變現(xiàn)新通路
- 逃離平臺(tái)算法:站長(zhǎng)做自媒體的終極目標(biāo)是“流量主權(quán)”