0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

电子设计 来源:郭婷 作者:电子设计 2019-05-21 08:04 次阅读

引言

目前,国内智能相机的开发还是处于起步阶段,但是它却在现实中拥有广泛的应用。典型的机器视觉系统是一般由光源、CCD或CMOS相机、图像采集卡、图像处理软件及一台PC机构成。其中,图像的采集功能由CCD/CMOS相机及图像采集卡完成;图像的处理则是在图像采集/处理卡的支持下,由软件在PC机上完成。由于基于PC机的机器视觉体积庞大、结构复杂,其应用系统的开发周期长、成本高,因此智能相机就应运而生。本文提出了一种基于ADSP-BF537嵌入式智能相机的设计方案,使它能够达到机器视觉检测低成本,高速率,高精度,易操作,小体积的目的。

1 硬件平台设计

嵌入式智能相机是一个微小的视觉检测系统,包含图像采集装置、图像处理算法、图像处理软件和通信控制装置。图像采集装置主要是获取图像数据,使用的是CCD/CMOS传感器。图像处理主要是在DSP中进行,是对图像进行预处理,识别、检测图像特征,分割图像特征,提取图像特征,最后得到图像处理结果。这主要是在数字信号处理器(DSP)中完成。图像通信装置主要是对图像处理过程进行控制,并且实现图像处理结果输出。图1为所设计智能相机的结构框图。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

在本设计中,相机采用了ADI公司的ADSP-BF537作为控制核心。ADSP-BF537是具有较高性能的系列成员,拥有容量更大的嵌入式存储器,从而可满足诸如视频安全/监控和基于工业环境的分布式控制/工厂自动化应用等嵌入式应用的较高吞吐量需求。ADSP-BF537提供了卓越的性能,并专为诸如远程监视设备、VoIP、销售点终端以及生物特征识别/安全应用等低成本连接设备而设计。作为整个系统的核心,ADSP-BF537具有接口丰富,性能优良,价格便宜的特点,并具有强大的多媒体数据处理能力。

在图像采集模块中,相机使用了CMOS图像传感器。与CCD图像传感器的高成本相比,CMOS图像触感器具有低功耗,低成本的优势。随着CMOS传感器制造工艺的发展,其性能将会越来越接近CCD传感器。相机通过CMOS图像传感器采集图像数据,并且在DSP通过I2C的控制下,把数据传入DSP。

在通信控制模块中,相机通过以太网、串口RS 232,I/O端口与外部进行连接,从而实现相机的数据输出与控制。以太网用以实现上位机与相机的通信与控制,而I/O端口用来外部触发控制相机或者实现相机向外部输出控制信号。串口RS 232主要是用来不通过仿真器来烧写U_Boot引导程序和uClinux镜像文件。

2 软件设计

相机的软件程序设计使用了一个Oscar(Open source camera)框架平台和OpenCV视觉库,从而使软件设计更加的简单、方便、快捷,图2为Oscar框架与OpenCV的关系图。Oscar为软件的设计提供了简易的应用方法模块,并且隐藏了硬件接口的复杂性,从而使软件设计者不需要关心底层硬件程序的设计。而OpenCV构建了一个简单易用的计算机视觉框架,帮助并发人员更便捷地设计更复杂的计算机视觉相关的应用程序。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

2.1 Oscar框架

Oscar软件框架嘲是为硬件平台的应用而抽取出来的。Oscar框架包含17个模块,如表1所示,每个模块都有相应的功能和所需的平台支持。在程序的编译过程中,应用程序只需要加载它需要的应用模块,从而节省了程序空间,提高了运行效率。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

下面主要介绍几个重要的模块:

Bitmap模块提供从文件系统中读取/写入bmp图片的函数,支持24位BGR和Greyscale图片。

Cam模块实现了与CMOS传感器的交互。它包含了读/写相机寄存器和捕捉图片的功能,同时也能够对双缓冲器和进行自动管理。在目标板上,Cam模块直接与CMOS传感器的帧捕捉设备驱动相连接。它把API方法传输到IOCTL。在主机上,这个模块保存了传感器的一个寄存器集,并且时刻让它保持更新。由于必须从文件系统中加载,因此Cam模块使用一个文件名来读取得正确的图像文件区,并且通过Bitmap模块来从文件系统中加载图像。

