当前位置:首页 > 电源 > 数字电源
[导读]详细介绍基于SPCA563B芯片的图像识别系统的设计思想和硬件电路,给出具体应用实倒。对CMOS采集的图像数据进行预处理,然后对其进行分割和提取特征.并利用一定的算法进行图像识别。

摘要  详细介绍基于SPCA563B芯片图像识别系统的设计思想和硬件电路,给出具体应用实倒。对CMOS采集的图像数据进行预处理,然后对其进行分割和提取特征.并利用一定的算法进行图像识别。实验结果证明,本系统对于静止图像的识别是十分有效的。
关键词 SPCA563B 图像识剐 手势识别

    单片机SPCA563B是凌阳科技公司推出的一颗用于图像识别领域的IC,不仅具有一般单片机的控制功能,而且具有图像识别与处理能力。本图像识别系统就是以它为核心进行数据处理与控制。该系统已实现的功能有:物体颜色和形状识别、字符识别以及手势识别等。利用这些识别的结果,可以开发游戏、趣味教学、智能玩具、文字输入以及智能识别等应用系统。

    本文通过介绍整个系统以及在这个系统上实现的简单的手势识别,使大家更好地了解此系统在图像识别和文字识别方面的强大功能和易用性。

1 系统硬件架构
   
如图l所示.图像识别硬件系统主要由SPCA563B单片机、USB控制器、图像传感器、存储器控制器和语音输出控制器等组成。

1.1 SPCA563B单片机
    SPCA563B单片机的硬件特征如下:提供320×240的8位CMOS图像传感器接口;具有自动白平衡和获得参数控制功能;具有图像颜色校正和图像Gamma校正功能;具有7种颜色过滤功能;具有良好的减小噪声的滤波器;能够在一张图片中检测到21个目标物体的大小和位置,并将其结果存放于嵌入在CPU内部的RAM中;16位μnSP CPU内核,内嵌1K×16位的RAM和32K×16位的ROM;具有可选择的外部RAM和ROM接口;具有USBl.1的接口;3.3V电压供电;128/64脚LQFP封装(其中128脚有可选择的并行接口,48脚则没有)。此系统采用48脚的LQFP封装,其硬件电路如图2所示。

1.2 USB控制器
    SPCA563B内嵌USBl.1的控制器,利用USB接口可以与PC进行通信,结合PC端软件来实现ISP及在线调试程序,此外可以利用USB来为系统供电。其电路如图3所示。

1.3 图像传感器
   
本系统采用SPCA3010A CMOS图像传感器,图像输出为QVGA(320×240)大小的RGB格式。SPCA563B通过I2S接口来控制SPCA3010A CMOS图像传感器。此CMOS图像传感器支持stand by省电模式,其电路如图4所示。

1.4 存储器控制器
   
外扩SPR4096A Flash存储器,主要用来存储系统需要的语音数据。SPR4096A FJash具有如下特征:512K×8位的存储空间;内嵌4K×8位的SRAM;外部CPU可以通过串行接口或8位并行接口来访问Flash/SRAM;I/O接口的电压范围为2.25~3.6 V,并支持stancl by的省电模式。在数据存储量比较小的情况下,用SPR40396A可以大大降低系统的成本。电路如图5所示。

1.5 语音输出控
    语音输出控制器的主要作用是将SPCA563B的两路音频输出通过SPY0030放大,由扬声器播放。其硬件电路如图6所示。

2 系统软件设计
   
本图像识别系统的识别功能主要通过软件系统来实现。为了提高程序的可移植性,为将来该系统功能扩展预留空间,整个软件系统采用分模块、分层次的方法编写程序,采用汇编语言实现对寄存器的读/写以及对中断的控制,并为上层的开发提供灵活的接口。上层采用C语言编写,通过调用底层函数来间接对硬件资源进行操作。这样编写程序使整个系统结构清晰,程序可移植性和可扩展性增强,而且占用硬件资源少,为系统功能的扩展和进一步开发预留充分的空间。

    整个软件系统由主程序、图像识别功能模块子程序、中断服务子程序和语音输出子程序等组成。主程序负责整个系统的协调和控制工作,通过调用不同的子程序来实现不同的功能。主程序流程如图7所示。

    为突出系统的特点,下面通过手势识别的实例来重点描述图像识别原理。手势识别包含两个步骤:手形的轮廓跟踪,提取其轮廓的相关数据;手势的识别,在上一步得到的数据的基础上进行分析判断而得到结果。

