CNN结构:Windows使用FasterRCNN-C++版本
参考文章:Windows下VS2013 C++编译测试faster-rcnn。
本文与作者的所写方法有些许不同,欲速则不达,没有按照作者的推荐方法,绕了个弯弯。
Windows版本纯C++版本的FasterRCNN比较难找,且懒得翻译Matlab版本代码,暂时可用的是这个项目:Windows下VS2013 C++编译测试faster-rcnn。
作者上传的faster-rcnn c++代码,链接https://github.com/zhanglaplace/Faster_rcnn_Cplusplus_vs2013,代码结合Matlab版本的faster-rcnn以及参考http://blog.csdn.net/oYangZi12/article/details/53290426?locationNum=5&fps=1 提供的代码。下载model,model文件可以从网盘下载,网盘链接:http://pan.baidu.com/s/1dF88JvV ,设置新建项目为启动项目,且只编译该项目。
1.重新编译Caffe库版本:
作者貌似给出了FasterRCNN的代码,且只给了FasterRCNN的代码,相关的Caffe依赖库并没有在源代码里直接给出。因此,参考:CNN:Windows下编译使用Caffe和Caffe2,直接使用Vs13的Caffe版本。
为什么VS15版本的不行,因为编译Caffe1-Vs15失败了,没能把roi_pooling_layer.cpp 编译进去。
1.1 可能错误:fast-r-cnn: caffe.LayerParameter“ has no field named ”roi_pooling_param。使用RBG版本的FasterRCNN和Caffe版本的源代码rbgirshick/caffe-fast-rcnn,仍然不能编译成功,没有包含ROI-Pooling的Win版本的代码。
排错方法:
1.在Vs13版本的工程中,添加已经存在的 roi_pooling_layer.cu roi_pooling_layer.cpp roi_pooling_layer.hpp到libCaffe工程,重新编译带RoiPooling的Caffe库。
2. 在src/proto/caffe.proto文件中,若不存在 roi_pooling_param , 则赋值 option roi_pooling_param = ID。取ID为一个与其他参数不重复的整数,我取其为152。
编译caffe完成后,在libcaffe后面加d,加入工程引用。
2. 测试
初始化错误,无法注册layer。
方法:去掉 //#include "register.h" 包含
程序运行可以完成。
3. 测试模型
在作者的网盘里面:网盘链接:http://pan.baidu.com/s/1dF88JvV ,下载模型。把模型文件添加后缀 .caffemodel, 写入程序网络配置参数文件。
E:/DataSet/Caffe/FasterRCnn/models/proposal_test.prototxt
E:/DataSet/Caffe/FasterRCnn/models/proposal_final.caffemodel
E:/DataSet/Caffe/FasterRCnn/models/detection_test.prototxt
E:/DataSet/Caffe/FasterRCnn/models/detection_final.caffemodel
出现错误: "Unknown layer type: " << type input
修改方法: 建立一个layer 文件夹,把MsCaffe相应的层的源文件添加到项目中,
4.重新编译,运行成功
总结:
结果:模型稍小,结果暂时不如YOLO2的检测结果。
另外,赞原作者
CNN结构:Windows使用FasterRCNN-C++版本相关推荐
- CNN结构:StyleAI-图片风格分类效果已成(-FasterRCNN-FCN-MaskRCNN)
一.StyleAI CNN结构:图片风格分类效果已成.可以在色彩空间对图片风格进行分类,并进行目标分类. StyleAI构架:FasterRCnn + RandomTrees,使用opencv的随机森 ...
- AI:IPPR的数学表示-CNN结构进化(Alex、ZF、Inception、Res、InceptionRes)
前言: 深度学习:sigmod.tanh.ReLU函数的优缺点-文章图文并举:文章:CNN的结构分析--: 文章:历年ImageNet冠军模型网络结构解析---: 文章:GoogleLeNet系列解 ...
- CNN结构:用于检测的CNN结构进化-分离式方法
前言: 原文链接:基于CNN的目标检测发展过程 文章有大量修改,如有不适,请移步原文. 参考文章:图像的全局特征--用于目标检测 目标的检测和定位中一个很困难的问题是,如何从数以万计的候选 ...
- 解决Windows对JDK默认版本切换问题
解决Windows对JDK默认版本切换问题 参考文章: (1)解决Windows对JDK默认版本切换问题 (2)https://www.cnblogs.com/ll409546297/p/659317 ...
- Windows下Wireshark安装版本选择方式
Windows下Wireshark安装版本选择方式 Wireshark版本分为1.X系列和2.X系列.1.X系列是早期版本,不提供中文版本.2.X系列是新版本,安装后,同时提供中文版和英文版.根据系统 ...
- windows 10 python哪个版本的好-windows支持哪个版本的python
Windows操作系统支持Python的Python2版本和Python3版本,下载安装时要根据windows的操作系统来选择对应的Python安装包,否则将不能安装成功. Python是跨平台的,免 ...
- windows 2008 server R2 版本概览
版本概览 每个Windows Server 2008 R2版本都提供了关键功能,用于支撑各种规模的业务和IT需求.点击以下的Logo或提供的链接,深入了解更多关于每个版本的知识. Windows Se ...
- CNN结构基元:纹理结构和纹理基元方程化GLOH、Gabor...(Code)
模式识别专注于寻找相同模式的共性和不同模式的分离.CNN把特征提取全局化,其中重要的一个是纹理特征,利用卷积核来表示纹理基元,用以重现模式,应如何显示表示. 第一次使用纹理特征,2012年,使用了灰度 ...
- 卷积神经网络CNN要点:CNN结构、采样层、全连接层、Zero-padding、激活函数及Dropout
CNN结构: 卷积层:特征提取: 采样层:特征选择: 全连接层:根据特征进行分类. 采样层(pooling): max-pooling:克服卷积层权值参数误差: average-pooling:克服卷 ...
最新文章
- python数据分析实训大纲,数据分析大赛考纲:(二)Python数据分析应会部分
- Android的矩阵(一):ColorMatrix
- 自己动手写一个Struts2
- 远程登录阿里云上的MySQL
- appium java api文档_Appium常用API
- 金融数据分析之pdfplumber提取年报PDF关键数据(其他PDF数据通用)
- 七个非常好用的黑科技APP,免费/小众/超实用,一次性全给你
- ctypes 传递opencv二值化图像给C++函数
- 液压系统管路流速推荐表_(整理)液压系统油管选择.
- Gradle下载官方地址
- office新建文件打开提示文件格式或扩展名无效
- 中央处理器(CPU)—— 控制器的功能和基本原理(微程序控制器(CU))
- 句子成分分析(C++)
- 现代软件工程讲义 5.1 软件的质量保证 (QA) 和测试 (Test)
- k8s:worke节点启动后,node处于NotReady状态
- 自动焊锡机加锡时的注意事项
- os.listdir()详解
- qpython3h教程_Python3实现AI五子棋【初版】|python3教程|python入门|python教程
- 希沃白板如何在公式里面输入绝对值符号
- 华为手机WIFI无线ADB教程
热门文章
- HBase总结(九)Bloom Filter概念和原理
- 并发工具类(一)等待多线程完成的CountDownLatch
- ThreadLocal 内存泄露的实例分析
- rabbitmq 3.7.0+erlang 20.1 安装
- Qt学习之路(9):深入了解信号槽
- 《树莓派Python编程入门与实战》——1.7 排除树莓派的故障
- overfit underfit
- Linux中THIS_MODULE宏定义详解
- WCF-004:WCF中也可以使用Microsoft.Practices.EnterpriseLibrary
- Centos7 CMake升级