当前位置: 首页 > news >正文

关于网站建设请示深圳高端包装盒设计

关于网站建设请示,深圳高端包装盒设计,响应式网站居中,微信商户平台入口前言 依赖库#xff1a;opencv 2.4.9 /dlib 19.0/libfacedetection 本篇不记录如何配置#xff0c;重点在实现上。使用libfacedetection实现人脸区域检测#xff0c;联合dlib标记人脸特征点#xff0c;最后使用opencv的FaceRecognizer实现人脸识别。 准备工作 1、配置好Op… 前言 依赖库opencv 2.4.9 /dlib 19.0/libfacedetection 本篇不记录如何配置重点在实现上。使用libfacedetection实现人脸区域检测联合dlib标记人脸特征点最后使用opencv的FaceRecognizer实现人脸识别。 准备工作 1、配置好Opencv2.4.9。Opencv3.1需要另外下载一个包才有FaceRecognizer 2、配置好dlib 19.0(版本其实没有多大关系) 3、配置好ShiQi.Yu的人脸检测库 思想 训练模块人脸检测——获取人脸区域的点坐标——人脸关键点标记——人脸对正——归一化处理——保存图片——手动筛选图片——训练样本——得到train.xml 识别模块读取train.xml——循环人脸检测——获取人脸区域的点坐标——人脸关键点标记——人脸对正——归一化处理——送入model-predict——预测出结果——putText在方框上写出名字 结果 识别速度0.15~0.25秒Release平台。 识别精度还可以 使用了一段中国好声音的视频做识别。 当然这里用的是Fisherface算法主要还是样本不多已经可以搞定了。 代码 ReadCSV.h #include opencv.hpp #include iostream #include fstream using namespace cv; using namespace std; static void read_csv(const string filename, cv::vectorMat images, cv::vectorint labels, char separator ;) {std::ifstream file(filename.c_str(), ifstream::in);if (!file) {string error_message No valid input file was given, please check the given filename.;CV_Error(CV_StsBadArg, error_message);}string line, path, classlabel;while (getline(file, line)) {stringstream liness(line);getline(liness, path, separator);getline(liness, classlabel);if (!path.empty() !classlabel.empty()) {images.push_back(imread(path, 0));labels.push_back(atoi(classlabel.c_str()));}} } FaceRotate.h #include dlib/image_processing/frontal_face_detector.h #include dlib/image_processing/render_face_detections.h #include dlib/image_processing.h #include dlib/gui_widgets.h #include dlib/image_io.h #includedlib/opencv/cv_image.h #include dlib/opencv.husing namespace dlib;frontal_face_detector detector get_frontal_face_detector(); shape_predictor sp;//Already get FaceRecognition.cpp #include FaceDetect.h #include ReadCSV.h const int namenumber 4;//测试的人脸数量 const string textname[namenumber] { Hariem, Miss.Na, Mr.Wang, Jay.Chou };//做一个储存人脸名字的数组PtrFaceRecognizer GetTrainModel(string fn_csv)//输入CSV文件的路径名 {vectorMat images; vectorint labels;try {read_csv(fn_csv, images, labels);}catch (cv::Exception e) {cerr Error opening file \ fn_csv \. Reason: e.msg endl;// 文件有问题我们啥也做不了了退出了exit(1);}// 如果没有读取到足够图片我们也得退出.if (images.size() 1) {string error_message This demo needs at least 2 images to work. Please add more images to your data set!;CV_Error(CV_StsError, error_message);}PtrFaceRecognizer model createEigenFaceRecognizer(80);//创建人脸识别类 可修改 LBPHFace、EigenFace、FisherFacemodel-train(images, labels);return model; }int main() {Dlib_Predefine();//加载dlib的文件PtrFaceRecognizer model GetTrainModel(face.csv);//获得模型VideoCapture cap(好声音.mp4);Mat frame,gray;while (true){cap frame;if (!frame.empty()){gray FaceDetect(frame);if (!gray.empty())putText(frame, textname[model-predict(gray)], Point(50, 50), FONT_HERSHEY_DUPLEX, 3, Scalar(230, 255, 0), 2);//model-predict(frame) predictLabel 名字写在 1 1imshow(Face Recogniton, frame);waitKey(1);}else{ cout The Videos end. endl; break; }}} FaceDetect.cpp 用了掩码。 #include FaceDetect.h #include FaceRotate.h void Dlib_Predefine() {deserialize(shape_predictor_68_face_landmarks.dat) sp;//读入标记点文件 }cv::Mat FaceToOne(cv::Mat source)//归一化处理函数 {cv::equalizeHist(source, source);//直方图均衡cv::resize(source, source, cv::Size(92, 112));//裁剪cv::Mat Mask cv::imread(mask.jpg, 0);cv::Mat changedMask;source.copyTo(changedMask, Mask);return changedMask; }Mat FaceDetect(Mat frame)//脸是否存在 {Mat gray, error;cvtColor(frame, gray, CV_BGR2GRAY);int * pResults NULL;pResults facedetect_frontal_tmp((unsigned char*)(gray.ptr(0)), gray.cols, gray.rows, gray.step, 1.2f, 5, 24);int peopleNUM (pResults ? *pResults : 0);for (int i 0; i peopleNUM; i)//代表有几张人脸(pResults ? *pResults : 0){short * p ((short*)(pResults 1)) 6 * i;Rect opencvRect(p[0], p[1], p[2], p[3]);//gray gray(opencvRect);cv::rectangle(frame, opencvRect, Scalar(230, 255, 0));dlib::rectangle dlibRect((long)opencvRect.tl().x, (long)opencvRect.tl().y, (long)opencvRect.br().x - 1, (long)opencvRect.br().y - 1);//人脸对齐技术提高了准确率dlib::full_object_detection shape sp(dlib::cv_imageuchar(gray), dlibRect);//标记点std::vectorfull_object_detection shapes;shapes.push_back(shape);//把点保存在了shape中dlib::arrayarray2drgb_pixel face_chips;extract_image_chips(dlib::cv_imageuchar(gray), get_face_chip_details(shapes), face_chips);Mat pic toMat(face_chips[0]);cvtColor(pic, pic, CV_BGR2GRAY);return FaceToOne(pic);}return error; } FaceDetect.h #include opencv.hpp #include facedetect-dll.husing namespace cv; using namespace std;Mat FaceDetect(Mat frame); void Dlib_Predefine();//dlib 预定义的函数FaceRotate.h #include dlib/image_processing/frontal_face_detector.h #include dlib/image_processing/render_face_detections.h #include dlib/image_processing.h #include dlib/gui_widgets.h #include dlib/image_io.h #includedlib/opencv/cv_image.h #include dlib/opencv.husing namespace dlib;frontal_face_detector detector get_frontal_face_detector(); shape_predictor sp;//Already get Mask图片 转载于:https://www.cnblogs.com/mtcnn/p/9412040.html
http://www.pierceye.com/news/723087/