Ipc模块提供了一种在相同应用程序进程间做内部交互的简单方法。这个交互是以客户-服务机的方式进行的。交互通道一面是发送读/写请求到客户端,然后服务端响应这些请求。这个通道使得低优先权的服务端和客户端的人机界面进程之间交互不会阻塞。两个进程都需要在一系列的参数和大小上保持一致。通过参数识别,通信才会执行。Ipc模块在文件系统中通过AF_UNIX套接字发送请求和相应信息。每个这样的套接字代表的是一个全双工接口,被称为一个Ipc通道。通过Ipc通道配置号的注册,从而允许同时与多个进程的交互。图3,图4为Ipc模块的读与写。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

2.2 OpenCV

OpenCV(Open Source Computer Vision Library)是一个基于开源的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列C函数和少量C++类构成,同时提供了Python,Ruby,Matlab等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。OpenCV提供的视觉处理算法非常丰富,并且它部分以C语言编写,加上其开源的特性,处理得当,不需要添加新的外部支持也可以完整的编译链接生成执行程序,所以用它来做算法的移植很方便,OpenCV的代码经过适当改写可以正常的运行在DSP系统和单片机系统中。OpenCV主体分为5个模块,其中4个模块如图5所示。OpenCv的CV模块包含基本的图像处理函数和高级的计算机视觉算法。ML是机器学习库,包含一些基于统计的分类和聚类工具。HighGUI包含图像和视频输入/输出的函数。CXCore包含OpenCV的一些基本数据结构和相关函数。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

2.3 程序设计流程

相机通过RS 232串口把编译好的U_Boot和μCLinux镜像文件烧写到里面的FLASH中,然后通过Eclipse集成开发环境进行应用软件设计。本设计实现了一个简单的应用,可以通过智能相机来检测条形码。流程图如图6所示。

在图像处理模块中,主要包含了图像图像预处理,分析条形码黑白条宽度,判断条形码类别,最后识别出条形码并且显示条形码数据,流程框图如图7所示。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

3 实验结果及分析

下面4张图为在四种不同的速度情况下检测的条形码样本,它们是在相同的外界环境(光源、曝光时间等)下检测。图8是在单帧图片下的检测,图9是在15f/s的速度下检测,图10则是在20f/s的速度下检测。在三种情况下分别对100个条形码进行检测,图11是在30f/s的速度下进行检测。表2为检测结果。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

由表2可知,在低速(即在15f/s以下)时,相机能够对条形码进行正确的检测,随着速度的增加,检测的合格率会逐渐的下降。

基于ADSP-BF537芯片为核心实现嵌入式智能相机的设计

4 结语

此智能相机的设计是以ADSP-BF537为处理控制核心,结合Oscar框架和OpenCV视觉库而实现的。通过一个简单的检测条形码的应用程序可以看出,在检测速度不高的情况下,此智能相机能够准确地检测产品,并且操作简单,能够广泛地应用到生活和生产实践中。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47838

    浏览量

    409222
  • 嵌入式
    +关注

    关注

    4984

    文章

    18300

    浏览量

    288656
  • 机器视觉
    +关注

    关注

    161

    文章

    4046

    浏览量

    118390
