Matlab实现人眼精准识别和定位
detector=vision.CascadeObjectDetector('LeftEyeCART');
利用matlab中的vision包来检测人眼
是不是定位的很准,下面放一下代码:
detector=vision.CascadeObjectDetector('LeftEyeCART');
input_image=imread('img3.jpg');
figure();imshow(input_image);title('原图');
gauss_image=imgaussfilt(input_image,1);
eyes=step(detector,gauss_image);size_eyes = size(eyes);%眼睛的狂
hold on;
for i =1:size_eyes(1);2eyes_final=eyes(i,1:2);%x,yimage = imcrop(gauss_image,eyes(i,:));rectangle('Position',eyes(i,:),'edgeColor','b');image = rgb2gray(image);image = im2double(image);[grad_x,grad_y] = gradient(image);%计算梯度g = grad_x.*grad_x + grad_y.*grad_y;g = sqrt(g);%眼睛区域的梯度图std_g = std(g(:));%计算标准差mean_g = mean(g(:));%计算平均值%其实这一步取得是< mean_g - 0.5*std_g和> mean_g + 0.5*std_g部分g_1 = g;g_1(g_1 < mean_g + 0.5*std_g) = 0;%梯度图中小于均值+0.5*标准差的设置为0g_2 = g;g_2(g_2 > mean_g - 0.5*std_g) = 0;%梯度图中大于均值-0.5标准差的设置为0g = g_1 + g_2;temp_g = g;w = 1-image;temp_g(temp_g ~= 0) = 1;%将不等于0的设置为1 这该图只有0和1两个值grad_x = grad_x.*temp_g;%与梯度相成grad_y = grad_y.*temp_g;size_img = size(image);Dx = repmat(1:size_img(2),size_img(1),1);%每一行都是1-44Dy = repmat(transpose(1:size_img(1)),1,size_img(2));%转置C_max = 0;X = 0;Y = 0;%为了得出眼睛的中心位置for x = 1:size_img(2)for y = 1:size_img(1)D_x = Dx - x;D_y = Dy - y;D_t = D_x.*D_x + D_y.*D_y;E = sqrt(D_t);D_x = D_x./E;D_y = D_y./E;C_x = D_x.*grad_x;C_y = D_y.*grad_y;C = w(y,x)*(C_x + C_y);C(C < 0) = 0;ind = find(isnan(C));C(ind)=0;% C(isNaN(C)) = 0;total_C = sum(sum(C));if(total_C > C_max)C_max = total_C;X = x;Y = y;endendendplot(X+eyes_final(1),Y+eyes_final(2),'r+','MarkerSize',10);p(i,1)=X+eyes_final(1);p(i,2)=Y+eyes_final(2);
end
再展示几张普通人的定位把:
Matlab实现人眼精准识别和定位相关推荐
- matlab人眼识别原理,基于MATLAB的人眼检测.docx
基于MATLAB的人眼检测要点 目录 TOC \o "1-3" \h \z \u HYPERLINK \l "_Toc388122853" 摘要 PAGEREF ...
- 基于matlab的蓝色车牌识别(车牌定位)
目录 一 处理流程 二 结果展示 三 核心要点解读 四 matlab代码实现 整套方案还包括以下博客: (1)基于matlab的蓝色车牌识别(绪论) (2)基于matlab的蓝色车牌识别(车牌定位) ...
- 基于MATLAB的人脸考勤识别系统
基于MATLAB的人脸考勤识别系统 摘 要 人脸识别是模式识别和图像处理等学科的一个研究热点,它广泛应用在身份验证.刑侦破案.视频监视.机器人智能化和医学等领域,具有广阔的应用价值和商用价值.人脸特征 ...
- 超详细基于MATLAB的人脸考勤识别系统
基于MATLAB的人脸考勤识别系统 摘 要 人脸识别是模式识别和图像处理等学科的一个研究热点,它广泛应用在身份验证.刑侦破案.视频监视.机器人智能化和医学等领域,具有广阔的应用价值和商用价值.人脸特征 ...
- 基于PCA 人脸识别/人脸识别算法/人脸检测程序源码MATLAB ELM+PCA人脸识别 PCA人脸识别matlab代码 基于PCA算法的人脸识别
1.基于PCA的人脸识别代码 2.MATLAB ELM+PCA人脸识别 2.基于PCA的人脸识别(matlab)(采用PCA算法进行人脸识别,通过抽取人脸的主要成 分,构成特征脸空间,识别时将测试图像 ...
- 基于matlab的蓝色车牌识别(车牌倾斜矫正)
目录 一 处理流程 二 结果展示 三 核心要点解读 四 matlab代码实现 整套方案好包括以下博客: (1)基于matlab的蓝色车牌识别(绪论) (2)基于matlab的蓝色车牌识别(车牌定位) ...
- 【表盘识别】基于matlab霍夫变换钟表表盘识别【含Matlab源码 1943期】
一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[表盘识别]基于matlab霍夫变换钟表表盘识别[含Matlab源码 1943期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: ...
- 【第三届集创赛】Arm杯一等奖作品分享一:车牌的高速精准识别
首发极术社区 如对Arm相关技术感兴趣,欢迎私信 aijishu20加入技术微信群. 2019年8月19-21日,2018-2019第三届全国大学生集成电路创新创业大赛全国总决赛(以下简称" ...
- MATLAB实现物体颜色识别
颜色是物体表面的固有特征,在目标识别和图像分割中有着无法替代的作用. 机器视觉利用光电成像系统和图像处理模块对物体进行尺寸.形状.颜色等的识别.这样就把计算机的快速性.可重复性与人眼视觉的高度智能化和 ...
最新文章
- [Oracle]Oracle 各产品的 生命周期
- Python 生成exe文件报错:ImportError: unable to find Qt5Core.dll on PATH
- MySQL流程控制函数-case结构
- 使用VideoView做个实用的视频播放器
- parentNode,parentElement,childNodes,children的区别
- tomcat的安装及配置
- python爬虫进程和线程_python爬虫番外篇(一)进程,线程的初步了解-阿里云开发者社区...
- Spring : Spring @Transactional-嵌套事物回滚
- 存储虚拟化技术之解读
- 3dmax导入shp面拉伸建模
- typedef的4种常见用法
- 人力资源管理数据分析
- 计算机专业毕设论文题目大全(二)
- 上海生活品质远不如深圳——深圳与上海比较
- 傅里叶变换的一些总结
- Android中的热修复
- 项链分赃问题与Borsuk-Ulam定理
- ftp关键技术二:nobody进程创建和使用(一)
- 大公司用的企业网盘哪个好
- 交换机当做路由器使用的两种方法
热门文章
- 怎么彻底删除MySQL服务
- 小程序实现选择地址,搜索附近地址功能
- 如果说Android是Google的特工Smith,那么谁是Neo?
- vs2013安装异常,.net4.5.1安装报错0x80240017
- 盐城北大青鸟军训剪影丨磨炼钢铁意志,绽放迷彩青春
- Ubuntu设置双频
- Windows浏览器启动页被更改为www.hao123.com
- 2023 Pwn2Own 温哥华大赛公布目标和奖金
- Eclipse创建Maven项目报错处理Could not resolve archetype
- 同一电脑,java应用在win10与centos8启动速度对比