应用层下的人脸识别(一):图像获取

news/2024/12/1 20:33:59/

本文为大家总结了人脸识别技术在安防领域应用的完整流程,以及产品设计的细节。其中包括:如何获取最佳图像,如何进行设备对接等经验。

图像获取是人脸识别的第一步,人脸识别项目中图像来源主要依靠各类监控相机,图像质量很大程度会影响人脸识别的准确率。当算法无法短期内优化时,可以从提升采集图像的质量入手提高人脸识别的准确率。图像质量与采集设备和采集环境密不可分,本文围绕相机选择与架设、相机接入两个主题展开,撰写了图像获取的相关要点。

一、相机选择与架设

1. 选择合适的相机

相机的性能决定了图片质量的上限,因此相机的选择作为人脸识别的第一步至关重要。需要根据不同的使用场景来选择。

户外远距离人脸识别,建议选择具有逆光调节(宽动态)、200万像素以上的一体相机,需要考虑到相机的防雨、防雾、夜视能力。

如果项目对人脸抓拍图片质量要求较高,则可选择专业的人脸抓拍机。

2. 镜头的选择

相机镜头焦距决定了相机的成像距离,大多数项目型相机需要自配镜头,下图展示了焦距大小与识别范围之间的关系。注意焦距与识别范围成正相关。

应用层下的人脸识别(一):图像获取

图1

3. 相机的架设

即使选择了效果最佳的相机和镜头,也需要架设得当才能发挥其最佳效果。于是我们需要事先计算出最合适的架设高度俯视角

应用层下的人脸识别(一):图像获取

图2

从图2不同角度拍摄的人脸效果对比可知,不同的拍摄角度获取的人脸效果互有差异,而按照人脸采集的惯例,通常是采用水平拍摄的方式最大程度获取目标人员的正脸,如身份证照片的采集。

俯仰角

人脸摄像机在安装时要求水平面上位于通道中轴线上(水平无偏转),并垂直面上有一定的俯视角度以照顾不同高矮人员经过时能正常抓拍,避免一前一后通过抓拍区域时后方人脸被遮挡,俯视角度α 要求保持在 10°±3°。

架设高度

应用层下的人脸识别(一):图像获取

图3

如图3所示,推荐俯视角α为10°,摄像机视角中轴线延伸到人脸下颌位置,保证人脸处于画面中心区域,取成年人下颌以下的平均高度为 1.5 m(头部长 0.2 m),可得:

L=tan(10°±3°)×D(4)·1

H=L+1.5=tan(10°±3°)×D+1.5 (5)

例:室内相机可视距离为6m,则算得H为2.5m,即相机应该架设的高度为2.5米,如图4所示。

应用层下的人脸识别(一):图像获取

图4

架设环境

  • 摄像机镜头至人员通道出入口中间空旷、无遮挡;
  • 聚焦清晰,光照均匀,特别注意避免逆光、侧光,必要时进行补光;
  • 人脸大小80像素以上(双眼距离大于40像素);
  • 人脸的俯仰角度在15度以内,左右角度在30度以内。

调整镜头

调整镜头的目是获得合适的观察宽度。摄像机像素的大小决定了设备可观察画面宽度的范围,观察宽度过大会导致人脸抓拍图片模糊,所以一个合适的观察宽度十分重要,人脸宽度像素宜大于120,瞳距像素宜大于40

如表1,统计了不同像素的最佳观察宽度:

表1

例:按照人像识别要求,人脸横向像素点宜在 120 以上,1080P 摄像机全幅画面横向像素点为 1920,成年人脸的横向平均宽度为 0.16 m,场景宽度(V)计算公式为:

应用层下的人脸识别(一):图像获取

应用层下的人脸识别(一):图像获取

图5

二、相机接入

大部分人脸识别的场景,是建立在对实时视频流(图片流)的基础之上,例如你想检测一个摄像机实时画面中的人脸,平台就需要先获取相机的实时视频流(图片流),这就涉及到了平台与相机等设备对接的问题。

