图像单主体检测

  行业动态     |      2025-05-07 12:19
#include // libcurl库下载链接:https://curl.haxx.se/download.html // jsoncpp库下载链接:https://github.com/open-source-parsers/jsoncpp/ const static std::string request_url="https://aip.baidubce.com/rest/2.0/image-classify/v1/object_detect"; static std::string objectDetect_result; static size_t callback(void *ptr, size_t size, size_t nmemb, void *stream) { // 获取到的body存放在ptr中,先将其转换为string格式 objectDetect_result=std::string((char *) ptr, size * nmemb); return size * nmemb; } int objectDetect(std::string &json_result, const std::string &access_token) { std::string url=request_url + "?access_token=" + access_token; CURL *curl=NULL; CURLcode result_code; int is_success; curl=curl_easy_init(); if (curl) { curl_easy_setopt(curl, CURLOPT_URL, url.data()); curl_easy_setopt(curl, CURLOPT_POST, 1); curl_httppost *post=NULL; curl_httppost *last=NULL; curl_formadd(&post, &last, CURLFORM_COPYNAME, "image", CURLFORM_COPYCONTENTS, "【base64_img】", CURLFORM_END); curl_formadd(&post, &last, CURLFORM_COPYNAME, "with_face", CURLFORM_COPYCONTENTS, "1", CURLFORM_END); curl_easy_setopt(curl, CURLOPT_HTTPPOST, post); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, callback); result_code=curl_easy_perform(curl); if (result_code !=CURLE_OK) { fprintf(stderr, "curl_easy_perform() failed: %s ", curl_easy_strerror(result_code)); is_success=1; return is_success; } json_result=objectDetect_result; curl_easy_cleanup(curl); is_success=0; } else { fprintf(stderr, "curl_easy_init() failed."); is_success=1; } return is_success; }`, `94860147977861960000`)" >