基于DSP的智能视频监控系统

来源:本站
导读:目前正在解读《基于DSP的智能视频监控系统》的相关信息,《基于DSP的智能视频监控系统》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于DSP的智能视频监控系统》的详细说明。
简介:本文利用ADSP Blackfin533(BF533)为核心处理器,设计了视频检测系统,实现了视频图像的采集、处理和网络传输,该系统具有体积小、功耗低、性能高、可便携等优点。

引言

随着经济的飞速发展,人们的安防意识不断增强,视频检测系统越来越广泛地被应用于各行各业。如今,许多商场、银行和智能小区中都安装了红外探头或基于PC机的视频监测系统,由于其价格高昂,可靠性不高,传输距离短、需要有人值守等。针对这种情况,寻求一种方法来改进这一状况,具有很大的实际意义。

近几年,随着DSP及嵌入式技术的快速发展,采用DSP嵌入式系统的视频设备已在各领域中被广泛应用。本文利用ADSP Blackfin533(BF533)为核心处理器,设计了视频检测系统,实现了视频图像的采集、处理和网络传输,该系统具有体积小、功耗低、性能高、可便携等优点。

智能监控系统技术应用

智能视频监控系统技术应用主要包括几个大类:

1.对人、物的识别:主要就是识别监控系统关心的内容,包括人脸识别、车牌号识别、车辆类型识别、船只识别、红绿灯识别等等。识别的智能视频监控系统技术应用,最关键的要求就是识别的准确率。比方说车牌号识别,目前市场上做的好的,识别率在95%甚至98%以上,这样就能够较好地满足道路监控类客户的需求。如果识别率低于90%,就会对管理人员带来很大的麻烦。识别类技术,常常应用于道路监控、金融银行、航道管理等行业,主要是为客户提供识别记录和分级管理的依据。

2.对人、物运动轨迹的识别和处理:目前细分的很多,主要包括虚拟警戒线、虚拟警戒区域、自动PTZ跟踪、人数统计、车流统计、物体出现和消失、人员突然奔跑、人员突然聚集等等。此类技术,除了数量统计外,一般是对某个过程进行判断,一旦发现了异常情况,如有人进入警戒区域、广场东北角有人迅速聚集等情况,就发出报警信息,提醒值班监控人员关注相应热点区域。对于数量统计类技术,关键的技术点是发现异常情况,并对异常情况进行数量统计。所以要求统计数据的准确率,尽量降低误差。运动轨迹识别处理类的技术,受实际监控应用场景影响非常大。此类技术的关键是能够尽快发现异常,需要尽量避免遗漏,提高预报的准确率。目前此类功能主要应用于平安城市建设、商业监控等行业。

3.对视频环境影响的判断和补偿:环境的影响主要包括雨、雪、大雾等恶劣天气、夜间低照度情况、摄像头遮挡或偏移、摄像头抖动等等。智能视频监控系统技术应用能够实现在恶劣视频环境情况下实现较正常的监控功能。受环境影响视频不清楚的时候,尽早发现画面中的人,或者判断摄像头偏移的情况后发出报警。此类功能关键技术点是在各种应用场合下,均能够较稳定地输出智能分析的信息,尽量减少环境对视频监控的影响。此类功能具备普遍的适应性,80%以上的监控点,都有增添此类功能的潜在需求。

1 系统硬件平台设计

系统工作原理:由图像传感器采集到的图像信号以YUV(4:2:2)的格式输出,通过BF533的PPI接口以DMA方式存入SDRAM。当采集完一帧数据后,BF533从SDRAM中读入数据进行位图数据格式转化,将位图图像数据通过以太网接口传输到远程PC机上,然后系统继续采集下一帧图像。

1.1 处理器

