基于DSP的嵌入式视频监测

2013-09-22 09:34:33来源: 互联网

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

  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通过一个专用的Camera InteRFace接口与核心处理芯片BF533的PPI接口连接,接口电路如图1所示。

  

 

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

  1. 3 系统硬件结构

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

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

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

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

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

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

  

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。

  

 

  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之间可以相互转化,对应关系如下:

  

 

  其反变化公式如下

  

 

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

  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所示。

  

 

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

  

 

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

关键字:DSP  嵌入式  视频监测

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2013/0922/article_19369.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
DSP
嵌入式
视频监测

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved