美文网首页
人脸识别:使用Qt请求百度ai人脸识别接口方式

人脸识别:使用Qt请求百度ai人脸识别接口方式

作者: 文丰online | 来源:发表于2018-04-02 13:48 被阅读0次

    1、首先获取token (token,30天有效期,到期需要重新申请,也可以每次使用时申请)
    curl -i -k 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=PqiVM5lvB337w6CeBkua0B3dRw&client_secret=zidS239ieGM5vfsEk2OYulCkR43fh3nIt'
    2、Qt中调用方法:

    void CameraFilter::checkImage()
        {
        QHttpMultiPart *multiPart = newQHttpMultiPart(QHttpMultiPart::FormDataType);
        QHttpPart max_face_num;
        max_face_num.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"max_face_num\""));
        max_face_num.setBody("1");
    
        QHttpPart face_fields;
        face_fields.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"face_fields\""));
        face_fields.setBody("age,gender,qualities");
    
        QHttpPart image_data;
        image_data.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant("form-data; name=\"image\""));
        image_data.setBody("图像的base64编码数据");
    
        multiPart->append(max_face_num);
        multiPart->append(face_fields);
        multiPart->append(image_data);
    
        QUrl url("https://aip.baidubce.com/rest/2.0/face/v1/detect?access_token=24.cbc92b55c4e10c057065857526cd849a.2592000.1525230249.282335-11029510");
        QNetworkRequest request(url);
    
        networkManager->post(request, multiPart);
    
    }
    
    
    
    void CameraFilter::replyFinished(QNetworkReply *reply)  //当回复结束后
    {
    
    QTextCodec *codec = QTextCodec::codecForName("utf8");
    
    //使用utf8编码,这样才可以显示中文
    
    QString all = codec->toUnicode(reply->readAll());
    qDebug() << all << endl;
    
    reply->deleteLater();   //最后要释放reply对象
    
    }
    

    相关文章

      网友评论

          本文标题:人脸识别:使用Qt请求百度ai人脸识别接口方式

          本文链接:https://www.haomeiwen.com/subject/odzthftx.html