Blackfin处理器是ADI公司与Intel公司2003年4月联合开发的体现高性能体系结构的首款第四代DSP产品,主要面向嵌入式音频、视频和通信等领域。ADSP-BF533是目前Blackfin系列数字信号处理器中性能较高的一款,具有600MHz的主频、双16位的MAC(乘加器)和两个40位的ALU(算术逻辑单元)、四个8位的视频处理单元、八个算术寄存器、10个地址寻址单元,并且集成了大量的外围设备和存储器接口,每秒运算速度最高达到1200MMAC(兆次乘法加法运算),并且ADSP-BF533在达到600MHz性能水平时的功耗仅为280mW,能耗很小。在图像处理上的优点更为突出,可针对图像特点运用二维DMA传输数据,大大加快和方便图像数据的传送和处理。ADSP-BF533系列DSP具有接口丰富,性能优良,更具有视频处理接口及独立的视频指令,特别适用于各种音视频、网络设备领域,充分满足了系统技术指标的要求,在实际中获得了广泛的应用。

1.2图像传感器

美国Omnivision公司的彩色图像传感器OV7660具有30万像素,芯片的像素阵列达到1300x1280,具有高灵敏度采光、低功耗电源供电等特点且功耗低、体积小,在摄像手机、网络视频等方面应用比较广泛。通过先进的传感器技术,还可以通过减少或者消除图像瑕玷中的普通光/电资源(如固定样式噪音(FPN)、拖尾效应、闪光等)来产生比较清晰、完全、稳定的彩色图像。对于本系统来说,是一种很好的选择。

0V7660图像传感器,内置自动曝光控制(AEC)、自动增益控制(AGC)、自动白平衡(AWB)等功能,支持SXGA、VGA、QVGA、QQVGA、CIF、QCIF和QQCIF,可输出RGB、YUV和YCbCr等多种视频数据格式。0V7660通过一个专用的CameraInteRFace接口与核心处理芯片BF533的PPI接口连接,接口电路如图1所示。

基于DSP的智能视频监控系统

为使芯片正常上作,需要通过串行视频控制总线(SCCB)总线来配置OV7660的内部寄存器,使芯片输出格式正确的彩色图像数据。

1. 3 系统硬件结构

要完成系统的功能,除了处理器和图像采集模块,通过B1ackfin533的丰富接口,在开发过程中还要用到以下模块。

(1)SDRAM模块为系统提供内核运行、程序运行、数据缓存的空间;

(2)FLASH模块为系统提供存储空间;

(3)系统调试、移植、交叉编译、需要UART接口和JTAG调试接口;

(4)图像数据的网络传输需要以太网接口。

当然系统还应有电源模块、系统复位电路、时钟模块等,系统硬件结构如图2。

基于DSP的智能视频监控系统

2 系统的软件设计

