[英]Computing the area of discrete points in Matlab
我有一组2D离散点,这些点需要计算内部区域,或者只是长度和高度,显然没有关系。 但是这个问题的重点是: 不一定有形成内表面的锋利边缘。 我试着命令boundary
和inpolygon
,但似乎都没有对这个问题是正确的。 没有弧形或半圆形的没有直边的边如何处理。
https://drive.google.com/file/d/0B-DuVkE6qbU3ZnJsbWdQNjVmVkk/view?usp=sharing
链接内提供的文件:
对我来说是一个挑战! 有人可以建议吗?
也许您可以使用imclose
, imdilate
或imerode
函数以获得唯一的“对象”,然后可以根据您的实现,通过将与0或255不同的所有值相加来计算面积。 我假设图像是黑白的,否则先将其转换。 Matlab文档:
如果您的点是多边形的顶点坐标,则可以使用polyarea
返回该多边形的面积。
例如:
Area = polyarea(pointsX, pointsY)
考虑到点的顺序很重要,并且它们必须形成有效的多边形(各部分不得交叉)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.