




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Matlab图像处理函数:regionprops这里给出在Matlab图像处理工具箱中非常重要的一个图像分析函数:regionprops。顾名思义:它的用途是get the properties of region,即用来度量图像区域属性的函数。 语法STATS = regionprops(L,properties)描述测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不同的区域,例如:L中等于整数1的元素对应区域1;L中等于整数2的元素对应区域2;以此类推。返回值STATS是一个长度为max(L(:)的结构数组,结构数组的相应域定义了每一个区域相应属性下的度量。proper
2、ties 可以是由逗号分割的字符串列表、饱含字符串的单元数组、单个字符串 all 或者 basic。如果 properties 等于字符串 all,则所有下述字串列表中的度量数据都将被计算,如果 properties 没有指定或者等于 basic,则属性: Area, Centroid, 和 BoundingBox 将被计算。下面的列表就是所有有效的属性字符串,它们大小写敏感并且可以缩写。 属性字符串列表AreaEquivDiameterMajorAxisLengthBoundingBoxEulerNumberMinorAxisLengthCentroidExtentOrientationCo
3、nvexAreaExtremaPixelIdxListConvexHullFilledAreaPixelListConvexImageFilledImageSolidityEccentricityImage属性详细定义本部分将结合一个具体的例子说明各种字串相关属性的意义,矩阵取自在蚁蛉模式识别中做过预处理后的斑纹分割图像,如下图:这是一幅二值图像,在应用regionprops函数之前必须将其标注,可以调用 bwlabel函数和伪彩色处理,标注后的图像如下图:下面基于以上的材料来考察属性的含义。 Area是标量,计算出在图像各个区域中像素总个数。注意:这个数值可能与由函数 bwarea 计算的值
4、有轻微的不同。对于这样一个数值,我们可以使用它除以整个图像区域的像素个数而得到斑纹比例,可以作为模式识别的候选特征,并且这个特征是仿射不变的。在本例中最后计算出的面积向量是 3.8952,9.7213,17.663,3.5762,1.3432,1.6958,0.41974,0.41974,21.625,12.324,4.8187,1.5111/10000.BoundingBox是1行ndims(L)*2列的向量,即包含相应区域的最小矩形。BoundingBox 形式为 ul_corner width,这里 ul_corner 以 x y z . 的坐标形式给出边界盒子的左上角、boxwidth
5、 以 x_width y_width . 形式指出边界盒子沿着每个维数方向的长度。本例的各部分区域最小矩形如下图!注意:请在这熟悉一下函数rectangle的使用方法。 Centroid是1行ndims(L)列的向量,给出每个区域的质心(重心)。 注意:Centroid 的第一个元素是重心水平坐标(x坐标)、第二个元素是重心垂直坐标(y坐标)。Centroid 所有其它元素则按照维顺序排列。下图采用以中心为圆心的小圆来演示质心检测的效果:图中各质心坐标(标准化后的)依次为: (x,y)=0.10478, 0.767390.11883, 0.0.19586, 0.610920.30701, 0.
6、308070.65712, 0.316130.73165, 0.305310.74548, 0.353780.80624, 0.728020.84546, 0.615640.90554, 0.0.93477, 0.778710.97611, 0.15576MajorAxisLength是标量,与区域具有相同标准二阶中心矩的椭圆的长轴长度(像素意义下)。本属性只支持二维标注矩阵。 MinorAxisLength 是标量,与区域具有相同标准二阶中心矩的椭圆的短轴长度(像素意义下)。本属性只支持二维标注矩阵。 Eccentricity 是标量,与区域具有相同标准二阶中心矩的椭圆的离心率(可作为特征)
7、。本属性只支持二维标注矩阵。 Orientation 是标量,与区域具有相同标准二阶中心矩的椭圆的长轴与x轴的交角(度)。本属性只支持二维标注矩阵。 本例的各区域椭圆数据为:长轴:18.767,45.172,43.003,30.687,16.505,15.698,5.8833,5.8833,46.954,38.873,22.929,15.429短轴:16.211,26.079,32.709,9.8458,6.8019,8.6386,5.8833,5.8833,35.976,31.022,16.98,7.8038离心率:0.50387,0.81652,0.6492,0.94713,0.91114
8、,0.83497,0,0,0.64262,0.60262,0.67205,0.86266方向角:-29.219,-32.192,-9.3909,-50.904,-70.333,48.823,0,0,14.035,17.986,3.0319,-34.238我们可以考察离心率的变化趋势,得到对于整个区域中的各区域的似圆性如何的大致感觉,比如下图是12个区域的离心率变化情形:由上图可以看出区域整体的似圆性并不好,实际上可以考虑使用离心率向量作为一个模式识别的特征! Image 二值图像,与某区域具有相同大小的逻辑矩阵。你可以用这个属性直接将每个子区域提取出来,然后再作相应的处理!比如本例的第一个斑纹
9、区域提出后是。 FilledImage 与上相同,唯一区别是这是个做了填充的逻辑矩阵!本例中和上面的没有区别,只有区域有空洞时才有明显差别。 FilledArea 是标量,填充区域图像中的 on 像素个数。 ConvexHull 是p行2列的矩阵,包含某区域的最小凸多边形。此矩阵的每一行存储此多边形一个顶点的xy坐标。此属性只支持2维标注矩阵。例如:本例中的所有子区域的最小凸多边形图形如下图看看第2个区域的大图。 ConvexImage 二值图像,用来画出上述的区域最小凸多边形。同时此凸包内的像素均打开,图像尺寸和此区域对应边界矩形相同。此属性只支持2维标注矩阵。例如:本例中的第2个子区域的最
10、小凸多边形图形为。注意:此处函数roipoly很有用! ConvexArea 是标量,填充区域凸多边形图像中的 on 像素个数。 EulerNumber 是标量,几何拓扑中的一个拓扑不变量-欧拉数,等于图像中目标个数减去这些目标中空洞的个数。 此属性只支持2维标注矩阵。本例中的欧拉数均为1。 Extrema 8行2列矩阵,八方向区域极值点。矩阵每行存储这些点的xy坐标,向量格式为 top-left top-right right-top right-bottom bottom-right bottom-left left-bottom left-top。此属性只支持2维标注矩阵。 EquivD
11、iameter 是标量,等价直径:与区域具有相同面积的圆的直径。计算公式为:sqrt(4*Area/pi)。. 此属性只支持2维标注矩阵。本例标准化后的12区域直径向量为: 2.227,3.5182,4.7423,2.1339,1.3077,1.4694,0.73105,0.73105,5.2473,3.9612,2.477,1.3871/100.Solidity 是标量,同时在区域和其最小凸多边形中的像素比例。计算公式为:Area/ConvexArea,这也是个仿射特征,实际上反映出区域的固靠性程度。此属性只支持2维标注矩阵。本例12区域凸元素比例向量为: 0.97071,0.66171,0
12、.90846,0.86585,0.84211,0.94393,1,1,0.9096,0.75514,0.90823,0.94737.Extent 是标量,同时在区域和其最小边界矩形中的像素比例。计算公式为:Area除以边界矩形面积,这也是个仿射特征,实际上反映出区域的扩展范围程度。此属性只支持2维标注矩阵。不再给出计算结果! PixelIdxList p元向量,存储区域像素的索引下标。 PixelListp行ndims(L)列矩阵,存储上述索引对应的像素坐标。 支持类输入的标注矩阵L可以有任意的数值类型。 提醒使用逗号分割列表语法当你基于regionprops函数的输出作算法设计时,使用逗号分
13、割列表语法就凸显出其非常的价值。例如:对于一个存储标量的属性,可以利用此语法创建一个包含图像中不同区域内此属性值的向量。例如以下两句是等价的: stats(1).Area, stats(2).Area, ., stats(end).Areastats.Area因此,可以使用下面的方法创建相应的向量: regionprops(L,Area);allArea = stats.Area;allArea 就是一个与结构数组 stats 具备相同长度的向量。 基于特定原则的区域选择当你要基于特定准则条件选择某个区域时,将函数 ismember 和 regionprops 联合使用是很有用处的。例如:创建
14、一个只包含面积大于80的二值图像,用以下命令 idx = find(stats.Area 80);BW2 = ismember(L,idx);计算性能考虑大多数的属性测量计算时间都非常地少,除了那些非常依赖于图像L中区域个数和像素个数的属性。例如: ConvexHull ConvexImage ConvexArea FilledImage 另外建议一次性计算所有属性值,因为分开计算和一起计算时间相差无几! 使用二值图像工作在调用regionprops之前必须将二值图像转变为标注矩阵。两个函数可以做到: L = bwlabel(BW); L = double(BW);注意:虽然这两个函数从同一二值图像产生不同的标注矩阵,但是它们是等效的!例如:给出如下的二值矩阵BW, 1 1 0 0 0 01 1 0 0 0 00 0 0 0 0 00 0 0 0 1 10 0 0 0 1 1bwlabel 创建一个包含两个分别由整数1和2标注的连续区域标注矩阵 mylabel = bwlabel(BW)mylabel = 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 2 0 0 0 0 2 2double 创建一个包含一个由整数1标注的不连续区域标注矩阵。 mylabel2 = double(BW)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2031年中国程控交换机式紧急电话行业投资前景及策略咨询研究报告
- 新疆新源县达标名校2024-2025学年初三考前全真模拟密卷英语试题试卷(5)含答案
- 信阳市固始县2025年三年级数学第二学期期末综合测试试题含解析
- 甘肃省渭源县重点中学2023-2024学年中考数学考试模拟冲刺卷含解析
- 广东省广州市石井新市学片2023-2024学年中考试题猜想数学试卷含解析
- 2025公司项目负责人安全培训考试试题及参考答案AB卷
- 2024-2025公司厂级安全培训考试试题附参考答案【培优B卷】
- 2024-2025项目部安全培训考试试题及参考答案【基础题】
- 2024-2025企业员工岗前安全培训考试试题附答案【考试直接用】
- 2025年新进厂员工安全培训考试试题及完整答案1套
- FZ/T 52019-2011莱赛尔短纤维
- 止血包扎(课件)
- 国开电大 管理概论 形考任务一(画组织结构图)
- 三自由度并联机器人结构设计
- 仓储装卸服务合同
- 式双钩五点安全带培训课件
- 名片设计 课件
- 钳工实操评分表(凹凸配合)
- 社会组织管理概论全套ppt课件(完整版)
- 陕西省城市规划管理技术规定(定稿)
- 部编版七年级下册历史复习提纲(重点考察知识点)
评论
0/150
提交评论