所有提交的EM系统将被重定向到网上投稿系统.作者被要求将文章直接提交给网上投稿系统各自的日志。

二维几何形状和颜色识别采用数字图像处理

Sanket Rege, Rajendra Memane, Mihir Phatak和Parag Agarwal
印度马哈拉施特拉邦浦那,PVG的COET E&TC工程系UG学生
有关文章载于Pubmed谷歌学者

更多相关文章请访问国际电气、电子和仪器工程高级研究杂志

摘要

本文讨论了一种涉及数字图像处理和几何逻辑的方法来识别物体的二维形状,如正方形、圆形、矩形和三角形以及物体的颜色。这种方法可以扩展到机器人视觉和计算机智能等应用。所涉及的方法包括三维RGB图像到二维黑白图像的转换,彩色像素分类的目标-背景分离,基于区域的滤波和使用包围盒及其属性计算目标度量。对象度量值与具有特定对象形状特征的预定值进行比较。物体形状的识别对它们的旋转是不变的。进一步,通过分析每个物体内所有像素的RGB信息来识别物体的颜色。利用MATLAB软件对该算法进行了仿真。一组由四种基本二维几何形状和三原色(红、绿、蓝)组成的180张图像用于分析,结果的准确率为99%。

关键字

边界盒,范围,MATLAB,旋转补偿,形状和颜色识别。

介绍

在当今高度先进和自动化的工业中,高效的方法用于各种生产和检查过程。曾经有一段时间,像质量检查、分类、组装、油漆、包装等平庸的工作都是手工完成的。但在机器人领域的迅速介入之后,自动化行业经历了一次彻底的改造。
传感器在显示运行过程中有关参数的信息方面起着重要作用。温度,光照,百分比组成,湿度,结构形状,凹痕等是传感器可以检测的参数的许多例子。高精度传感器用于工业,为控制器提供更好的反馈。例如,传感器的精度越高,传感器检测缺陷的能力就越强。
数字图像处理领域在自动化领域有许多应用。像摄像头这样的传感器可以获取在传送带上移动的物体的实时视频或图像。然后,视频或图像被用于识别对象,或者在某些情况下,将对象与预定义的、完美的和预期的对象进行比较,并根据两幅图像之间的相似程度做出决定。然后,控制机械臂的控制器要么允许合格的物体通过,要么将不合格的物体挑出并放入被拒绝的垃圾箱。
本文试图用一种从手边的图像中提取信息的算法(即第二种方法)来演示基本几何物体的识别,并在一些指标的基础上做出决策,这将被详细解释。

文献调查

在过去已经提出了许多形状识别算法。形状识别算法的详细概述可以在[1],[2]中找到。物体识别可以通过两种方式完成:(1)将图像中的每个像素与存储在处理器内存[3],[4]中的许多其他图像的像素进行比较;(2)从图像中提取信息,根据这些信息计算某些指标,并将这些指标的值与预定值[5]进行比较。第一种方法通常用于指纹识别等应用,其中以图像形式维护大型指纹或面部图像样本数据库。由于显而易见的原因,这个过程是内存密集型和耗时的。另一方面,当内存以及处理数据和产生结果所需的时间受到限制时,第二种方法非常有用。

算法

