在matlab图像处理中太有用了,regionprops用来度量图像区域属性的函数。

函数:regionprops。顾名思义:它的用途是get the

properties of region,即用来度量图像区域属性的函数。

语法 STATS =

regionprops(L,properties)

%bw=rgb2gray(bw);L必须来自二维图像(如灰度图像)

%L = bwlabel(bw);语法中的L

%s = regionprops(L, 'centroid');

centroid为其中可以引用的属性

描述

测量标注矩阵L中每一个标注区域的一系列属性。L中不同的正整数元素对应不同的区域,例如:L中等于整数1的元素对应区域1;L中等于整数2的元素对应区域2;以此类推。返回值STATS是一个长度为max(L(:))的结构数组,结构数组的相应域定义了每一个区域相应属性下的度量。properties

可以是由逗号分割的字符串列表、饱含字符串的单元数组、单个字符串 'all' 或者 'basic'。如果 properties

等于字符串 'all',则所有下述字串列表中的度量数据都将被计算。

如果 properties 没有指定或者等于 'basic',则属性:

'Area', 'Centroid', 和 'BoundingBox'

将被计算。下面的列表就是所有有效的属性字符串,它们大小写敏感并且可以缩写。

属性详细定义

函数regionprops用于提取图像中感兴趣区域的属性,包括以下几个内容:

'Area''EulerNumber''Orientation''BoundingBox''Extent''Perimeter''Centroid''Extrema''PixelIdxList''ConvexArea''FilledArea''PixelList''ConvexHull''FilledImage''Solidity''ConvexImage''Image''SubarrayIdx''Eccentricity''MajorAxisLength''EquivDiameter''MinorAxisLength'

翻译过来就是:

'Area'是标量,计算出在图像各个区域中像素总个数。

注意:这个数值可能与由函数 bwarea

计算的值有轻微的不同。对于这样一个数值,我们可以使用它除以整个图像区域的像素个数而得到图像比例,可以作为模式识别的候选特征,并且这个特征是仿射不变的。

EulerNumber:欧拉数

Orientation:方向

'BoundingBox'

是1行ndims(L)*2列的向量,即包含相应区域的最小矩形。包括矩形左上角坐标和长宽。

BoundingBox 形式为 [ul_corner width],这里

ul_corner 以 [x y z ...] 的坐标形式给出边界盒子的左上角、boxwidth 以 [x_width y_width

...] 形式指出边界盒子沿着每个维数方向的长度。注意:请在这熟悉一下函数rectangle的使用方法。

Extent:范围,长度

Perimeter:周长

'Centroid'是1行ndims(L)列的向量,给出每个区域的质心(重心)

注意:Centroid

的第一个元素是重心水平坐标(x坐标)、第二个元素是重心垂直坐标(y坐标)。Centroid

所有其它元素则按照维顺序排列。

Extrema:极值

MajorAxisLength'

是标量,与区域具有相同标准二阶中心矩的椭圆的长轴长度(像素意义下)本属性只支持二维标注矩阵。

'MinorAxisLength'

是标量,与区域具有相同标准二阶中心矩的椭圆的短轴长度(像素意义下)。本属性只支持二维标注矩阵。

'Eccentricity'

是标量,与区域具有相同标准二阶中心矩的椭圆的离心率(可作为特征)。本属性只支持二维标注矩阵。

'Orientation'

是标量,与区域具有相同标准二阶中心矩的椭圆的长轴与x轴的交角(度)。本属性只支持二维标注矩阵。我们可以考察离心率的变化趋势,得到对于整个区域中的各区域的似圆性如何的大致感觉。看出区域整体的似圆性好不好,实际上可以考虑使用离心率向量作为一个模式识别的特征。

'Image'

二值图像,与某区域具有相同大小的逻辑矩阵。你可以用这个属性直接将每个子区域提取出来,然后再作相应的处理!

'FilledImage'

与'Image'相同,唯一区别是这是个做了填充的逻辑矩阵!

'FilledArea'

是标量,填充区域图像中的 on 像素个数。

'ConvexHull'

是p行2列的矩阵,包含某区域的最小凸多边形。此矩阵的每一行存储此多边形一个顶点的xy坐标。此属性只支持2维标注矩阵。

'ConvexImage'

二值图像,用来画出上述的区域最小凸多边形。同时此凸包内的像素均打开,图像尺寸和此区域对应边界矩形相同。此属性只支持2维标注矩阵。例如:本例中的第2个子区域的最小凸多边形图形为。注意:此处函数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维标注矩阵。

'EquivDiameter'

还有一些别的,用到了再完善,现在还不懂……

