我在2D中有一组离散点,它们需要计算内部面积,或者简单的长度和高度,并不重要。但这个问题的重点是,我们不一定有锋利的边缘,形成内部表面。我尝试了命令boundary和inpolygon,但似乎不是解决这个问题的正确方法。我们没有直边的边,比如弧形或半圆,怎么样?
https://drive.google.com/file/d/0B-DuVkE6qbU3ZnJsbWdQNjVmVkk/view?usp=sharing
提供内部链接的文件:
这对我来说是个挑战!有人能告诉我吗?
发布于 2016-08-10 14:36:03
也许您可以使用imclose、imdilate或imerode函数来获得一个唯一的“对象”,然后根据您的实现,您可以通过将所有从0或255之间的值相加来计算面积。我假设图像是黑白的,否则首先转换它。Matlab文档:
发布于 2016-08-10 14:36:22
如果您的点是多边形的顶点坐标,则可以使用polyarea返回该多边形的区域。
例如:
Area = polyarea(pointsX, pointsY) 考虑到点的顺序很重要,它们必须形成一个有效的多边形(段不能交叉)。
https://stackoverflow.com/questions/38875368
复制相似问题