新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 基于Nios Ⅱ软核的人脸检测系统设计

基于Nios Ⅱ软核的人脸检测系统设计

作者:时间:2012-02-21来源:网络收藏

数据通信模块

根据实际情况选择用以太网或GPRS把跟踪后的结果发送到主控制站。在有以太网连接的条件下优先选用以太网连接,可以提供较高的传输速率和可靠性,在没有以太网的条件下选用GPRS进行通信。同时,如果用户需要,也可以直接在LCD上显示。

跟踪算法的实现

在实现跟踪算法之前,图像的预处理很重要。图像预处理主要有噪声滤除和图像增强,提高图像的质量。本系统采用中值滤波进行噪声滤除。与其它滤波方法相比,中值滤波不仅能有效滤除图像中的孤立噪声点,还能保护边界信息。图像增强技术主要包括直方图修改处理、图像平滑处理和图像锐化处理等。所以,实际的人脸检测系统采用图像增强来消除光照影响。

本系统采用基于肤色和差分帧相结合的方法来确定视频序列中的人脸。这样不但可以排除类似肤色背景的干扰,提高人脸检测的准确性,还可以保证检测与跟踪的实时性。大量实验表明,人脸肤色在YCrCb 空间内的Cr和Cb 值分布在特定的范围之内,Cr 范围为135~156,Cb 的范围为108~123。由此建立人脸肤色聚类模型,即彩色图像的像素B 满足条件:108 ≤Cb ≤123 和135≤Cr≤156,则B 是肤色点。

(1)根据公式

可将图像转化为一个二值图像,其中白色像素点为肤色点,黑色像素点为非肤色点。由于头部与背景的相对运动,差分帧法是运动图像分析的有效方法。它检测图像序列相邻两帧之间的变化,即直接比较两帧图像对应像素点的灰度值。帧与帧之间的变化可用一个二值差分图像表示:

(2)式中的T是阈值

使用 II 的定制指令,可以将一个复杂的标准指令序列简化为一个用硬件实现的单一指令,从而简化系统软件设计并加快系统运行速度。在人脸检测跟踪算法中,对图像的处理数据运算量大,循环数目多,而 II 的定制指令个数已增加到256个,可以使用定制指令完成许多循环内的数据处理,从而加速数据处理的速度。定制指令逻辑和 II 的连接在SoPC Builder 中完成。Nios II CPU 配置向导提供了一个可添加256 条定制指令的图形用户界面,在该界面中导入设计文件,设置定制指令名,并分配定制指令所需的CPU 时钟周期数目。系统生成时,Nios II IDE 为每条用户指令产生一个在系统头文件中定义的宏,可以在C 或C + + 应用程序代码中直接调用这个宏。

结语

本文的人脸检测跟踪系统利用32 位Nios Ⅱ处理器在FPGA上完成设计, 减小了系统的体积,而且在PC上开发的程序可移植到Nios Ⅱ处理器上,实现了片上系统。Nios 是性价比较高的微处理器,可以方便地把用户需要的接口和自定义的逻辑加入到系统中。本文介绍的方法体现了SoPC 嵌入式系统的灵活性。因此,这种方法能够有效地缩短开发周期、 同时能够延长产品的生命周期、 可以不断地在原有产品的基础上进行升级设计。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