系统的软件部分包括三部分,嵌入式uClinux(操作系统,图像传感器0V7660和网络控制器CS8911A的驱动程序,系统的应用程序。

2.1 嵌入式uClinux操作系统

本系统采用开源、可剪裁、安全性和实时性好的嵌入式uClinux操作系统作为软件开发平台,保证了系统的稳定性和数据的快速准确传输,并提供了完善的网络支持。uClinux并为应用程序的设计提供了众多API接口函数,方便了编程实现过程。

嵌入式uClinux系统是由Boot Loader引导程序、系统内核、根文件系统组成。软件交叉编译环境为Windows系统下的coLinux,该操作环境具有模拟uClinux操作系统的功能,在拥有colinux环境的基础上,选择合适的开发工具可以加快开发速度,节省开发成本。软件编程语言为标准C语言,具有良好的可移植性。

2.2 OV7660和CS8911A驱动程序

Blackfin533 uClinux kernel中带有一些硬件驱动模块,缩短了开发周期。系统上电后,将自动检测视频设备OV7660,视频设备被检测到后,将自动调用在配置内核时已经加载到uClinux中的OV7660的驱动程序模块PPI_ov7660。

图像数据的网络传输在Linux的平台上采用服务器/客户端模型,网络控制器CS8911A的驱动程序因为已经很成熟了并且对外公开,直接采用了开发好并已经移植到uClinux内核中的设备驱动程序。

2.3 系统应用软件设计

本系统的应用软件设计分为图像采集设备初始化、数据格式转化和图像的捕捉三部分。视频图像采集的程序流程图如图3。

基于DSP的智能视频监控系统

2.3.1 图像采集设备初始化

对于uClinux操作系统,它将设备看作文件,因此,想对设备进行读写等操作,应首先打开设备,完成操作后再关闭设备。设备文件的初始化主要针对PPI的/dev/ppifcd设备。本系统可以从4个步骤进行。

(1)打开视频设备 利用open()函数实现打开PPI视频设备。

fd_ppi=open(“/dev/ppifcd”,O_RDWR)

fd_ppi为设备文件描述符。

(2)获取设备信息 利用相应的ioctl()函数取得设备文件的相关信息,包含设备的基本信息参数(设备名称、支持的最大最小分辨率、信号源信息等);

ioctl(fd_ppi,CMD_PPI_GET_VIDEOIN,&video_in)

(3)获取影像信息 利用相应的ioctl()函数取得影像支持信息,包含设备采集图像的各种属性参数(色调、亮度、饱和度、对比度、色相等);

ioctl(fd_ppi,CMD_PPI_SET_0V7660,&pictures)

(4)关闭视频设备利用close()函数关闭PPI视频设备。

if(fd_ppi)close(fd_ppi);

2.3.2 数据格式的转化

本系统开始采集摄像头数据,将数据转化为YUV420格式,在PC上显示的时候采用的是RGB565格式,因此在采集完毕之后必须进行图像数据的格式转换。

RGB与YUV之间可以相互转化,对应关系如下:

基于DSP的智能视频监控系统

其反变化公式如下

基于DSP的智能视频监控系统

根据上述关系可以通过编程实现数据格式的转化。

2.3.3 图像的捕捉

在PPI_ov7660中采用直接读取的方法,直接读取方法比较简单,通过调用read()函数,将输入的图像数据复制到内核缓冲区中,就可以实现对每帧图像的读取。过程如下:

(1)通过调用函数malloc()为采集的图像数据分配内存;

in_buff=(unsigned char*)malloc(IMG_SIZE)

(2)通过调用read()函数将前端采集的图像数据读到in_buf中;

Fd=read(fd_ppi,in_buff,IMG_SIZE)

(3)通过调用write()函数将内存中的图像数据写到创建的一个file里。

fd=fopen(“pic”,“wb”)fwrite(in_buff,l,nOutputBytes,fd)

3 图像的网络传输与显示

在uClinux平台上采用服务器/客户端模型通过建立TCP套接字来实现网络的连接,本系统通过基于TCP协议的socket编程,完成了图像数据的发送和客户端的接收程序。流程图如图4所示。

基于DSP的智能视频监控系统

以网络上PC机为客户端,用VC编写图像显示界面。把服务端采集的图像传送至接收端,如图5所示。实验表明,系统每秒采集15帧图像,没有停顿感,满足实时性要求。

基于DSP的智能视频监控系统

传统的视频监视系统是简单的非智能闭路电视(CCTV)系统,其缺点十分明显。这样的系统或者需要安保人员实时监视画面以捕捉关键事件,或者需要在事后对视频记录进行回放并进行人工分析。耗时耗力,成本高而效率低。近几年,DSP在智能视频监控系统方面的应用不断完善,正在逐渐取代传统的模拟非智能系统。iSuppli公司2006年的一份分析报告曾指出,IP视频监控系统市场到2010年将增长近十倍。 IP监控的创新技术之一是“智能摄像机”,它拥有强大的数字信号处理器,能探测威胁并触发自动响应。可见,DSP芯片是智能监控的核心。

本系统以B1ackfin533为数据处理核心,依托数字图像处理技术和DMA技术,并通过以太网与上位机通信进行数据传输,完成了一个完整的视频监测系统。其设计特点为结构简单、体积小、功耗低、图像分辨率高、成本低廉、结合网络布线。本系统满足实时行要求,具有很大的应用前景。

提醒:《基于DSP的智能视频监控系统》最后刷新时间 2024-03-14 01:05:08,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于DSP的智能视频监控系统》该内容的真实性请自行鉴别。