摘要:实现图像中人脸检测,和人眼定位.输出检测标记图像和定位坐标. 工具:vs2015 opencv3  C++ 资源:haarcascade_frontalface_alt2.xml;haarcascade_eye_tree_eyeglasses.xml 链接:https://pan.baidu.com/s/1uk8P1TF7XXCoMMd0sNDGVg 提取码:az01 实现结果: 实现过程: Detect.h #pragma once #include <opencv2/opencv.hp…
上学时候用matlab学过一些图像处理的基础知识,当时课程作业是用haar实现人脸检测 but当时是心思根本不在图像处理上,so找了个同学帮忙做的,自己没上心 然鹅天道好轮回,现在捡起来了原来的算法一脸懵逼,自己挖的坑再深也得跳下去啊! 先上一张经典的lena图镇场子! 流程图: 读取一张图片→转灰度图→人眼/人脸检测→标识出来→显示/保存结果 其中,重中之重就是怎样进行检测?下面主要讲一下openCV中现成的一种算法——Haar 算法详解请参考https://blog.csdn.net/pla…
1.首先实现人脸检测 import cv2 img = cv2.imread("people.jpg",1) #读入图像 #导入人脸级联分类器引擎,“.xml”文件里包含了训练出来的人脸特征 face_engine = cv2.CascadeClassifier(cv2.data.haarcascades+'haarcascade_frontalface_default.xml') #用人脸级联分类器引擎进行人脸识别,返回的faces为人脸的坐标列表 #scaleFactor--表示在…
计算机视觉领域中,目标检测一直是工业应用上比较热门且成熟的应用领域,比如人脸识别.行人检测等,国内的旷视科技.商汤科技等公司在该领域占据行业领先地位.相对于图像分类任务而言,目标检测会更加复杂一些,不仅需要知道这是哪一类图像,而且要知道图像中所包含的内容有什么及其在图像中的位置,因此,其工业应用比较广泛.那么,今天将向读者介绍该领域中表现优异的一种算算法——“你只需要看一次”(you only look once,yolo),提出该算法的作者风趣幽默可爱,其个人主页及论文风格显示了其性情,目前该…
1.Easily Create High Quality Object Detectors with Deep Learning 2016/10/11 http://blog.dlib.net/2016/10/easily-create-high-quality-object.html dlib中的MMOD实现使用HOG特征提取,然后使用单个线性过滤器.这意味着它无法学习检测出具有复杂姿势变化的物体.HOG:方向梯度直方图(Histogram of oriented gradient)是在计算机…
#include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/core/core.hpp> #include <opencv2/objdetect/objdetect.hpp> #include <QDebug> using namespace cv; void detectAndDraw( Mat& img,…
  OpenCV全称是Open source Computer Vision Library(开放源代码计算机视觉库),是一个用于图像处理.分析.机器视觉方面的开源函数库,提供了很多图像处理的工具和可以直接使用的API接口.   OpenCV自带了函数detectMultiScale()可以实现对行人和人脸的检测,实现简单,但识别效果相对较差. 行人检测   在行人检测上,OpenCV采用的是HOG(特征检测算法)+SVM算法. import cv2 def is_inside(o,i): ox…
Viola-Jones 人眼检测算法+meanshift跟踪算法 这次的代码是对视频中的人眼部分进行检测加跟踪,检测用的是matlab自带的人眼检测工具箱 下面是matlab官网介绍这个算法的一些东西: http://cn.mathworks.com/help/vision/examples/face-detection-and-tracking-using-camshift.html?searchHighlight=Viola-Jones http://cn.mathworks.com/hel…
如题 这里将任务分解为三大部分: 1.录播放视频 2.人脸检测 3.部分高斯模糊 其中重点放在人脸检测和部分高斯模糊上 1.录播放视频(以opencv中的VideoCapture类进行实现) 首先罗列下操作环境:win10+vs2013+opencv3.0+单摄像头 opencv中提供了VideoCapture和CvCapture对视频进行操作 其中官方给出CvCapture的API为 实例化CvCapture对象的时候,需要调用cvCaptureFromCAM(int device)进行实例化…
 Python+OpenCV图像处理—— 直线检测 直线检测理论知识: 1.霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像中分离出具有某种相同特征的几何形状(如,直线,圆等).最基本的霍夫变换是从黑白图像中检测直线(线段). 2.Hough变换的原理是将特定图形上的点变换到一组参数空间上,根据参数空间点的累计结果找到一个极大值对应的解,那么这个解就对应着要寻找的几何形状的参数(比如说直线,那么就会得…
本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) 微博:http://weibo.com/u/1723155442 知乎:http://www.zhihu.com/people/mao-xing-yun 邮箱: happylifemxy@163.com 写作当前博文时配套使用的OpenCV版本: 2.4.9 本篇文章中,我们一起探讨了OpenCV…
平台:win10 x64 +VS 2015专业版 +opencv-3.x.+CMake 待解决!!!Issue说明:最近做一些字符识别的事情,想试一下opencv_contrib里的Text(自然场景图像中的文本检测与识别)模块. 原因: 解决办法: 目录: 一.下载地址汇总(OpenCV+OpenCV_contrib+CMake)二.中间遇到的Issue汇总三.主要参考链接 1)Win10+VS2017编译opencv3.2.0和opencv_contrib3.2.0来调用text模块——ht…
人脸相似度检测主要是检测两张图片中人脸的相似度,从而判断这两张图片的对象是不是一个人. 在上一篇文章中,使用CNN提取人脸特征,然后利用提取的特征进行分类.而在人脸相似度检测的工作中,我们也可以利用卷积神经网络先提取特征,然后对提取的特征进行利用. 我们取fc7提取的4096维特征,然后对两个向量进行pairwise相似度检测,即可得到人脸相似度,然后设定一个阈值,判断是否维同一个人.…
上一节中我介绍了如何使用Opencv自带的opencv_traincascade.exe来做训练,接下来介绍如何使用训练生成的cascade.xml模型文件来检测车脸. 首先需要说明的是我这里的训练数据是卡口数据是在监控下面的照片,主要为了截取卡口摄像头拍摄下的照片的车脸部分,如下图是待检测图像: 这里主要基于了opencv中自带的检测函数,可以对目标物检测有一个较好的认识,读者可以用cmake生成Opencv的源码工程来细看具体实现细节(Cmake真是个神器).这里用到了timer头文件,可以…
https://randomnerdtutorials.com/esp32-cam-video-streaming-face-recognition-arduino-ide/ ESP32-CAM Pinout 下图显示了ESP32-CAM引脚排列(AI-Thinker模块). 图像源 - Seeed Studio 有三个GND引脚和两个引脚用于电源:3.3V或5V. GPIO 1和GPIO 3是串行引脚.您需要这些引脚才能将代码上传到您的电路板.此外,GPIO 0也起着重要作用,因为它确定ESP…
4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image classification 图像分类 不仅要判断图片中的物体还要在图片中标记出它的位置--Classification with localization定位分类 当图片中有 多个 对象时,检测出它们并确定出其位置,其相对于图像分类和定位分类来说强调一张图片中有 多个 对象--Detection目标检测…
项目地址 https://github.com/guoyaohua/SmileyFace 开发环境 Visual Studio 2010 MFC + OpenCV 功能描述 静态图像人脸检测 视频人脸追踪检测 摄像头人脸检测 人脸切割显示 实时面部识别 样本自动采集 基于面部识别的程序锁 系统框图 人脸检测 人脸识别 系统截图 本程序以用户体验为中心,界面简洁.明了.易于操作.即使第一次使用该应用,也可以流利的操作. 1.主界面 2.人脸检测效果图--标准正脸 3.人脸检测效果图--人脸集 4.…
This tutorial code’s is shown lines below. You can also download it from here . The second version (using LBP for face detection) can be found here #include "opencv2/objdetect/objdetect.hpp" #include "opencv2/highgui/highgui.hpp" #incl…
最近的研究要用到定位瞳孔的位置,所以上网搜了下相关的代码.总结如下: 1) 定位瞳孔可以直接使用opencv中的自带的分类器(haarcascade_eye_tree_eyeglasses.xml)来实现,以前听师兄说用opencv自带的这个方法定位瞳孔不准,但我自己做了实验后发现在正面人脸的情况下定位还是很准确的,后面有图.分析了下原因,师兄是他之前实验时感觉不准有可能是他的Opencv版本还不是很高,我这里用的是opencv2.4.4,相信opencv也在它的后续版本中不断的优化它的Mach…
很多朋友为了学习python.ML(机器学习).DL(深度学习).opencv等花费了大量时间配置安装环境(一个朋友花了4天时间才配置好)各种搜索.下载.安装配置,出问题等. 市面上的配置资料很多,选择也成为了难题,实际上呢,很多高效的方法提供给了我们,比如一些集成套件等.本文基于对大量资料的查询.对比和验证,发现利用现有资源,搭建集成开发环境约30分钟(网速够快),具体方法分享出来,方便大家学习,减少时间和人力付出,提升效率.本文搭建的环境,包括了opencv的人脸检测.识别(opencv_c…
前面说过,图像特征点检测包括角点和斑点,今天来说说斑点,斑点是指二维图像中和周围颜色有颜色差异和灰度差异的区域,因为斑点代表的是一个区域,所以其相对于单纯的角点,具有更好的稳定性和更好的抗干扰能力. 视觉领域的斑点检测的主要思路是检测出图像中比周围像素灰度打或者比周围区域灰度值小的区域,一般来说,有两种基本方法 1.基于求导的微分方法,这成为微分检测器 2.基于局部极值的分水岭算法,OPENCV中提供了simpleBlobDetector特征检测器来实现这种基本的斑点检测算法. LOG斑点检测…
/* 功能:实现对眼睛.脸部的跟踪. 版本号:1.0 时间:2014-4-27 */ #include <opencv2/objdetect/objdetect.hpp> #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/core/core.hpp> #include <iostream> #include…
参考: https://www.pyimagesearch.com/2015/09/07/blur-detection-with-opencv/ https://www.cnblogs.com/arkenstone/p/7900978.html 先对图像用拉普拉斯算子进行滤波,然后求取得到的结果图像的方差,如果方差小于一定值则图片视为模糊.利用python很好实现: img2gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) # 将图片压缩为单通道的灰度…
1. cv2.cvtcolor(img, cv2.COLOR_BGR2GRAY) # 将彩色图转换为灰度图 参数说明: img表示输入的图片, cv2.COLOR_BGR2GRAY表示颜色的变换形式 2. cv2.findContours(img,mode, method)  # 找出图中的轮廓值,得到的轮廓值都是嵌套格式的 参数说明:img表示输入的图片,mode表示轮廓检索模式,通常都使用RETR_TREE找出所有的轮廓值,method表示轮廓逼近方法,使用NONE表示所有轮廓都显示 3.…
前几天老大给了个任务,让我帮slam组写一个基于深度摄像头的障碍物检测,捣鼓了两天弄出来了,效果还不错,就在这里记一下了. 代码的核心思路是首先通过二值化,将一米之外的安全距离置零不考虑,然后通过开运算去除掉一些噪点(这个后来发现不一定有必要),在求出所有障碍物的凸包,这个时候要计算面积,当面积小于一定的阈值的时候不予考虑,最终输出障碍物的凸包坐标. //find_obstacle函数是获取深度图障碍物的函数,返回值是每个障碍物凸包的坐标,参数一depth是realsense返回的深度图(ush…
人脸特征提取 本文主要使用dlib库中的人脸特征识别功能. dlib库使用68个特征点标注出人脸特征,通过对应序列的特征点,获得对应的脸部特征.下图展示了68个特征点.比如我们要提 取眼睛特征,获取37到46这几个特征点即可. 开搞! 在代码中增加类似的映射,直接通过调用对应部位. Python学习交流Q群:660193417##3 FACIAL_LANDMARKS_68_IDXS = OrderedDict([ ("mouth", (48, 68)), ("right_ey…
1.cv2.cornerHarris(gray, 2, 3, 0.04)  # 找出图像中的角点 参数说明:gray表示输入的灰度图,2表示进行角点移动的卷积框,3表示后续进行梯度计算的sobel算子的大小,0.04表示角点响应R值的α值 角点检测:主要是检测一些边角突出来的点,对于A和B这样的面上的点而言,一个卷积框在上面移动,框中的基本像素点不发生变化, 对于像C和D边界点,只有x或者y轴方向上的平移,像素框内的像素会发生偏移,而对于E和F这样的角点而言,不管是像x轴或者向y轴平移,像素框内…
Dlib库中提供了正脸人脸关键点检测的接口,这里参考dlib/examples/face_landmark_detection_ex.cpp中的代码,通过调用Dlib中的接口,实现正脸人脸关键点检测的测试代码,测试代码如下: /* reference: dlib/examples/face_landmark_detection_ex.cpp This program shows how to find frontal human faces in an image and estimate th…
基于机器学习CNN方法来检测人脸比之前介绍的效率要慢很多 需要先下载一个训练好的模型数据: 地址点击下载 // dlib_cnn_facedetect.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" #include <iostream> #include <dlib/dnn.h> #include <dlib/data_io.h> #include <dlib/image_processing.h>…
一.图像梯度算法 1.图像梯度-Sobel算子 dst = cv2.Sobel(src, ddepth, dx, dy, ksize) ddepth:图像的深度 dx和dy分别表示水平和竖直方向 ksize是Sobel算子的大小 # *******************图像梯度算法**********************开始 import cv2 # import numpy as np img = cv2.imread('pie.png',cv2.IMREAD_GRAYSCALE) cv…