2.1 轮廓跟踪算法实现

    轮廓跟踪的目的是获得图像的外部轮廓特征(包括目标物体边缘点的坐标和方向),为图像的形状分析做准备。SPCA563B的DSP针对肤色有一系列的颜色处理,这样系统就可以方便图像转化为肤色与非肤色的二值图像。通过对暂存在SRAM中的二值图像进行数据分析,来提取手形的边缘轮廓。

    轮廓跟踪算法步骤如下:
    ①按从上到下、从左到右的顺序扫描图像,寻找第一个非白像素作为边界起始点A[0],记录A[0]点的坐标(A[0].x,A[0].y)。A[0]是具有最小行和列值的边界点。再定义一个扫描方向变量dir,该变量用于记录上一步中沿着前一个边界点到当前边界点的移动方向。其初始化取值为A[0].dir=7;扫描方向定义如图8所示。

    假设当前的坐标为(x,y),则其8个邻域坐标如下:

   
    ②按逆时针方向搜索当前像素的3×3的邻域,其起始搜索方向设定如下:
    若A[n-1].dir为奇数,则取(A[n-1].dir+7)rood 8;
    若A[n-1].dir为偶数,则取(A[n-1].dir+6)mod 8。
    在3×3邻域中搜索到的第一个与当前像素相同的像素便为新的边界点A[n],同时更新记录从上一点搜索到边界点A[n]的方向变量A[n].dir,记录新的边界点的坐标(A[n].x,A[n].y)。
    ③如果边界点A[n]等于第一个边界点A[0],即(A[n].x==A[O].x&&A[n].y==A[0].y)。停止搜索。结束跟踪。否则重复步骤②。
    由边界点A[O]、A[1]、A[2]、…、A[n]构成的边界便为要跟踪的边界。算法中步骤①的作用足找出第一个边界点,步骤③的作用是找出所有的边界点。如图9所示,左边为原始图像,右边是用该算法仿真的结果。

2.2 手势识别算法实现
    我们的主要目的是找出伸出手指的个数。开始用行扫描的方法通过行内从O→1或1→O黑白像素变化的次数来确定伸出手指的个数,但这种算法对于倾斜一定角度的手指数目判断存在一定问题,因此转而采用“提取指尖点算法”。

    提取指尖点的方法着眼于从手势轮廓中搜索出指尖点,一个指尖点对应于一根手指,最后根据得到指尖点的个数来判定手指数目。判断是不是指尖:分析手的形状,手指的两边基本上是平行的。一直按逆时针方向前进,每经过一次指尖,手形轮廓的走向发生反向的变化。由于手形轮廓的边缘存在一定的毛刺,因此可以用多点方向的平均来减小毛刺的影响。这里取36点方向的平均,表示为Average_dix[i]。是否经过指尖的判断条件1:126<=|Average_dir[i-1]一Average_dir[i+1]|<=162。(说明:两点方向相反,其方向值差4,3.5×36=126,4.5×36=162。)

    再分析手的形状,两手指之间边缘轮廓的走向也满足判断条件l,故必须添加判断条件。如图10所示,当沿着一个方向搜索手的边缘轮廓时,经过指尖走向一定与手指间缺口走向相反。因此,必须假设判定条件2:

    Is_FingerVertex(dir0,dirl,dir2);
    这个函数是用来通过连续3点的方向来判断这3点是否为逆时针走向。由于是沿着逆时针方向搜索边缘轮廓的,故在判定条件1成立的前提下加上Is_FingerVertex(Average_dir[i-1],Average_dir[i],Average_dir[i+1])就可以判断是否为指尖,从而判定手指的数目。顺序3点是否为逆时针走向,具体在程序中可以构造一个循环队列来实现。测试结果表明这种算法非常稳定。

