使用Python随机生成20个bbox
发布时间:2023-12-26 06:55:37
要使用Python随机生成20个bbox,可以使用random模块生成随机数,并根据bbox的定义范围来生成随机的坐标值。下面是一个使用例子:
import random
# 定义bbox的范围
xmin = 0
ymin = 0
xmax = 100
ymax = 100
# 生成20个随机bbox
bboxes = []
for _ in range(20):
x = random.randint(xmin, xmax)
y = random.randint(ymin, ymax)
w = random.randint(1, xmax - x)
h = random.randint(1, ymax - y)
bbox = [x, y, x+w, y+h]
bboxes.append(bbox)
# 打印生成的bbox
for i, bbox in enumerate(bboxes, 1):
print(f"bbox {i}: {bbox}")
在上述代码中,我们首先定义了bbox的范围,然后使用random.randint()函数来生成随机的坐标值。其中,xmin和ymin分别表示bbox的左上角的x和y坐标的最小值,xmax和ymax则表示bbox的右下角的x和y坐标的最大值。接着,我们使用random.randint()生成随机的宽度和高度,保证生成的bbox大小合理。最后,我们使用列表bboxes来保存生成的bbox,并使用enumerate()函数来给每个bbox添加编号并打印出来。
以下是运行上述代码的示例输出:
bbox 1: [55, 12, 92, 64] bbox 2: [18, 21, 35, 47] bbox 3: [11, 36, 41, 97] bbox 4: [22, 70, 94, 92] bbox 5: [2, 90, 24, 96] bbox 6: [92, 22, 100, 51] bbox 7: [85, 11, 93, 28] bbox 8: [19, 50, 48, 87] bbox 9: [5, 19, 68, 60] bbox 10: [38, 30, 47, 65] bbox 11: [44, 90, 45, 91] bbox 12: [25, 64, 94, 81] bbox 13: [13, 21, 17, 34] bbox 14: [81, 73, 85, 100] bbox 15: [15, 83, 18, 90] bbox 16: [7, 32, 65, 72] bbox 17: [27, 14, 46, 91] bbox 18: [12, 75, 39, 83] bbox 19: [33, 3, 42, 75] bbox 20: [1, 14, 57, 85]
上述代码是一个简单的随机生成bbox的例子,你可以根据实际需求定义不同的bbox范围和生成规则。
