查找一组点的最小边界框

2024-09-28 01:28:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到一组点的最小边界框。我用了图书馆https://bitbucket.org/william_rusnack/minimumboundingbox/src/master/

我想在最小边界框中附上这些坐标:-

#INPUT COORDINATES
    ('297.153338872911', '373.3796368193535')
    ('222.75', '278.7499999999999')
    ('222.75', '278.7499999999999')
    ('42.25', '251.75')
    ('179.25', '390.5')
    ('298.403338872911', '373.3796368193535')
    ('0.6400000000000537', '240.0000000000201')
    ('75.26400000000632', '390.9120000000328')


 # OUTPUT BOUNDING BOX COORDINATES , PLOTTED 
[(-22.685403520024096, 373.8408037637353),
 (0.6400000000000432, 240.0),
 (288.84381342985046, 428.133250381587),
 (312.16921694987457, 294.2924466178517)]

enter image description here

但正如您从输出本身所看到的 边界框显示为倾斜/倾斜。没关系,但我想要的是边界框直接指向水平&;我的桌面的垂直平面。如何在不丢失边界框功能的情况下实现此(即,当边界框变直时任何点弹出)

我尝试了这段代码also,但它会旋转矩形并找到最好的边界框,其中大部分是倾斜矩形。但是我想要一个直的矩形


Tags: httpsorgsrcmasterbitbucketinputoutput图书馆
1条回答
网友
1楼 · 发布于 2024-09-28 01:28:42

为了便于记法,让我们假设您的点是一组对(2元组),每对都是点的x,y坐标

point_list = [(10,12), (11,14), (15,20), ...]

正交边界框仅具有x和y限制:每个坐标的最小值和最大值:

x_min = min(point[0] for point in point_list)
x_max = max(point[0] for point in point_list)
y_min = min(point[1] for point in point_list)
y_max = max(point[1] for point in point_list)

边界框是由这些最小/最大值定义的四条边

相关问题 更多 >

    热门问题