首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Matlab中离散点面积的计算

Matlab中离散点面积的计算
EN

Stack Overflow用户
提问于 2016-08-10 13:50:45
回答 2查看 491关注 0票数 0

我在2D中有一组离散点,它们需要计算内部面积,或者简单的长度和高度,并不重要。但这个问题的重点是,我们不一定有锋利的边缘,形成内部表面。我尝试了命令boundaryinpolygon,但似乎不是解决这个问题的正确方法。我们没有直边的边,比如弧形或半圆,怎么样?

https://drive.google.com/file/d/0B-DuVkE6qbU3ZnJsbWdQNjVmVkk/view?usp=sharing

提供内部链接的文件:

  • 文件1由XYZ坐标加强度(通过激光扫描数据)值组成。
  • 文件2由XYZ坐标加强度组成,而所有Z和强度值都通过文件固定。
  • 图1-1,1-2,1-3,1-4用相关的强度值表示3D数据。不同的强度值显示不同的材料。白色箭头展示了片段不同部分的深度。
  • 图2-1,2-2表示只有一个强度值的2D数据.实际上,在这个步骤中,3D数据被投影到2D中,所有的强度值都更改为一个值,另外,窗口的内部部分被删除。内部部分的面积是要计算的。

这对我来说是个挑战!有人能告诉我吗?

EN

回答 2

Stack Overflow用户

发布于 2016-08-10 14:36:03

也许您可以使用imcloseimdilateimerode函数来获得一个唯一的“对象”,然后根据您的实现,您可以通过将所有从0或255之间的值相加来计算面积。我假设图像是黑白的,否则首先转换它。Matlab文档:

  • 不密切:http://www.mathworks.com/help/images/ref/imclose.html
  • im2bw:http://www.mathworks.com/help/images/ref/im2bw.html
票数 0
EN

Stack Overflow用户

发布于 2016-08-10 14:36:22

如果您的点是多边形的顶点坐标,则可以使用polyarea返回该多边形的区域。

例如:

代码语言:javascript
运行
复制
Area = polyarea(pointsX, pointsY) 

考虑到点的顺序很重要,它们必须形成一个有效的多边形(段不能交叉)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38875368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档