出现错误:
display boxes可知,boxes是一个list,里边元素为元组(如:(453.7777, 72.509254))
查看cv2.rectangle用法:
cv2.rectangle(image, start_point, end_point, color, thickness)
参数:
image:要绘制矩形的图像,
start_point:矩形的起始坐标(左上),坐标表示为两个值的元组(元素为int型),
end_point:矩形的结束坐标(右上),坐标表示为两个值的元组(元素为int型),
color:它是要绘制的矩形的边界线的颜色。对于BGR,我们通过一个元组,
thickness:它是矩形边框线的粗细像素。厚度**-1像素**将以指定的颜色填充矩形形状,
返回值为:图像。
Modify method:
将boxes中的元组的元素修改为int即可。
print(boxes[i][0])
tup1 = boxes[i][0]
print(tup1)
tup2 = map(int,tup1)
tup3 = tuple(tup2)
print(tup3)
tup4 = boxes[i][1]
print(tup4)
tup5 = map(int,tup4)
tup6 = tuple(tup5)
print(tup6)
注:map函数
https://www.runoob.com/python/python-func-map.html
例如:一个元组里面的元素类型是str类型,将它们改变成int类型:
a = (‘1’, ‘2’, ‘3’)#列表就这样:a=[‘1’, ‘2’, ‘3’]
c = map(int,a) #这是关键的一步
d = tuple©#因为c是map对象,因此如果你需要输出的是列表你就用list(map对象),如果是需要输出元组就用tuple(map对象)
print(d)#输出的d长这样:a=(1,2,3)