数字图像大作业——九种形状识别

本文介绍了利用MATLAB进行数字图像处理,特别是针对九种形状(三角形,正方形,长方形,圆,菱形,五边形,十字架,五角星,梅花形)的边缘提取和自动识别分类。通过Canny算子进行边缘检测,结合形状特征如矩形度和圆形度进行形状识别,并实现了GUI界面进行交互操作。
摘要由CSDN通过智能技术生成

数字图像大作业——九种形状识别

摘 要
数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人们服务。数字图像处理是一种通过计算机采用一定的算法对图形图像进行处理的技术。数字图像处理技术已经在各个领域上都有了比较广泛的应用。图像处理的信息量很大,对处理速度的要求也比较高。MATLAB强大的运算和图形展示功能,使图像处理变得更加的简单和直观。本文介绍了MATLAB 语言的特点,基于MATLAB的数字图像处理环境,介绍了如何利用MATLAB及其图像处理工具箱进行数字图像形状的边缘提取和识别分类。论文主要论述了利用MATLAB实现对图像中的三角形,正方形,长方形,圆,菱形,五边形,十字架、五角星,梅花形九种形状的边缘提取和自动识别分类。

关键词:MATLAB;数字图像处理;图像形状;图像分类
实现效果
在这里插入图片描述

目录
1概述 4
2设计原理 4
2.1形状特征及提取分类 4
2.2矩形度 4
2.3圆形度 5
2.4Canny算子 5
3边缘提取实验结果及分析 5
4编程实现 7
41形状识别基本代码 7
4.2 GUI界面设计 10
5结果及分析 15
6心得体会 16
参考文献: 16

1概述
形状特征是对图像中边界清晰的目标的最好表达方式。是图像目标的一种显著特征,在实际中通常利用形状特征或主要边界对图像进行检索和分类。图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。图像分类常采用经典的模式识别方法,有统计模式分类和句法(结构)模式分类,近年来新发展起来的模糊模式识别和人工神经网络模式分类在图像识别中也越来越受到重视。

人的视觉系统对于景物的最初认识是物体的形状,能从二维图像中识别出许多物体。在人的视觉感知、识别和理解中,形状是一个重要参数。形状是刻画物体的本质特征之一,也是描述图像内容的一个重要特征。对图像的形状描述是一个非常复杂的问题,在二维情况下,形状可以定义为二维范围内一条简单连接曲线位置和方向的函数。因此形状的描述涉及到对封闭曲线的描述,或对轮廓所包围区域的描述。图像目标的边缘称为轮廓。轮廓是形状知觉中最基本的概念,它与形状有密切的联系。人在知觉一个形状以前一定先看到轮廓。当我们看到一个物体的形状时,就是看见了一个轮廓,这个轮廓把该物体与视野中的其它部分区分开来。直观的说,对形状的知觉要求在亮度不同的可见区域之间有一个线条分明的轮廓。轮廓的构成用数学语言来说是轮廓对应亮度的二阶导数,仅仅有亮度的线性变化并不产生轮廓。当人注意物体的形状时,倾向于固定的看某一些区域;而当人注意轮廓时,则把轮廓看成一条要追踪的路线,所以从轮廓到形状的知觉有一个“形状构成”的过程。可以这么说,轮廓只是边界,是一个局部概念,而形状是全体,是一个总体概念。
2设计原理
2.1形状特征及提取分类
对于图像分类问题,特征提取的好坏是决定分类性能的关键因素。提取物体的形状特征前,首先要对图像进行边缘提取,以获得物体的轮廓边界,然后需要把轮廓边界区域的特征抽取出来。在这些特征里面,有一部分可以用数字量值来描述,但更多的特征是一些没有明显特征的几何图形。为了便于图像的匹配,需要对这些几何图形进行进一步的描述。图像中物体的性质不能因为图像的平移、旋转、比例尺度的改变而发生变化。所以,在进行形状描述时,选择的描述符应具有平移不变性、旋转不变性、尺度不变性等特点。不但如此,选择的描述符还应该能够刻画形状的本质特点,使得该描述符具有良好的可分辨能力。
2.2矩形度

用目标图像的面积和包围该图像的最小的矩形面积之比作为目标矩形度的一种度量参数,记为

其中表示目标图像的面积,表示包围该图像的最小矩形的面积。R的大小能反映目标物体和矩形的接近程度。矩形度的值限定在0到1之间。
2.3圆形度
对于面积一定的图形,一般周长越小,圆形表面越光滑,越接近圆;反之,周长越大,则圆形表面褶皱越多,形状也就越复杂。基于这个原因,一般采用圆形度来衡量图形偏向圆形状的程度。形状的圆形度是指目标物体的周长平方和其面积之比,记为

其中:P表示图形的周长,A表示周长所围的面积。
2.4Canny算子
Canny算子是一类具有优良性能的边缘检测算子,它在许多图像处理领域得到广泛应用。从本质上讲,它并不只是简单的进行梯度运算来决定像素是否为边缘点,在决定一个像素是否为当前边缘点时,需要考虑其它像素的影响;也不是简单的边界跟踪,在寻找边缘点时,需要根据当前像素及前面处理过的像素来进行判断。它把边缘检测的问题转换为检测函数极大值的问题。其基本思想是:先对处理的图像选择一定的Gauss 滤波器进行平滑滤波,然后采用一种称之为“非最大值抑制”的技术,对平滑后的图像处理后,得到最后的边缘图像。。

4编程实现
41形状识别基本代码
[imgfilename imgpathname]=uigetfile({‘.jpg;.png’},‘Select a RGB image’);

if imgfilename
RGB=imread([imgpathname ‘’ imgfilename]);
image(handles.axes1,RGB);
image1=rgb2gray(RGB);
% figure,imshow(image1),title(‘原图’);
BW=edge(imag

  • 4
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值