相关文章:

  • 深圳网站建设索q.479185700如何修改网站后台的用户名和密码
  • 长春网站推广专门做二手书网站或app
  • 北京智能网站建设制作什么叫优化
  • 免费移动网站建站wordpress加skype
  • 企业推广建站网页开发教程
  • 外贸网站定制开发网站虚拟主机过期
  • 学习网站建设要报班吗中国建设银行晋中分行网站
  • 学校网站建设经验介绍西安建设网站公司
  • 江西营销网站建设公司的企业诚信建设分析
  • 生活家装饰官方网站动画设计考研
  • 网站内部的信息安全建设怎么才能在百度上做引流呢
  • 男男做的视频网站wordpress 系统
  • 网站建设合同 附件上海网站制作费用
  • 知名的环保行业网站开发开发一个app难吗
  • 律师网站建设方案网站企业制作
  • 基础建设期刊在哪个网站可以查做网站咨询
  • 万网个人网站备案查询甘肃建设银行网站
  • 网站建设有什么费用wordpress国外主题网站
  • 手机网站下拉菜单代码com域名代表什么
  • 网站右侧信息跟随左侧菜单栏变化好牛网站建设
  • 手机网站pc网站免费国外服务器租用
  • 商城网站建设服务wordpress手机导航三横拦
  • app设计欣赏网站长沙制作公园仿竹护栏
  • 景泰县做网站网站建设上市
  • 电子商务网站开发课题简介php mysql网站开发...
  • 如何提升网站alexa排名wordpress加联系方式
  • 餐厅网站模版wordpress linux
  • 网站seo优化怎么做mes系统
  • 江津网站建设公司做外贸去哪个网站找客户
  • 网站建设-部署与发布wordpress怎么代码高亮