基于Pixy开发的模块化云台图像跟踪系统

2017-10-31 22:09平钰光钱炳锋屠强
大陆桥视野·下 2017年11期
关键词:模块化

平钰光+钱炳锋+屠强

【摘 要】目前图像跟踪平台,多大基于PC系统,不利于嵌入式移植和小型移动平台设计,而视觉系统的执行机构大多需要做定制化的结构设计,不利于推广实施。本文提出一种基于pixy开源平台,高响应,多物体跟踪的模块化平台,文中分别对该系统的各硬件软件组成部分进行了介绍。

【关键词】Pixy;模块化;卡接式云台

1.Pixy简介

Pixy是一个开源的视觉传感器,该技术的识别速度很快,因为它以颜色为中心,使用色调过滤算法来识别物体,但对物体的色彩饱和度有较高的要求[1]。

这种视觉传感器支持多物体、多色彩的颜色识别,最高支持7种颜色,我们可以告诉它想要的颜色,教它找东西。该系统可以一次性标绘和报道数百个物体的实时地理位置,并且以50Hz的速度完成。如,Pixy每20毫秒就能处理一整幅640×400的图片,也就是说,每20毫秒就能够获得一次有关所侦查物体位置的全面更新。

Pixy支持多种通信方式来报道物体的实时地理位置,如UARTserial,SPI,I2C等,此外还有PC或Mac版PixyMon应用程序,可以用来浏览传感器实时看到的东西。它搭载的图像传感器配合强大的硬件,可以配合PC跟踪、分析多色的数据[2-4]。也可以直插在Arduino控制板上,整合到其他项目中。如,把它安装到机器人上,便可以为机器人增加一副眼睛,为机器人创造了室内导航系统——通过在门口标注颜色代码,Pixy能够识别出入口,并且告诉机器人该如何走。

2.Pixy系统设计

2.1 Pixy“学习”物体

当开始给Pixy供电,Pixy的LED灯会闪几下。等待LED灯灭掉后再继续。用手按住其顶部的按钮,大约等待1秒钟,LED会变亮,先显示白色,然后是红色,再然后是其他颜色,当其显示红色时,松开按钮。

在松开按钮后,LED的颜色就是Pixy摄像头所看到的图像中间部分的颜色。

可以用LED的颜色来判断物体是否在Pixy视角的中心位置。当LED颜色和物体颜色很接近时,点击按键并迅速松开。如果Pixy认为物体有足够的色彩饱和度,LED便会闪烁,即操作完成,此时Pixy现在已经“学会”了所给的物体,并且会追踪具有相同颜色的物体。如果物体的色调不够好,LED不会闪,即Pixy没有学会所给的物体。这时,我们可以换一个色彩饱和度较高的物体。

2.2 Pixy 颜色识别算法分析

(1)三基色原理

根据三基色原理,任意一种色光 F 都可以用不同分量的 R、G、B 三色相加混合而成,即F = r [ R ] + g [ G ] + b [ B ]。

其中,r、g、b 分别为三基色参与混合的系数。当r=g=b=0,即最弱时,混合为黑色光;当r=g=b=k,即最强时,时混合为白色光。更改三个系数的值,就可以得到各种各样的色光。

(2)YUV 色彩空间表示

Y为亮度信号,U、V为色度信号,且Y与U、V是分离的。假如有亮度分量而没有色度信号,那么其表示的图像是黑白灰的图像。

(3)RGB 和 YUV转换方式

Y = 0.299R + 0.587G + 0.114B

U = -0.147R - 0.289G + 0.436B

V = 0.615R - 0.515G - 0.100B

R = Y + 1.14V

G = Y - 0.39U - 0.58V

B = Y + 2.03U

(4)Pixy 算法核心思想

在前面介绍的色彩空间表示中Y 是亮度信号,U、V是色差信号,而Pixy的算法就是不要亮度只要色度,即只需要色彩。所以我们需要去掉色彩,根据下面三个公式:

R = Y + 1.14V

G = Y - 0.39U - 0.58V

B = Y + 2.03U

