新闻中心

EEPW首页 > 光电显示 > 设计应用 > 基于场所人数检测的照明节能控制系统设计

基于场所人数检测的照明节能控制系统设计

作者: 时间:2011-06-23 来源:网络 收藏

1.2 S3C2440芯片开发
(1)WinCE条件下USB设备的开发
由于本系统运用USB接口来进行图像的采集,所以要对Windows CE下的USB设备驱动进行开发。在Windows CE系统下对USB设备进行开发需要运用系统本身提供的流接口驱动模型,它能够为设备驱动的开发提供通用的接口函数,系统将会对设备进行编号,这样就可以在程序中直接打开设备并且对其进行操作。本系统的USB摄像头驱动的设计采用了4个流接口函数:CAM_Init、CAM_Open、CAM_IOControl、CAM_Close,完成获取注册表中驱动、初始化系统、处理用户命令、释放分配资源的功能。
(2)GPIO接口的开发
GPIO接口的控制首先需要设置GPXCON寄存器为输出功能,然后再通过设置GPXDAT寄存器的值为0或1来控制GPIO口的低或高电平。在S3C 2440中提供了4个LED灯,它们分别由GPB5到GPB84个GPIO口来控制,用户可以通过观察LED灯的不同状态来了解信号的输出。要实现这个驱动程序,首先要建立流驱动所必需的文件并设定设备名,其次要将代码对信号的输出和控制初始化,最后以条件语句表示设备出现的各种情况,并运行主程序。
1.3 主要算法及设计
针对公共场所颜色较为单一,且在HSV颜色空间里H、S、V值分布比较明显的特点,本系统采用对图像进行处理的方法来获取公共场所的人数。
将模板彩色图像进行锐化操作并调节图像亮度,随后将此RGB图像进行颜色空间转换,这样就可以分别得到每一点的H、S、V值,并利用图像上各个点的H、S、V值来进行下一步的计算,此时将公共场所依照外轮廓划分成9个区域。由于物体对背景的遮挡效果,图像被遮住部分将拥有与模板图像对应位置不同的H、S、V值。采用循环对比的方法,将两幅图像上对应点的H、S、V值进行比较,如果两者值之差在规定的误差范围之内,那么将此像素跳过,当两点H、S、V值相差较大时,标记这些像素。然后将图像进行二值化处理,即标记的像素的值为1,没有标记的像素的值为0,再通过形态学滤波方法(如腐蚀、膨胀),最终过滤掉多余的杂点得到单一目标的分布区域。计算出目标面积在每个划分区域的百分比,由给出的公共场所的最大容量得出总人数,确定开灯数目所占总数目的比值。
设si为在第i区域图像中对象的面积,si为图像中第i区域的总面积,n为第i区域的最大容量,N为所求总人数,a为需要开的照明灯个数,A为照明灯总个数,根据上文即可得以下算式:
c.JPG


评论


相关推荐

技术专区

关闭