收藏 人收藏

    评论

    相关推荐

    评估ADSP-BF537 Blackfin处理器的ADZS-BF537-EZLITE,ADSP-BF537 EZ-KIT Lite评估系统

    ADZS-BF537-EZLITE,ADSP-BF537 EZ-KIT Lite评估系统开发人员提供了一种经济高效的方法,用于评估ADSP-BF537 Blackfin处理器及其丰富
    发表于 03-08 09:19

    嵌入式智能相机有什么优点?

    提出了一种基于ADSP-BF537嵌入式智能相机的设计方案,使它能够达到机器视觉检测低成本,高速率,高精度,易操作,小体积的目的。
    发表于 04-20 07:20

    求一种基于ADSP-BF537的SOC验证方案

    本文介绍一种利用嵌入Blackfin处理器的ADSP-BF537作为处理器进行SoC的FPGA实时验证的方案及其总线接口转换模块的设计。
    发表于 06-03 06:42

    基于ADSP-BF537的无线视频传输方案

    基于ADSP-BF537的无线视频传输方案 无线通信技术和视频压缩技术的迅速发展,使得无线视频传输成为人们研究的热点。无线视频传输具有数据量大,
    发表于 07-06 18:54 1102次阅读
    基于<b class='flag-5'>ADSP-BF537</b>的无线视频传输方案

    ADSP-BF537 具备嵌入式网络连接能力的Blackfin处理器

    电子发烧友网为你提供ADI(ti)ADSP-BF537相关产品参数、数据手册,更有ADSP-BF537的引脚图、接线图、封装手册、中文资料、英文资料,ADSP-BF537真值表,ADSP-BF
    发表于 02-22 14:49
    <b class='flag-5'>ADSP-BF537</b> 具备<b class='flag-5'>嵌入式</b>网络连接能力的Blackfin处理器

    ADSP-BF534/ADSP-BF536/ADSP-BF537:Blackfin嵌入式处理器数据手册

    ADSP-BF534/ADSP-BF536/ADSP-BF537:Blackfin嵌入式处理器数据手册
    发表于 03-19 00:44 9次下载
    <b class='flag-5'>ADSP-BF</b>534/<b class='flag-5'>ADSP-BF</b>536/<b class='flag-5'>ADSP-BF537</b>:Blackfin<b class='flag-5'>嵌入式</b>处理器数据手册

    ADSP-BF537 EZ-KIT Lite电路板设计数据库

    ADSP-BF537 EZ-KIT Lite电路板设计数据库
    发表于 04-13 12:48 3次下载
    <b class='flag-5'>ADSP-BF537</b> EZ-KIT Lite电路板设计数据库

    EE-262:ADSP-BF537 Blackfin®针对ADSP-BF533用户的亮点

    EE-262:ADSP-BF537 Blackfin®针对ADSP-BF533用户的亮点
    发表于 04-26 20:06 7次下载
    EE-262:<b class='flag-5'>ADSP-BF537</b> Blackfin®针对<b class='flag-5'>ADSP-BF</b>533用户的亮点

    ADSP-BF537 EZ-KIT Lite<sup>®</sup>评估系统手册

    ADSP-BF537 EZ-KIT Lite®评估系统手册
    发表于 05-12 18:30 0次下载
    <b class='flag-5'>ADSP-BF537</b> EZ-KIT Lite<sup>®</sup>评估系统手册

    EE-310:使用ADSP-BF537 Blackfin®处理器运行两个网络接口

    EE-310:使用ADSP-BF537 Blackfin®处理器运行两个网络接口
    发表于 05-16 09:45 0次下载
    EE-310:使用<b class='flag-5'>ADSP-BF537</b> Blackfin®处理器运行两个网络接口

    ADSP-BF537 EZ-KIT Lite<sup>®</sup>评估系统手册

    ADSP-BF537 EZ-KIT Lite®评估系统手册
    发表于 05-19 10:40 0次下载
    <b class='flag-5'>ADSP-BF537</b> EZ-KIT Lite<sup>®</sup>评估系统手册

    ADSP-BF537 EZ-KIT精简版入门<sup>®</sup>

    ADSP-BF537 EZ-KIT精简版入门®
    发表于 05-21 18:39 0次下载
    <b class='flag-5'>ADSP-BF537</b> EZ-KIT精简版入门<sup>®</sup>

    ADSP-BF537 EZ-KIT Lite<sup>®</sup>评估系统手册

    ADSP-BF537 EZ-KIT Lite®评估系统手册
    发表于 05-24 08:51 1次下载
    <b class='flag-5'>ADSP-BF537</b> EZ-KIT Lite<sup>®</sup>评估系统手册

    适用于ADSP-BF537 Blackfin处理器的EZ-KIT Lite

    适用于ADSP-BF537 Blackfin处理器的EZ-KIT Lite
    发表于 05-26 19:41 6次下载
    适用于<b class='flag-5'>ADSP-BF537</b> Blackfin处理器的EZ-KIT Lite

    ADSP-BF537黑线Processor硬件参考

    ADSP-BF537黑线Processor硬件参考
    发表于 06-17 20:24 9次下载
    <b class='flag-5'>ADSP-BF537</b>黑线Processor硬件参考