我在2D中有一组离散点,需要计算内部区域,或者只是长度和高度,显然无关紧要。但这个问题的重点是;不一定我们有锋利的边缘塑造内表面。我尝试了命令boundary
和inpolygon
,但似乎不适合这个问题。我们没有直边的边缘怎么样,如弧形或半圆形。
https://drive.google.com/file/d/0B-DuVkE6qbU3ZnJsbWdQNjVmVkk/view?usp=sharing
链接中提供的文件:
对我来说这是一个挑战!有人可以提出建议吗?
答案 0 :(得分:0)
也许您可以使用imclose
,imdilate
或imerode
函数来获取唯一的“对象”,然后您可以通过将所有与0不同的值相加来计算区域或者255,根据你的实现。我假设图像是黑白的,否则首先转换它。
Matlab文档:
答案 1 :(得分:0)
如果您的点是多边形的顶点坐标,则可以使用polyarea
返回该多边形的区域。
例如:
Area = polyarea(pointsX, pointsY)
考虑到点的顺序很重要,它们必须形成一个有效的多边形(段不能交叉)