caffe框架在添加自己的MFC程序(上)(2016-08-04 )

转自:http://blog.csdn.net/shakevincent/article/details/52115872


自从深度学习火起来以后,搞计算机视觉的不了解一点深度学习的知识都不还意思。以前的人脸识别还是LBP+svm的时代,突然出现了一个深度学习,大家都努力的奋斗。为了响应号召,我们利用cnn训练自己的网络然后用于人脸识别,参考classification.cpp修改得到控制台程序,没有一个界面怎么能行,没有QT经验,只能继续使用苦逼的MFC,下面是我在caffe框架下编写MFC界面时一些记录,希望与大家共勉: 
1:编译微软的caffe,参考http://blog.csdn.net/shakevincent/article/details/51694686 
前期开发的时候可以编译一个cpu版本的,程序完成后直接移植到GPU版本就可以 
2:删除不需要的其他工程,我只保留了一个classification,把之前的控制台程序移植过去,完成一个测试程序。 
3:在caffe.sln下添加一个一个MFC工程。命名为caffe-mfc。 
(1) 尝试新建一个工程文件 
(2) 添加依赖项 
(3) 属性—通用属性—项目依赖项中添加libcaffe 
(4) 添加Nuget依赖项工具包 
(5) 添加生成的libcaffe.lib 
出现以下为错误: 
这里写图片描述 
解决方案:因为建立的MFC是win32版本的和caffe的版本冲突,所以修改mfc的配置管理器为x64 
这里写图片描述 
解决方案:添加Nuget依赖项工具包 
这里写图片描述
无法解析的错误: 
这里写图片描述
解决方案: 
手动添加HDF5的头文件和lib文件 
hdf5.lib 
hdf5_cpp.lib 
hdf5_f90cstub.lib 
hdf5_fortran.lib 
hdf5_hl.lib 
hdf5_hl_cpp.lib 
hdf5_hl_f90cstub.lib 
hdf5_hl_fortran.lib 
hdf5_tools.lib 
szip.lib 
zlib.lib 
include和lib文件的路径添加到VC++目录中。 
目前完成了caffe_mfc的编译。 
4:框架编译通过后可以自己先尝试添加一些简单的控件和程序。我先添加的是dlib人脸检测的程序,然后在添加识别的程序。 
步骤: 
1:添加按键控件包括(打开摄像头,关闭摄像头,截图,退出,训练,测试) 
2:添加三个图片控件修改属性(一个用于显示当前摄像头采集的图像。一个显示归一化后的图像,用于显示对比的图像)(或者添加四个图片控件,用于显示识别时可能的人脸信息) 
3:添加一个文本编辑框用于输入姓名和ID(保存在txt中) 
4:编译打开摄像头的程序关闭摄像头程序等 
5:添加ontimer函数,用于处理摄像头的事件 
6:添加dlib项目属性表,头文件和库文件,并在dlg.cpp中添加需要的头文件名 
7:添加程序(缺点:速度!!!!!)可能是我CPU不行。 
下面是我再程序调试时可能遇到的错误,以及解决方案: 
遇到的问题: 
1:重新配置程序: 
1>—— 已启动生成: 项目: caffe_mfc, 配置: Release x64 —— 
1> LINK : fatal error LNK1104: 无法打开文件“msvcprt.lib” 
解决方案: 
属性——链接器——输入——忽略特定默认库——添加msvcprt.lib 
可能会遇见的错误: 
2:Link:无法打开libcaffe.lib 
解决方案:添加生成的libcaffe.lib的库路径 
目前开发的程序中: F:\桌面文件\人脸识别MFC\7.1-caffe-face可以正常运行(7.9)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值