前端相机与平台之间是通过网络连接的,如果想实现对接,就需要平台满足相应的网络协议。

1. 什么是网络协议?

网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合

例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。

为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符。

2. 网络协议的结构

网络协议分为很多种,例如TCP/IP协议、IPX/SPX协议、NetBEUI协议等。相机对接用到的是基于TCP/IP的四层网络,下三层由网卡、驱动、操作系统实现,研发只需要依据设备的用途开发应用层的协议。

应用层下的人脸识别(一):图像获取

图6

3. 通过协议接入相机

平台对接相机的目的是获取相机的实时视频流(普通相机)或图片流(人脸抓拍相机),所以需要开发相应的流媒体服务协议,常用的视频流媒体协议有RTP、RTSP、RTCP等,一般相机通用的协议为RTSP,人脸抓拍机一般支持FTP。

除此之外还需要在应用层设计添加相机的入口,需要用户手动填写相机的IP地址、端口、用户名称及密码等。

以上就是系列文章的开篇-图像获取的相关内容,后续文章还将会介绍建立人脸库、建立人脸识别任务、人脸比中联动、人脸数据管理相关内容,欢迎关注公众号“阳春白雪”与我交流图像识别相关内容。


http://www.ppmy.cn/news/314617.html

相关文章

使用手机作单反相机的遥控器

2019独角兽企业重金招聘Python工程师标准>>> 你的相机用什么方式取景?液晶显示器?光学取景器?还是电子取景器?我们今天要介绍的就是颠覆大部分人使用习惯的一种取景方式,用手机的液晶屏取 景。这里我们要用…

加载图片节省内存的方法

加载图片节省内存1,在Image Views中调整图片大小如果要在UIImageView中显示一个来自bundle的图片,应该保证图片的大小和UIIimageView的大小是相同的,在运行中缩放图片是很消耗资源的,特别是UIImageView嵌套在UIScrollView中的情况…

设置通知栏的背景颜色或全幅背景

1. 效果图 2. 在xml布局中添加一个背景图片 , 这里就不贴代码了 3. 在MainActivity中添加如下代码 protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);translucentStatusBar(this, false);}sta…

图像几何校正

几何校正中混淆的概念 名词描述几何校正几何畸变会给基于遥感图像的定量分析、变化检测、图像融合 、地图测量或更新等处理带来误差(主要指二维平面坐标),所以需要针对图像的几何畸变进行校正,也就是几何校正。图像配准图像配准与…

Hadoop Distributed System (HDFS) 写入和读取流程

一、HDFS HDFS全称是Hadoop Distributed System。HDFS是为以流的方式存取大文件而设计的。适用于几百MB,GB以及TB,并写一次读多次的场合。而对于低延时数据访问、大量小文件、同时写和任意的文件修改,则并不是十分适合。 目前HDFS支持的使用…

centos7的docker安装与简单介绍

docker的基本组成(三要素) 镜像容器仓库 理解:镜像可以理解成一个类,容器就是用这个类new出来的对象,仓库就是放镜像文件的。docker本身是容器运行载体或管理引擎 安装 安装gcc yum -y install gcc安装需要的软件…

微服务_Nacos

简介 Nacos(全称为“动态服务发现、配置和服务管理平台”)是阿里巴巴开源的一款云原生服务发现和配置管理平台,支持多种语言和多种环境,包括Kubernetes、Docker、Spring Cloud等常见的云原生环境。它提供了服务发现、配置管理、服…

使用nginx实现不修改浏览器地址(不触发重定向)转发网络流量

近日笔者需要实现一个网络流量转发的需求。要求很简单:将浏览器的请求转发到一个指定的域名,需要提供一个https端口并且把http端口转发到https端口。由于笔者对nginx的认知有限,因此磕磕绊绊研究了一阵,将结果写出来,以…