简单人脸识别

思路
找到图像中连通域面积最大的那块连通域。

i=imread('face.jpg');
I=rgb2gray(i);
BW=im2bw(I);             %利用阈值值变换法将灰度图像转换成二进制图像
figure(1);
imshow(BW);%最小化背景
[n1 n2]=size(BW);r=floor(n1/10); %分成10块  行
c=floor(n2/10);%分成10块  列
x1=1;x2=r;%对应行初始化
s=r*c; %块面积for i=1:10y1=1;y2=c;%对应列初始化for j=1:10%对四周区域进行处理 if(y2<=c || y2>=9*c) || (x1==1 || x2==r*10)loc=find(BW(x1:x2,y1:y2)==0);%找到一块中像素为0的坐标 结果存在矩阵中[o p]=size(loc);pr=o*100/s;%黑色像素所占比例if pr<=100BW(x1:x2,y1:y2)=0;% 该块变成全黑endimshow(BW);end%列跳跃 就是移到下一块y1=y1+c;y2=y2+c;end%行跳跃 也就是移到下一行x1=x1+r;x2=x2+c;
end
figure(2)
subplot(1,2,1);
imshow(BW)
title('图像处理');
%人脸识别
L=bwlabel(BW,8);%利用bwlabel()函数得到连通域区间
BB=regionprops(L,'BoundingBox');%得到矩形框 去框住每一个连通域%对每个矩形框进行记录,记录其左上角点,长,宽   然后转换成矩阵形式
BB1=struct2cell(BB);
BB2=cell2mat(BB1);[s1 s2]=size(BB2);
mx=0;
for k=3:4:s2-1p=BB2(1,k)*BB2(1,k+1); %连通域矩形面积%找出最大连通域面积 那块连通域就是我们寻找的人脸了if p>mx && (BB2(1,k)/BB2(1,k+1))<1.8mx=p;j=k;end
end
subplot(1,2,2);
title('人脸识别');
imshow(I);
hold on;
%画出人脸区域
rectangle('Position',[BB2(1,j-2),BB2(1,j-1),BB2(1,j),BB2(1,j)],'EdgeColor','r')

结果

MATLAB--数字图像处理 简单人脸识别相关推荐

  1. 2 找图像连通域_MATLAB--数字图像处理 简单人脸识别

    简单人脸识别 思路 找到图像中连通域面积最大的那块连通域. i=imread('face.jpg'); I=rgb2gray(i); BW=im2bw(I); %利用阈值值变换法将灰度图像转换成二进制 ...

  2. 《精通Matlab数字图像处理与识别》一6.2 傅立叶变换基础知识

    本节书摘来自异步社区<精通Matlab数字图像处理与识别>一书中的第6章,第6.2节,作者 张铮 , 倪红霞 , 苑春苗 , 杨立红,更多章节内容可以访问云栖社区"异步社区&qu ...

  3. 基于MatLab的PCA降维人脸识别系统(超详细解说)

    (一)基于MatLab的PCA降维人脸识别系统 本次博客内容将详细介绍如何使用MatLab,进行PCA降维来识别人脸.内容参考张铮<精通MatLab数字图像处理与识别>.书中有些内容应该是 ...

  4. matlab对于处理数字图像的优点,学习MATLAB数字图像处理经验谈

    学习MATLAB数字图像处理经验谈 学习数字图像处理经验谈 (赵小川) 一.面向应用:层层分解.抓住要点 我们学习数字图像处理的最终目的还是应用,不管是用它来研制产品还是研发项目抑或是研究课题,都要用 ...

  5. MATLAB数字图像处理系统-形状分类

    MATLAB数字图像处理系统-形状分类 摘 要 数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人 ...

  6. 基于数字图像处理的杂草识别

    一.课题介绍 杂草同农田作物争夺阳光和养分,严重影响了农作物的生长.为了达到除草的目的,人们开始喷洒大量的除草剂来进行除草.可是却忽略了除草剂的不当使用给人.畜以及环境造成的危害.本文从实际应用出发, ...

  7. MATLAB数字图像处理(一)

    了解MATLAB数字图像处理 MATLAB全称是Matrix Laboratory (矩阵实验室) ,数字图像是以数字方式存储的图像.将图像在空间上离散.量化存储每一个离散位置的信息就可以得到简单的数 ...

  8. matlab空域滤波,MATLAB数字图像处理基本操作及空域滤波

    MATLAB数字图像处理基本操作及空域滤波 实验一 MATLAB 数字图像处理基本操作及空域滤波实验目的1.了解有关数字图像处理的基本概念,熟悉Matlab软件中关于数字图像处理的基本命令,掌握利用M ...

  9. MATLAB数字图像处理系统[多功能]

    MATLAB数字图像处理系统[多功能] 目录 实验一 MATLAB数字图像处理初步 实验二 图像的代数运算 实验三 图像增强-空间滤波 实验四 图像分割 2 实验一 MATLAB数字图像处理初步 一. ...

最新文章

  1. 给参加学术会议的人一些宝贵建议
  2. QTP自动化测试自学手册V2.0版本
  3. 山体等高线怎么看_怎么判断牙龈已经萎缩?
  4. JVM系列之:从汇编角度分析Volatile
  5. C++STL与泛型编程 侯捷 (1)
  6. 【转】横向扩展与纵向扩展
  7. 数字信号处理实验三 FIR数字滤波器设计与软件实现
  8. 2018年通信工程师中级传输与接入无线专业实务真题
  9. proteus仿真微型计算机,微机原理与接口技术——基于8086和Proteus仿真(第3版)...
  10. Centos 7 安装 TEMPO2
  11. 为什么数字设计中经常使用 片选信号低电平有效,而不是高电平有效?
  12. zookeeper-选举流程
  13. css字体的分类及样式
  14. 水表计量单位_关于民用水表,你知道多少?
  15. windows7 VCP安装失败的解决办法
  16. GBase 8a支持国产CPU,ARM CPU,华为泰山的鲲鹏(Kunpeng),曙光的海光(Hygon),申威(SW)
  17. 小程序好看卡片式轮播
  18. 使用Excel和OutLook实现自动发送邮件
  19. kinslideshow使用时图片和a标签不能换行,否则。无法实现无缝滚动。
  20. 本地调试(local debug)Hive源码

热门文章

  1. Python笔记:纯python操作矩阵:进行矩阵的相乘运算
  2. 商城源码分享、几十个PHP商城源码,全部分享
  3. JAVA学生信息管理系统——增删查改
  4. Jpa第一话 -- Springboot集成Jpa和Mybatis以及Jpa的最全使用
  5. Jersey 的使用详解
  6. 栈的应用——数制转换
  7. 大学生可以选择加盟零食店么
  8. win10非系统盘的数据迁移
  9. 8086系列微型计算机SP的功能,微机原理与应用 作业
  10. 脉动调查中必问员工的 15个调查问题