MobileNet是SSD模型的精简版,速度更快,因为SSD检测一百多个对象,而MobileNet只检测20种物体,速度比较快,可以实时检测。
mobilenet模型下载:https://github.com/weiliu89/caffe/tree/ssd#models,下载PASCAL VOC models下的第一个,其里面包含模型文件和描述文件,对于类别文件,可以打开opencv里的例程
E:\anzhuang\opencv3.4.1\opencv\sources\samples\dnn\ssd_mobilenet_object_detection.cpp,例程里列出了这20种对象,在此程序上进行修改如下:
#include<opencv2\opencv.hpp>
#include<opencv2\dnn.hpp>
using namespace cv;
using namespace std;
using namespace dnn;
const size_t inWidth = 300;
const size_t inHeight = 300;
const float inScaleFactor = 0.007843f;
const float meanVal = 127.5;
const char* classNames[] = { "background",
"aeroplane", "bicycle", "bird", "boat",
"bottle", "bus",