A.读取/捕获图像
图像首先从实时视频馈电中获取,或者可以从存储器中加载现有图像。我们假设获取的图像为RGB格式,RGB格式是图像[6],[7]的真彩色格式。在MATLAB中,捕获或导入的RGB图像是三维的,每个像素都由矩阵中的一个元素表示,其大小对应于图像的大小。
B.将RGB图像转换为黑白
这个过程分两步完成。首先将RGB图像转换为二维灰度图像。灰度图像只是一个矩阵,它包含图像[8]的亮度(Y)值。我们通过使用NTSC标准方程(1)将原色(红、绿、蓝)与基于我们眼睛对这些颜色的灵敏度的系数相结合,得到图像的亮度值:
方程(1)
然后,亮度图像通过称为阈值[9],[10]的过程转换为黑白(二进制)图像。设置一个阈值,并将每个像素的亮度与该阈值进行比较。所有大于此阈值的值将替换为逻辑值(白色),低于此阈值的值将替换为逻辑零(黑色)。阈值可以通过确定样本图像中对象区域对应的像素的亮度值(即通过机器训练),然后平均这些值,从而得到阈值,或者通过使用一种算法来评估图像的直方图,并使物体和背景之间的强度方差最大化[11],[12],[13]来计算。
C.识别物体的边界
图像现在是一个含有二进制元素的二维数组。首先在对象-背景界面上设置单个像素作为起点,顺时针或逆时针方向移动,搜索其他对象像素,识别对象边界。像素可以对角线搜索(在8个连接的像素中)或边缘相邻像素(在4个连接的像素中)。通过在固定方向上搜索目标像素,可以识别出目标的边界[14]。
D.寻找物体的区域和区域过滤
一旦识别出对象边界,可以通过边界范围内像素的总和轻松计算出该对象的面积。
非常微小的对象对应于噪声像素,这些像素可能在阈值处理过程中被视为对象像素。在进一步处理之前,有必要删除这些像素。通过使用if-else条件,那些区域低于阈值的对象可以转换为背景像素(即,它们可以倒置)。通过这种方式,图像被过滤以去除小的、孤立的噪声像素。
E.寻找物体的倾斜度
该算法必须能够识别物体的形状,而不考虑物体在垂直于相机轴的平面上的倾角。这通常是通过将物体的四个极角围在一个椭圆中,然后测量主轴和x轴之间的逆时针角度(?),如图2所示。然后,该物体沿顺时针方向旋转相同的角度。
对于正方形和圆,长轴和小轴是相同的。在MATLAB中,这个角度的值是通过使用regionprops命令下的Orientation选项获得的。这个过程需要将对象与后面步骤中构建的包围框对齐。
F.寻找对象的包围框
一个对象的包围框是一个虚构的矩形,它完全包围给定的对象,它的边总是平行于坐标轴。图3说明了包围框的概念。值得注意的是,由于物体的各种倾斜角度,边界框的尺寸也会相应变化。
然而,为了使形状识别独立于物体的旋转,边界框的尺寸必须是恒定的。这是因为边界框的面积是一个重要的参数,我们将使用它来分类物体的形状。这正是我们在上一步中提到的以相反方向旋转物体的角度的原因。因此,我们确保无论物体的方向如何,我们都可以构造一个常量维度的包围框。这种方法适用于正方形、圆形和矩形。然而,三角形需要一种不同类型的处理,稍后将展示。
G.求给定物体的面积比
下一步涉及到寻找一个对象的面积与其包围框面积(2)的比率。在MATLAB中,这个比率被称为Extent,是一个非常有用的参数:
方程(2)
对于圆,该值固定为0.7853,与半径无关。矩形和正方形的对应值为1.0000,前提是边线平行于坐标轴,并且包围框和边线重叠。下面的图5显示了相对于物体的原始倾角(x轴)绘制的Extent (y轴)值。
通过前面提到的方法,物体首先与旋转无关。因此,Extent的值被视为常数。因此,只要Extent值为0.7853的对象是圆。此外,每当遇到Extent值为1.0000的对象时,该对象可能是正方形或矩形。正方形和矩形之间的决定可以根据物体的尺寸来做出。等边物体显然是正方形。有两对不等边的物体显然是矩形。
对于三角形来说,很难找到正确的倾角,因为只有三个顶点的存在使得构建一个单一的椭圆(因此是一个主轴)是不可能的。因此,该方法在这种情况下失败。然而,一个基本的几何法则告诉我们,三角形总是把一个矩形的面积分成两半。因此Extent的值必须始终小于0.5000。如上图5所示,对于给定初始倾角的三角形,Extent值范围为0.5000到0.2500。因此,当遇到Extent值在0.5000到0.2500之间的对象时,该对象必须是三角形。
H.颜色识别
对象的颜色可以进一步计算。这是通过平均对象边界内的RGB内容来实现的。例如,一个物体在其表面具有相对较高的R平均值,可能具有红色阴影。在MATLAB中,可以使用impixel命令在整个物体表面上以1 × 3矩阵的形式获取RGB信息,并对其求平均值。利用添加剂混合的原理,大量的颜色因此可以识别。

结果

该算法在数据库中测试了每种形状和颜色的15张图像,结果证明准确率为99%。该数据库由具有四种形状和三种颜色的不同倾斜度的物体的图像组成。表1显示了在每张图像上分别运行算法的结果。
图像必须在光线良好的环境中拍摄(自然或人工照明),并且必须注意尽可能避免物体的阴影。这是因为在阈值处理过程中可能会将阴影作为对象的一部分,导致Extent的值可能是错误的。这显然会影响形状识别,结果会有所不同。

结论

本文所讨论的算法是一种简单而有效的分析物体形状和颜色的方法。基于易于获得的指标识别形状的概念已被我们广泛用于从给定组织样本识别乳腺癌细胞的研究中。在我们的研究中,我们使用该算法来识别所有细胞的形状,并记录了正常健康细胞的Extent参数。由于癌细胞在形状和颜色上与健康细胞不同,其Extent值以及RGB含量与健康细胞不匹配,因此可以很容易地识别和量化。
这些应用不仅局限于生物医学领域,还可以扩展到任何需要根据不同物体的物理外观进行分类的领域。这可能包括装配线的质量检查、人工机器人智能、计算机视觉、收费站车辆识别或交通信号以确定交通状态等。

表格一览

表的图标
表1

数字一览

图1 图2 图3 图4 图5
图1 图2 图3 图4 图5
图1 图2 图3 图4 图5
图6 图7 图8 图9 图10
图1
图11

参考文献















全球科技峰会