新谷歌雲願景API,我想用他們的主色的功能,從圖片中提取顏色。下面是我的代碼是在Terrence Ryan's Blog谷歌雲願景IMAGE_PROPERTIES返回10種顏色/結果無論我在什麼樣的形象和的maxResults什麼價值參數
$cvurl = "https://vision.googleapis.com/v1/images:annotate?key=API_KEY";
$data = file_get_contents($cache_job);
$base64 = base64_encode($data);
//Create this JSON
$r_json ='{
"requests": [
{
"image": {
"content":"' . $base64. '"
},
"features": [
{
"type": "IMAGE_PROPERTIES",
"maxResults": 200
}
]
}
]
}';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $cvurl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-type: application/json"));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $r_json);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($status != 200) {
die("Error: $cvurl failed status $status");
}
代碼工作的基礎,但我得到了一些問題吧。圖像上有一些明顯的顏色,但未包含在API響應中。所以我認爲增加結果數量可以解決問題,但後來我發現將「maxResults」參數(Google API文檔:要返回的結果數量)參數更改爲任何值都不會影響響應的任何內容。即使將參數設置爲小於10並且即使我改變了圖像,結果的數量也固定爲10種顏色。 Google的API文檔沒有提及任何內容,所以我想知道你們中的任何一個人是否已經體驗過它。
我創建一個應用程序,這將有助於我的用戶在選擇的顏色爲自己的網頁主題,在那裏他們可以上傳圖片或其他網頁中,我將提取的顏色,並把它們添加到顏色的用戶的選擇,甚至截圖而不僅僅是給他們一個色輪/選擇器。事情是,有時甚至明顯的顏色不返回/檢測。一個例子是facebook的登錄頁面截圖,API的響應甚至沒有藍色,這是整個頁面的標題。 –