opencv人脸识别训练「建议收藏」

opencv人脸识别训练「建议收藏」一开始我运用人脸库训练出一个xml文件,后来新增人脸时候需要将新人继续拿来训练,需要将训练的特征信息加在原来xml文件里面。如果程序不关闭是可以将新人特征信息加到xml文件里的。比如,原来的xml文件为face.xml;现在采集了一些人脸,需要将这些人脸的特征信息提取加入到face.cml;然后下次load这个face.xml进行人脸识别。现在就是怎么将这些人脸加入原来的xml文件呢?这个是全

大家好,又见面了,我是你们的朋友全栈君。一开始我运用人脸库训练出一个xml文件,后来新增人脸时候需要将新人继续拿来训练,需要将训练的特征信息加在原来xml文件里面。如果程序不关闭是可以将新人特征信息加到xml文件里的。比如,原来的xml文件为face.xml;现在采集了一些人脸,需要将这些人脸的特征信息提取加入到face.cml;然后下次load这个face.xml进行人脸识别。现在就是怎么将这些人脸加入原来的xml文件呢?
这个是全局变量定义:
static vector<Mat> images;//头像集
static vector<int> labels;//标签集


训练:
model->load(“face0.xml”); 
try 
{//现在的需要加入的图片入栈。调用程序loadFaceImg(train_csv, images, labels);//train_csv图片路径
loadFaceImg(train_csv, images, labels);
stringstream s;
s<<num;
cout<<“加载”+s.str()+”个人脸图片完成”<<endl;

catch (cv::Exception& e) 
{

cerr << “Error opening file \”” << train_csv << “\”. Reason: ” << e.msg << endl;
}
// Quit if there are not enough images for this demo.
if(images.size() <= 1) 
{

string error_message = “This demo needs at least 2 images to work. Please add more images to your data set!”;
CV_Error(CV_StsError, error_message);
}

//初始化提取员工特征
model->train(images, labels);

model->save(“face0.xml”);//保存特征信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133905.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 搜索引擎使用技巧

    1、双引号把搜索词放在双引号中,代表完全匹配搜索,也就是说搜索结果返回的页面包含双引号中出现的所有的词,连顺序也必须完全匹配。百度和Google都支持这个指令。例如搜索:“Python”。2、减号减号代表搜索不包含减号后面的词的页面。使用这个指令时减号前面必须是空格,减号后面没有空格,紧跟着需要排除的词。Google和bd都支持这个指令。例如:搜索-引擎返回的则是包含“搜索”这…

    2022年4月5日
    61
  • 公共 DNS server IP 地址

    公共 DNS server IP 地址

    2021年12月5日
    68
  • angular debounce throttle「建议收藏」

    angular debounce throttle「建议收藏」throttle我们这里说的throttle就是函数节流的意思。再说的通俗一点就是函数调用的频度控制器,是连续执行时间间隔控制。主要应用的场景比如:鼠标移动,mousemove事件DOM元素动态定位,window对象的resize和scroll事件有人形象的把上面说的事件形象的比喻成机关枪的扫射,throttle就是机关枪的扳机,你不放扳机,它就一直扫射。我们

    2022年6月20日
    48
  • 用EasyRecovery挽救数据

    用EasyRecovery挽救数据

    2021年8月18日
    71
  • 按位取反怎么运算_补码取反加一

    按位取反怎么运算_补码取反加一读本文前请首先搞懂“反码”,“取反”,“按位取反(~)”,这3个概念是不一样的。取反:0变1,1变0反码:正数的反码是其本身,对于负数其符号位不变其它各位取反(0变1,1变0)按位取反(~):这将是下面要讨论的。“~”运算符在c、c++、java、c#中都有,之前一直没有遇到这个运算符。要弄懂这个运算符的计算方法,首先必须明白二进制数在内存中的存放形式,二

    2022年8月15日
    9
  • C#代码集

    C#代码集C#入门代码示例记录一、示例静态计算工具类1publicstaticclassCalculator2{3publicstaticdoubleAdd(doublea,doub

    2022年7月1日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号