首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在MATLAB中找到结构化数据类型的均值?

如何在MATLAB中找到结构化数据类型的均值?
EN

Stack Overflow用户
提问于 2014-12-26 23:02:34
回答 1查看 1.5K关注 0票数 0

我想要找到一个图像的偏心。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 img = imread('47.jpg');
    ecc=regionprops(img,'Eccentricity');
    ecc = 

    255x1 struct array with fields:
        Eccentricity

    ecc(255)

    ans = 

        Eccentricity: 0.2851

    ecc(1)

    ans = 

        Eccentricity: 0.4740

========================= ecc是结构数据类型的一个变量。它将保存所有255个对象的值。然而,我只想找到一个偏心,并考虑所有这些价值的平均值。

有找到结构值均值的方法吗?

我试过循环。计算和除以总no。物体的。但是MATLAB不允许在结构数据变量上添加。

=======================================

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    img = imread('47.jpg');
    ecc=regionprops(img,'Eccentricity');
    numObj = numel(ecc);
    sum=0;
    index=1;
    for k = 1: numObj
        temp=ecc(index);
        **sum=temp+sum;**
        index=k+1;
    end
    imgEcc = sum/numObj;
**??? Undefined function or method 'plus' for input arguments of type 'struct'.**

===========================================

请提供您的投入。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-26 23:37:17

野外标量数据

在循环中,必须引用字段名才能访问数据:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for k = 1: numObj
    temp=ecc.Eccentricity(index);
    sum=temp+sum;
    index=k+1;
end
imgEcc = sum/numObj;

一个更有效的方法是使用ecc.Eccentricity本身是一个逗号分隔的值列表,从struct数组中提取所有的奇点:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Eccentricities = [ecc.Eccentricity]; 

这就像[ecc(1).Eccentricity, ecc(2).Eccentricity,...]处理结构数组的方式一样。由于奇点现在位于一个双数组中,所以可以使用mean

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EccentricityBar = mean(Eccentricities);

现场阵列数据

如果结构数组中的数据不是标量,则值提取的语义取决于字段中数据的形状。无论字段数据是行向量(1xN)、列向量(Nx1)还是矩阵(MxN),通过将字段引用封装在方括号中形成的矩阵总是由逗号分隔的级联组成。换句话说,如果我们有一个带有字段foo的struct数组bar,那么以下两行是等价的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
baz1 = [foo(1:3).bar];
baz2 = [foo(1).bar,foo(2).bar,foo(3).bar];

要访问baz数组的某些元素,需要知道foo(k).bar中数据的形状。如果数据是长度为N的行向量,则可以使用下标和步长N提取结构数组中的原始列。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
col1 = baz(1:N:end);
col2 = baz(2:N:end);
...
col# = baz(#:N:end);

如果数据是长度为N的列向量,则结构数组中的原始行是baz的行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
row1 = baz(1,:);
row2 = baz(2,:);
...
row# = baz(#,:);

对于矩阵数据,以上两种方法的组合是寻找的地方。

例如,如果您有一个结构数组data,其中的字段Centroid1x2 array中具有xy质心位置,那么我们可以提取以下值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
centroids = [data.Centroid];
xbar      = centroids(1:2:end);
ybar      = centroids(2:2:end);

然而,如果质心位置是一个2x1 array,我们会提取如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
centroids = [data.Centroid];
xbar      = centroids(1,:);
ybar      = centroids(2,:);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27665153

