OpenCV 用dnn深度学习模块检测图像

来源:互联网 发布:收看国外电视台软件 编辑:程序博客网 时间:2024/04/28 10:34

  最近在做人物目标检测相关的项目,发现OpenCV从3.1(或者更找)提供了dnn深度学习模块(需要自行编译进去,具体的可见这篇文章),因此下下来试试看。难度全在编译那边了,编译完成后反倒很简单,下面就简单的看一下:

  新建一个空白的Win32项目

  找到“opencv_contrib-master\modules\dnn\samples”文件夹(如果不知道这是什么,请去看看之前编译的那篇文章)的四个文件,扔进项目路径中,并通过添加现有项把“caffe_googlenet.cpp”添加进去。

  配置好OpenCV(注意工程编译器选项要选到X64)

  这里会用到的链接库有如下几项:

  opencv_core320.lib

  opencv_highgui320.lib

  opencv_dnn320.lib

  opencv_imgproc320.lib

  opencv_imgcodecs320.lib

  弄完编译,然后报错。。。原因是少了个叫做“bvlc_googlenet.caffemodel”的东西,去下载,然后编译即可。

  结果如图所示:

这里写图片描述

  看里面的分类器会发现有1000项可以识别的物体,下面随便测了几张,放出来

这里写图片描述

这里写图片描述

这里写图片描述

  可以看到,最后一张图像没有识别出人物,报的是“沙洲”。因为分类器中并没有人物这一类型。虽然“沙洲”也不算准确,但看起来还真有点像!

  demo我也上传上来了,如果有兴趣可以去下面地址下载,OpenCV我已经配置在里面了,用VS2015 X64可以直接运行。

  http://download.csdn.net/detail/ohantanyanying/9829262

2 0
原创粉丝点击