结语
    SPCA563B内部嵌入功能强大的图像颜色处理的DSP,用它来做图像识别系统的主控芯片十分方便、快捷。同时该系统具有语音输出提示功能,操作更加人性化,并且可以通过USBl.1接口与PC进行通信;配合PC端的调试工具,还可以大大缩短图像识别功能开发的周期。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

北京时间10月18日消息,富士康周二表示,希望有一天能够为特斯拉公司生产汽车。眼下,富士康正在加大电动汽车的制造力度,以实现业务多元化。

关键字: 富士康 芯片 半导体 特斯拉

近日,中国工程院院士倪光南在数字世界专刊撰文指出,一直以来,我国芯片产业在“主流 CPU”架构上受制于人,在数字经济时代,建议我国积极抓住时代机遇,聚焦开源RISC-V架构,以全球视野积极谋划我国芯片产业发展。

关键字: 倪光南 RISC-V 半导体 芯片

新能源汽车市场在2022年有望达到600万辆规模,为芯片产业带来较大的发展机遇。2022年,我国芯片供应比去年有所缓解,但仍紧张。中期来看,部分类别芯片存在较大结构性短缺风险,预计2022年芯片产能缺口仍难以弥补。这两年...

关键字: 新能源 汽车 芯片

汽车芯片和半导体领域要深度地融合,不仅仅是简单的供需关系,应该是合作关系,把汽车芯片导入到整车厂的应用。为缓解汽车产业“缺芯”,国内汽车芯片产业正探索越来越多的方式完善生态。为了促进汽车半导体产业的快速发展,弥补国内相关...

关键字: 智能化 汽车 芯片

汽车“缺芯”之下,国产芯片的未来是一片蓝海。在过去很长一段时间内,“缺芯”“少魂”是我国汽车企业的短板弱项,车规级芯片、操作系统的自主可控程度不高。其中,我国车规级芯片自给率小于5%,且多以低端产品为主,关键芯片均受制于...

关键字: 智能化 汽车 芯片

之前,美国运营商AT&T曾宣布,今年年底推出5G网络,而随着时间的推移,2019年会有越来越多的国家和地区商用5G网络,在这样的大环境下,芯片厂商提前布局也就是情理之中的事情了。

关键字: 运营商 5G网络 芯片

日本车用MCU大厂瑞萨电子发布公告称,该公司将于8月31日完全关闭滋贺工厂,并将土地转让给日本大坂的ARK不动产株式会社。瑞萨电子曾在2018年6月宣布,滋贺工厂将在大约两到三年内关闭,该工厂的硅生产线已于2021年3月...

关键字: MCU ARK 芯片

目前,各式芯片自去年第4季起开始紧缺,带动上游晶圆代工产能供不应求,联电、力积电、世界先进等代工厂早有不同程度的涨价,以联电、力积电涨幅最大,再加上疫情影响,产品制造的各个环节都面临着极为紧张的市场需求。推估今年全年涨幅...

关键字: 工厂 芯片 晶圆代工

伴随新能源汽车、自动驾驶技术等的迅速发展,汽车芯片正成为业内热议的话题之一,要协调稳定市场、确保芯片供应。从供给上来看,要梳理关键领域芯片供需情况,引导国外汽车芯片企业来华投资,建立芯片及重要原材料应急储备机制。在稳定市...

关键字: 新能源 汽车 芯片

最近华为Mate 50系列和苹果iPhone 14系列都比较火,二者各有各的优点,不过没有麒麟芯成了华为Mate 50系列永远的痛,其采用的骁龙8+芯片性能虽然不错,但是和苹果A16相比,还是具有一定的差距,而且没有了自...

关键字: 国产 GPU 芯片

数字电源

15504 篇文章

关注

发布文章

编辑精选

技术子站

关闭