来自于2015年CVPR的一篇paper《Age and Gender Classification using Convolutional Neural Networks》。

Paper所用的网络包含:3个卷积层,还有2个全连接层。这个算是层数比较少的CNN网络模型了,这样可以避免过拟合。对于年龄的识别,paper仅仅有8个年龄段,相当于8分类模型,对于性别识别自然而然是二分类问题了。

首先上Model Zoo下载年龄和性别的caffe模型及其描述文件,下载网址https://talhassner.github.io/home/publication/2015_CVPR

步骤:

  1. 加载模型文件和描述文件
  2. 列出分类的标签文件
  3. 人脸检测,将脸部图像转换为网络输入的格式
  4. 网络输入
  5. 前向传播
#include<opencv2\opencv.hpp>
using namespace cv;
using namespace dnn;
using namespace std;String age_model = "age_net.caffemodel";
String age_txt = "deploy_age.prototxt";
String gender_model = "gender_net.caffemodel";
String gender_txt = "deploy_gender.prototxt";

opencv学习笔记六十三:基于CNN的性别、年龄预测相关推荐

  1. OpenCV学习笔记(十三):霍夫变换:HoughLines(),HoughLinesP(),HoughCircles( )

    OpenCV学习笔记(十三):霍夫变换:HoughLines(),HoughLinesP(),HoughCircles( ) 1.霍夫线变换HoughLines() OpenCV支持三种不同的霍夫线变 ...

  2. opencv 手选roi区域_【opencv学习笔记六】图像的ROI区域选择与复制

    图像的数据量还是比较大的,对整张图片进行处理会影响我们的处理效率,因此常常只对图像中我们需要的部分进行处理,也就是感兴趣区域ROI.今天我们来看一下如何设置图像的感兴趣区域ROI.以及对ROI区域图像 ...

  3. AI学习笔记(十三)CNN之人脸检测

    AI学习笔记之CNN之人脸检测 人脸检测 人脸检测概念 人脸检测的难点 人脸检测的主要用途 mtcnn 主要步骤 构建图像金字塔 P-Net(Proposal Network) R-Net(Refin ...

  4. OpenCV学习笔记六-提高对比度

    提高像素对比度 P7 按像素提高图像的对比度#include<iostream> #include<opencv2/opencv.hpp>using namespace std ...

  5. opencv学习笔记五十三:训练自己的级联分类器

    训练工作主要分为如下几步: 加载训练环境 制作训练数据集 获取样本路径列表 生成正样本描述文件(.vec) 训练人脸分类器 使用分类器进行人脸检测 加载训练环境  训练过程主要依靠OpenCV自带的两 ...

  6. opencv学习笔记六十八:显示中文汉字

    opencv中putText只能显示英文,如果在某个程序中你想显示汉字,可在该项目上新建一个头文件项putText.h和一个putText.cpp即可. putText.h #ifndef PUTTE ...

  7. 【OpenCV学习笔记 008】基于形态学运算的图像变换

    一.形态学滤波对图像进行腐蚀.膨胀运算 1.概念及原理 (1)腐蚀和膨胀是形态学中最基本的运算,而结构元素又是数学形态学中最基本的工具.结构元素可以简单理解为像素的结构以及一个原点.使用形态学滤波就是 ...

  8. opencv学习笔记(六)---图像梯度

    图像梯度的算法有很多方法:sabel算子,scharr算子,laplacian算子,sanny边缘检测(下个随笔)... 这些算子的原理可参考:https://blog.csdn.net/poem_q ...

  9. Opencv学习笔记 - 使用opencvsharp和决策树进行训练和预测

    一.决策树 决策树是最早的机器学习算法之一,起源于对人类某些决策过程的模仿,属于监督学习算法.决策树的优点是易于理解,有些决策树既可以做分类,也可以做回归.在排名前十的数据挖掘算法中有两种是决策树[1 ...

最新文章

  1. 349.两个数组的交集
  2. 《你不知道的Javascript--上卷 学习总结》(原型)
  3. Python中is和==的区别
  4. strncpy与strcpy的区别与注意事项
  5. 【HDU - 5961】传递(图,思维,暴力,枚举点)
  6. jeewx-api 1.0.5 版本发布,微信SDK接口封装(支持微信第三方开放平台)
  7. html为什么要进行表单验证_为什么要进行新旧房屋加固改造?
  8. 单链表java实现及相关操作(版本1)
  9. 用51单片机和esp8266实现通过手机app控制单片机小灯
  10. 码支付源码最新版_码支付源码,云端已本地化,ck协议本地化,完全脱离云端控制
  11. jsp代码编写简单的BBS论坛项目的总结
  12. px和毫米之间的转换
  13. simulink仿真之阶梯步长
  14. java万年历有农历_家庭农民历五行曰历,日历为什么叫“万年历”
  15. 智能安全帽-4G记录仪等移动视频图传系统里面的RTSP流输出的实现机制
  16. 六足仿生机器人的控制与实现
  17. Linux中父子进程、兄弟子进程之间通信方式--匿名管道pipe(适用于有血缘关系的进程)
  18. 1.Unity3D商业游戏源码研究-变身吧主公-ResourcesMgr
  19. MS Visual Studio 2008 编译错误 microsoft visual studio 9.0\vc\include\new.h(60) : error C2065: '_In_opt_
  20. AddOns for World of Warcraft 之 “Hello, WoW!”

热门文章

  1. 一个集合了497个AI工具的人工智能网站
  2. 计算机网络技术应用》期末试卷,计算机网络期末考试试卷及答案
  3. 从新手到专家 ——外包团队研发工程师的成长之路
  4. Microsoft Visual Studio2010c语言如何创建新项目
  5. vc2010c语言阶乘程序,我在C语言贴吧的第一个C(或C++)程序:可以计算10000阶乘的程序...
  6. 【presto】presto编译报错整理(大全)
  7. 校招 | 梅特勒托利多2023届校招
  8. 佳明 Vivomove Trend 智能手表 评测 佳明 Vivomove Trend 智能手表参数配置
  9. TAP-Windows Provider V9 卸载
  10. LVS简介及LVS-NAT负载均衡群集的搭建(要像记得回家的路一样记得理想和远方)