可以得到 U' = R - G = 1.72V + 0.39V

V' = B - G = 2.42U + 0.58V

C' = R + G + B = 3Y + 0.56V + 1.64U

变化后的U'和V'已经没有 Y 亮度的分量了

因为物体在不同亮度中显示的颜色可能也有差异,所以还得考虑一部分亮度的影响即C'。

所以为了减弱亮度对物体颜色的影响,Pixy会把色彩值放大若干倍后在除以亮度值。这样做就强化了色彩,减轻的亮度值的影响。Pixy就能轻松识别颜色而不會有太大的误差。

(5)pixy与 Arduino通讯

Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件和软件。Pixy需要与Arduino进行通讯。

设置Pixy为可以与微控制器进行通讯,且Pixy可以直接与Arduino进行通讯,使Pixy自带的数据线将Pixy连接到Arduino,它会以1Mbits/s的速度发送块信息给Arduino,这意味着Pixy每秒可以发送超过6000个识别的物体或每帧135个被识别的物体(Pixy每秒可以处理50帧画面)。

3.卡接式模块化云台系统

3.1系统构成

卡接式模块化云台系统如图1,包括控制器(1)、智能电机(2)、卡接件一(3)、转接衡梁(4)、卡接件二(5)、从动块(6)、卡接件三(7)。云台是由智能电机通过各卡接件以及从动块和衡量拼接完成,智能电机通过总线方式和控制器连接,控制器对智能电机发出控制指令,实现对云台的控制。通过上述卡接方式,可以快速实现多自由度云台的搭建,为快速定制云台系统提供有效的解决方案。

3.2卡接式模块化的优点

卡接的优势在于避免了螺纹连接,夹紧,粘贴等其他的连接方法。这些卡接结构是采用模具成型的,不需要额外把他们连接起来。卡接结构可以设计成一次性的和多次使用的。

云台是用于安装、固定外部器件的支撑设备,分为固定和电动云台两种。固定云台适用于作用范围不大的情况,其达到最好的工作姿态后只要锁定调整机构即可达到运用效果。而卡接式模块化云台系统(电动云台的一种),可以极大程度得满足多场合快速组件要求,提高工作效率。

通过这种模块化的卡接方式,能够快速有效地实现多自由度云台的快速搭建,减少云台选型或测试的工时损耗。

3.3系统流程

设置Pixy,使其“学会”所给物体并对颜色进行跟踪,流程如图2所示。Pixy与Arduino通讯连接后,在Arduino程序中编写代码,使云台能够根据所识别的颜色对物体进行追踪。

4.结语

本文设计的基于Pixy开发的模块化云台图像跟踪系统采用在机械云台上安装Pixy Cmucam摄像机,利用其可以“学习”所给颜色进行识别的特点,对图像物体进行跟踪。此系统可以同时识别多物体、多颜色,高响应,具有高时效性,可大大缩短项目开发设计,且利于基于视觉的竞赛系统开发。

参考文献:

[1]刘治湘,罗均.基于仿生双目机械云台的图像跟踪技术研究[J].机械工程师,2012,6.

[2]张桂红.基于Pixy Cmucam5图像识别传感器的物品分拣装置[J].电子制作.2016,20.

[3]陈孟臻.三轴WIFI摄像头舵机云台的设计与实现[D].2015,3.

[4]张雁宁.基于STM32和pixy CMUcam5视觉传感器的双控制模式全向车的设计[J].2016,16.

基金项目:

本项目受上海电机学院车辆工程学科建设项目资助,项目编号:16TSXK01;上海市大学生创新计划资助。endprint

猜你喜欢
模块化
模块化自主水下机器人开发与应用
基于模块化控制系统在一体化教学中的应用
模块化住宅
马勒推出新型模块化混动系统
考虑模块化和退货率的供应链大规模定制模型
考虑模块化和退货率的供应链大规模定制模型
ACP100模块化小型堆研发进展
从模块化中得到的二氧化碳
模块化VS大型工厂
非模块化设计四合一炉对流室的模块化吊装