logo资料库

红外图像人脸范围识别算法.doc

第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
资料共3页,全文预览结束
1概述
2算法描述
2.1输入图像
2.2图像二值化
2.3二值图像的连通区域标记
1 概述 在人体温度检测报警系统中,我们需要在检测区域中实时的标识出一个或者多 个人体的脸部区域,并在识别出的每个区域中查找最高温度。 本文所描述的算法主要是识别出图像范围中的高温区域,涉及到的算法有图像 二值化、二值图像的连通区域标记。 参考文档: https://blog.csdn.net/ny1986/article/details/94431548 https://blog.csdn.net/qq_37385726/article/details/82015545 https://www.haolizi.net/example/view_21005.html https://blog.csdn.net/icvpr/article/details/10259577 2 算法描述 2.1 输入图像 算法是基于红外图像的 8 位灰度图,灰度值范围是 0-255。 2.2 图像二值化 图像二值算法,我们需提前设置一个阀值。在整幅图中查找,如果灰度值低于 阀值则赋值为 0,如果灰度值大于阀值则赋值为 255。如下图: 在上图中的阀值设置为 200,这个阀值可以在软件中修改,主要是用于区分高温 部分的范围,这个可以根据现场情况做调整。 海思 IVE 算法:HI_MPI_IVE_Thresh OpenCV 算法:threshold 2.3 二值图像的连通区域标记
在我们讨论连通区域标记的算法之前,我们先要明确什么是连通区域,怎样的 像素邻接关系构成连通。在图像中,最小的单位是像素,每个像素周围有 8 个邻接 像素,常见的邻接关系有 2 种:4 邻接与 8 邻接。4 邻接一共 4 个点,即上下左右, 如下左图所示。8 邻接的点一共有 8 个,包括了对角线位置的点,如下图所示。 如果像素点 A 与 B 邻接,我们称 A 与 B 连通,于是我们不加证明的有如下的结 论: 如果 A 与 B 连通,B 与 C 连通,则 A 与 C 连通。 在视觉上看来,彼此连通的点形成了一个区域,而不连通的点形成了不同的区 域。这样的一个所有的点彼此连通点构成的集合,我们称为一个连通区域。 下面这符图中,如果考虑 4 邻接,则有 3 个连通区域;如果考虑 8 邻接,则有 2 个连通区域。(注:图像是被放大的效果,图像正方形实际只有 4 个像素)。 二值图像的连通区域的算法需要设置一个最小面积,如果小于该面积的区域则忽略,本 示例设置的范围是 16 个像素,算法会将符合条件的区域全部找出,并标识出每个区域的坐 标点,如下图 1
右边有两个小区域并没有被标识出来,因为面积小于 16 个像素。 海思 IVE 算法:HI_MPI_IVE_CCL OpenCV 算法:cvFindContours 2
分享到:
收藏