百度人脸识别win C++离线SDK只能同时识别出一个人脸的问题

官方文档链接
先说明一下,这个问题已经解决了,但真的很想吐槽一下官方的指引。
简单来说,就是运行sdk后,无论是使用示例图片还是usb摄像头,都只能同时检测出一个人脸。注意,不是识别不出来,而是他的接口同时只能返回一个人脸。
这个问题初次遇到的时候,大概率猜测是什么参数的问题,然后在程序里使劲找,百度也找了半天,好像是一个max_detect_num的参数。
然而程序里并没有,找了半天,居然是在sdk文件夹/conf/detect.json里面,然而他居然默认max_detect_num=10.
这我就崩溃了,找到这个参数,然而他默认就已经是10了。
然后我仔细翻看官方的文档,最后看到这条:
在这里插入图片描述
居然要用户自己修改文件夹名称才行,真是让人瞠目结舌,百度你这个官方指引能够再垃圾一点吗?
改完之后就可以了 。

集成百度离线人脸识别SDK 8.3 可以通过以下步骤进行: 1. 下载百度离线人脸识别SDK 8.3,并解压到项目目录中。 2. 在Qt项目中创建一个新的类,用于封装人脸识别相关的功能。 3. 在该类的头文件中,包含百度离线人脸识别SDK的头文件,并声明人脸识别相关的函数和变量。 ```cpp #include <QObject> #include <QString> #include "baidu_face_sdk.h" class FaceRecognition : public QObject { Q_OBJECT public: explicit FaceRecognition(QObject *parent = nullptr); bool init(); // 初始化人脸识别SDK bool detectFace(const QString &imagePath); // 人脸检测 bool compareFace(const QString &image1, const QString &image2); // 人脸比对 private: // 声明百度离线人脸识别SDK相关的变量和函数 // ... }; ``` 4. 在源文件中实现人脸识别相关的函数。 ```cpp #include "facerecognition.h" FaceRecognition::FaceRecognition(QObject *parent) : QObject(parent) { // 初始化人脸识别SDK } bool FaceRecognition::init() { // 初始化百度离线人脸识别SDK // ... } bool FaceRecognition::detectFace(const QString &imagePath) { // 执行人脸检测操作 // ... } bool FaceRecognition::compareFace(const QString &image1, const QString &image2) { // 执行人脸比对操作 // ... } ``` 5. 在主程序中使用该类进行人脸识别。 ```cpp #include <QCoreApplication> #include "facerecognition.h" int main(int argc, char *argv[]) { QCoreApplication app(argc, argv); FaceRecognition faceRecognition; faceRecognition.init(); // 调用人脸检测函数 faceRecognition.detectFace("image.jpg"); // 调用人脸比对函数 faceRecognition.compareFace("image1.jpg", "image2.jpg"); return app.exec(); } ``` 在以上步骤中,你需要根据百度离线人脸识别SDK 8.3 的文档,了解其具体的调用方式和参数设置。根据具体的需求,实现相应的功能函数,并在主程序中调用。同时,记得将百度离线人脸识别SDK相关的文件和库链接到你的Qt项目中。 请注意,根据百度离线人脸识别SDK的许可和使用条款,确保你的项目遵守相关规定。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值