复制
相关文章
Twemproxy测试用例以及压测结果
1、前端使用 Twemproxy 做代理,后端的 Redis 数据能基本上根据 key 来进行比较均衡的分布。后端一台 Redis 挂掉后,Twemproxy 能够自动摘除。恢复后,Twemproxy 能够自动识别、恢复并重新加入到 Redis 组中重新使用。
小程故事多
2018/08/22
1.2K0
Twemproxy测试用例以及压测结果
测试用例_测试用例编写
对一个测试工程师来说,测试用例的设计编写是一项必须掌握的能力,但有效的设计和熟练的编写测试用例却是一个十分复杂的技术,测试用例编写者不仅要掌握软件测试技术和流程,而且要对整个软件不管从业务,还是对软件的设计、程序模块的结构、功能规格说明等都要有透彻的理解。
全栈程序员站长
2022/09/20
4.8K0
测试用例_测试用例编写
教你Selenium 测试用例编写
编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。
hogwartstester
2022/06/30
5190
API测试用例的编写
在API的自动化测试维度中,测试维度分为两个维度,一个是单独的对API的验证,客户端发送一个请求后,服务端得到客户端的请求并且响应回复给客户端;另外一个维度是基于业务场景的测试,基于业务场景的也就是说编编写的API的测试用例是基于产品的业务逻辑。
Criss@陈磊
2019/10/16
7450
技术分享 | Selenium 测试用例编写
编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。
霍格沃兹测试开发
2022/04/20
4170
Mock测试用例_测试用例库
近期在重构一些旧项目,看到之前同事编写的测试用例是使用注入SpringJUnit4ClassRunner 直接注册实现层然后测试需要操作的方法是否可运行。虽然这样说是可以达到测试的想法。但是如果要使用在入口的业务控制层,还要有预期的测试结果,那岂不是要写一大堆逻辑来验证了。。因此使用该方案是很笨重的,测试起来也麻烦。然而bug率还是没降低多少。。
全栈程序员站长
2022/09/19
1.7K0
Mock测试用例_测试用例库
API测试用例的编写
在API的自动化测试维度中,测试维度分为两个维度,一个是单独的对API的验证,客户端发送一个请求后,服务端得到客户端的请求并且响应回复给客户端;另外一个维度是基于业务场景的测试,基于业务场景的也就是说编编写的API的测试用例是基于产品的业务逻辑,关于这点在我出版的书《Python自动化测试实战》测试案例实战中都有丰富的代码案例,
测试小兵
2019/10/17
7650
​技术分享 | Selenium 测试用例编写
编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。
Hogwarts_测试
2022/04/20
4000
API测试用例的编写
在API的自动化测试维度中,测试维度分为两个维度,一个是单独的对API的验证,客户端发送一个请求后,服务端得到客户端的请求并且响应回复给客户端;另外一个维度是基于业务场景的测试,基于业务场景的也就是说编编写的API的测试用例是基于产品的业务逻辑,关于这点在我出版的书《Python自动化测试实战》测试案例实战中都有丰富的代码案例,这里就不详细的再说明。抛开两个维度的思考点,作为测试团队的工作内容,首先要保障产品的业务逻辑是可以使用的,只要这样,产品才能够给客户带来价值,在基本的业务逻辑稳定的基础上,再一步需要思考的是整个系统的稳定性,抗压性和系统的承载负载的能力。那么在工程效率的角度上来思考,使用代码或者工具都不是核心,核心是如何使用这些工具或者代码来提升测试的效率,优化研发的流程,并持续的改进,从而达到过程中的改进。不管工具还是代码,对产品完整性的测试,都要考虑产品的业务逻辑,也就是产品的场景,而如何通过API的自动化测试方式来达到产品的业务场景的测试,在单元测试框架的视频里面我特别的说到了七个点,每个点都举了案例,其中最核心的一个点就是编写的每个测试用例都必须得有断言同时基于API的测试要基于产品的业务逻辑来进行,而单纯的测试API是没有多少意义的,比如一个登录的业务场景,登录接口好的就能够证明登录的业务场景是好的吗?很显然不能。
无涯WuYa
2019/10/13
9840
技术分享 | Selenium 测试用例编写
编写Selenium测试用例就是模拟用户在浏览器上的一系列操作,通过脚本来完成自动化测试。
霍格沃兹测试开发Muller老师
2022/05/19
3520
python执行测试用例_平台测试用例
通常我们认为每个测试用例都是相互独立的,因此需要保证测试结果不依赖于测试顺序,以不同的顺序运行测试用例,可以得到相同的结果。 pytest默认运行用例的顺序是按模块和用例命名的 ASCII 编码顺序执行的,这就意味着每次运行用例的顺序都是一样的。 app 测试里面有个 monkey 测试,随机在页面点点点,不按常理的点点点能找到更多的不稳定性 bug。那么我们在写pytest用例的时候,既然每个用例都是相互独立的, 那就可以打乱用例的顺序随机执行,用到 pytest 的插件 pytest-random-order 可以实现此目的,github 地址https://github.com/jbasko/pytest-random-order
全栈程序员站长
2022/09/19
2K0
python执行测试用例_平台测试用例
测试用例_因果图_测试用例图
​ 界面中有多个控件,控件之间有组合或者限制关系,为了弄清楚不同的输入组合会对应怎样不同的输出结果,可以使用因果图或判定表法。
全栈程序员站长
2022/09/21
1.4K0
测试用例_因果图_测试用例图
软件测试用例包括_白盒测试用例
每个测试用例都有1个或多个测试步骤(List[step]),每个测试步骤对应一个API请求或其他用例的引用。
全栈程序员站长
2022/09/19
9620
软件测试用例包括_白盒测试用例
优测优分享 | 这样做测试用例评审更高效
最近的用例评审让我感受颇深,以下是我对于测试用例评审的一些感受,发出来供大家讨论学习。
优测云服务平台
2020/01/07
1.5K0
优测优分享 | 这样做测试用例评审更高效
pytest指定用例_测试用例怎么编写
测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果. 有些同学在写用例的时候,用例写了先后顺序, 有先后顺序后,后面还会有新的问题(如:上个用例返回数据作为下个用例传参,等等一系列的问题。。。) github 上有个pytest-ordering插件可以控制用例的执行顺序,github插件地址https://github.com/ftobia/pytest-ordering
全栈程序员站长
2022/09/16
2840
测试用例(功能用例)——完整demo(一千多条测试用例)
本文档的预期读者包括:最终用户,项目负责人,评审人员,产品人员,软件设计开发人员,测试人员。
红目香薰
2022/11/30
7.8K1
测试用例(功能用例)——完整demo(一千多条测试用例)
简化测试用例
软件测试已经发展成为IT行业中的一个重要领域。无可否认,从头开始开发新软件需要巨大的付出,但还要付出更大的努力的检验软件质量。逐行分析代码可能很麻烦。这些错误在计算机语言中被称为“BUG”,可能使任何开发人员都“彻夜难眠”。
FunTester
2020/04/03
7510
简化测试用例
登录测试用例
(4)中英文、特殊字符、空格、长度限制 - 一般情况下,登录账户和密码不允许输入中文
wangmcn
2022/10/30
8840
软件测试用例编写方法_软件测试用例包括
HttpRunner v3.x支持三种测试用例格式pytest,YAML和JSON。官方强烈建议以pytest格式而不是以前的YAML/JSON格式编写和维护测试用例 格式关系如下图所示:
全栈程序员站长
2022/09/19
7540
软件测试用例编写方法_软件测试用例包括
软件测试(测试用例)—写用例无压力
主要分享测试的学习资源,帮助快速了解测试行业,帮助想转行、进阶、小白成长为高级测试工程师。
伤心的辣条
2022/12/14
1.3K0
软件测试(测试用例)—写用例无压力

相似问题

测试用例未获得被测方法抛出的异常

123

用robot.api添加测试用例

19

手动测试用例与Selenium测试用例的映射

10

OO Selenium测试用例?

21

Selenium Webdriver测试用例-未按顺序执行的测试用例

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文