没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
// AppDesignDlg.cpp : implementation file
//
#include "stdafx.h"
#include "AppDesign.h"
#include "AppDesignDlg.h"
#include <string>
#include <math.h>
#include "Select.h"
#include "CvvImage.h"
#define MAX_POINT 200
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAboutDlg dialog used for App About
using namespace std;
CvCapture * m_Video; // opencv 库的指针,从视频获取图像
int nFrmNum=0; //定义第 nFrmNum 帧,初始化为 0,自动增值,nFrmNum 是帧控件的关
联变量,帧控件的 ID 为 IDC_FRAMNUM
////定义几个重要的全局变量
int nTrainFaces =0;
// 训练图像的数目,即人脸库中有 n 张人脸
int nEigens =0;
// 自己取的主要特征值数目(在提取特征脸的时候用到的参数)
IplImage** faceImgArr =0;
同)
// 指向训练人脸和测试人脸的指针(在学习和识别阶段指向不
CvMat* personNumTruthMat=0;
// 人脸图像的 ID号
IplImage* pAvgTrainImg =0;
IplImage** eigenVectArr =0;
// 训练人脸数据的平均值
// 投影矩阵,也即主特征向量
CvMat* eigenValMat =0;
// 特征值
CvMat* projectedTrainFaceMat=0;
CvMat* trainPersonNumMat=0;
// 训练图像的投影
/*以下是自定义函数的声明,具体定义会在下方,cv 开头的是OPENCV 自带的库函数*/
void learn();
int loadFaceImgArr(char *filename);
void recognize2(IplImage *img);
void doPCA();
void storeTrainingData();
int loadTrainingData(CvMat** pTrainPersonNumMat);
int findNearestNeighbor(float* projectedtestFace);
//用字符串时一定要把using namespace std;写在前面,否则不能用,下面是用于显示的字符串
CvHaarClassifierCascade* cascade=NULL;
//OPENcv 的分类器文件进行人脸检测,此函数是一个匹配函数,根据不同的分类
器(tree、stump)进行不同的匹配,返回整形值,具体参考
http://baike.so.com/doc/6988305.html 或
http://www.docin.com/p192656933.html ,是人脸检测中用到的一个很重要
的函数
/*以下是MFC 框架代码,在我们用鼠标进行搭建框架的时候自动生成*/
class CAboutDlg : public Cdialog
{
public:
CAboutDlg();
// Dialog Data
//{{AFX_DATA(CAboutDlg)
enum { IDD = IDD_ABOUTBOX };
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CAboutDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX);
//}}AFX_VIRTUAL
// DDX/DDV support
// Implementation
protected:
//{{AFX_MSG(CAboutDlg)
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAppDesignDlg dialog
CAppDesignDlg::CAppDesignDlg(CWnd* pParent /*=NULL*/)
: CDialog(CAppDesignDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CAppDesignDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
pCapture = NULL;
m_totalfrm = 0;
m_curfrm = 0;
m_stop = false;
loadxml=false;
m_src = NULL;
m_times =0;
}
void CAppDesignDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAppDesignDlg)
//DDX_Control(pDX, IDC_PROGRESS1, m_progress);
//}}AFX_DATA_MAP
DDX_Control(pDX, IDC_PROGRESS1, m_progress);
}
BEGIN_MESSAGE_MAP(CAppDesignDlg, CDialog)
//{{AFX_MSG_MAP(CAppDesignDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON1, OnOpenFile)
ON_WM_TIMER()
ON_BN_CLICKED(IDC_BUTTON5, OnStop)
ON_WM_CTLCOLOR()
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_BUTTON2, &CAppDesignDlg::OnBnClickedButton2)
ON_BN_CLICKED(IDC_BUTTON3, &CAppDesignDlg::OnBnClickedButton3)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAppDesignDlg message handlers
BOOL CAppDesignDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// Add "About..." menu item to system menu.
// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
剩余18页未读,继续阅读
资源评论
我是你的春哥!
- 粉丝: 1w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 质量安全排查报告.docx
- 职业中专技工学校专业评估表.docx
- 质量控制资料核查表:建筑保温工程.docx
- 质量目标统计数据表.docx
- 质量内审方案.docx
- 中国古今地名对照表.docx
- 智力残疾评定标准一览表.docx
- 中央造林补助实施方案小班一览表.docx
- 肘关节功能丧失程度评定表.docx
- 重要神经及血管损伤评定.docx
- 自建房安全整治和农村住房建设考评内容和评分标准.docx
- 走访服务企业登记表.doc
- 智能车开发技术的多领域深度解析及应用
- 西红柿叶片图像目标检测数据【已标注,约700张数据,YOLO 标注格式】
- 蓝桥杯开发技术的全面解析与备赛建议
- 相当于去中心化的QQ版本了
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功