matlab centroid,Matlab中一个很有用的函数:regionprops相关推荐

  1. 邹检验 matlab,科学网—Matlab中一个很有用的函数:regionprops - 邹兴文的博文

    Matlab中一个很有用的函数:regionprops 已有 6712 次阅读 2010-1-30 22:52 |个人分类:开发经验|系统分类:科研笔记| 有用的函数, regionprops Mat ...

  2. matlab求点介数程序,matlab_bgl 一个很有用的计算网络中每个节点介数的程序,对 分析 Cloud Computing 云 266万源代码下载- www.pudn.com...

    文件名称: matlab_bgl下载  收藏√  [ 5  4  3  2  1 ] 开发工具: Others 文件大小: 2098 KB 上传时间: 2016-10-26 下载次数: 0 提 供 者 ...

  3. PHP中一个好用的函数parse_url

    PHP 中一个好用的函数parse_url,特别方便用来做信息抓取的分析,举例子如下: $url = "http://www.daimajiayuan.com/course/"; ...

  4. Android 开发中一些很有用但你不知道的方法

    English_Version:https://github.com/jiang111/awesome-android-tips/blob/master/README-en.md这里收集了大家常用的一 ...

  5. coalesce---一个很有用的函数

    在mysql中,其实有不少方法和函数是很有用的,一个叫coalesce的,作用是将返回传入的参数中第一个非null的值,比如 SELECT COALESCE(NULL, NULL, 1);  -- R ...

  6. 一个非常有用的函数——COALESCE

    很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止,这个函数的确非常有用,本文主要讲解其中的一些基 ...

  7. Sql Server 三个很有用的函数

    好久没有写有关SqlServer 数据库方面技术的文章了,正好今天遇到了一个问题,我就把这个当做一个练习记录下来.今天遇到一个麻烦事,详情如下:公司买了一个系统,在这个系统里面有一个"充值卡 ...

  8. 【leetcode】在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。

    利用容器进行二维数组的表示初探 class Solution {public: vector<vector<int>>matrixReshape(vector<vecto ...

  9. MATLAB GUI编程中几个有用的程序段

    1.  启动 % 获取当前文件所在路径 currPath = fileparts(mfilename('fullpath')); % 切换工作路径到当前位置 cd(currPath); % 判断所用操 ...

最新文章

  1. jQuery Mobile发展新闻阅读器,适应iphone和android打电话
  2. 维特根斯坦:为何夸大人工智能是对人性的贬损?
  3. php绘制历史曲线,thinkphp浏览历史功能实现方法
  4. windows常用服务命令
  5. 将命令结果赋给变量_不得不了解的quot;变量quot;(2)—— 变量的赋值
  6. JAVA动态加载JAR包执行程序
  7. mysql可以装到其他端口吗_linux下怎么在另一个端口安装高版本mysql
  8. 5款好用的开源JS图片裁剪插件(3个jQuery插件,2个AngularJS插件)
  9. python 迭代器 删除_Python学习100天-Day08(迭代器解析)
  10. html自动旋转屏幕,求教!HTML5屏幕旋转90度再让画布自适应,该如何做,大神给留demo...
  11. python自定义拼音输入法_Python与HMM实现简单拼音输入法
  12. python使用筛选法求素数
  13. 利用PowerShell把多个文件压缩打包
  14. 【Web3】什么是Web3?一个新的去中心化网络,或是最新的营销流行语
  15. mysql汉字转拼音首字母_一个效率很高的汉字转拼音首字母的函数
  16. JavaScript函数和BOM及DOM编程(详细总结-无尿点)
  17. Linux系统性能监控和管理命令技能全get
  18. 苹果电脑如何使用Siri语音助手!
  19. 电影《功夫熊猫2》中的管理知识
  20. 最最详细的黑马前端HTML5+CSS3笔记,给大家整理好了

热门文章

  1. html embed页面无法播放视频播放,用embed标签在网页中嵌入avi格式的视频不能播放...
  2. supesite 留言板
  3. 解决Vue报错:[Vue warn]: Error in nextTick: “NotFoundError: Failed to execute ‘insertBefore‘ on ‘Node‘: T
  4. 测试分析人员必备知识—需求管理和可追溯性矩阵
  5. 一个TCP/IP转发的例子
  6. CentOS--iperf带宽测试
  7. 电脑Win11安装Autocad出现错误要如何处理
  8. Android高级编程(奋斗之小鸟)_PDF 电子书
  9. LCD调屏_Driver IC受到WFI射频干扰后,该如何处理
  10. 哈理工 OJ Fire Maze(2次bfs)