我正在进行车辆检测,我使用Yolo进行车辆的检测和跟踪,现在我想计算特定区域中检测到的车辆的数量,在要计数的矩形上绘制矩形:
cv2.rectangle(image, point, (point[0] + 200, point[1] + 120), (0, 0, 255), 0)
,检测到的车辆被矩形包围。 我想以一种简单的方式来计算大矩形中包含的矩形数量
答案 0 :(得分:0)
我只计算检测矩形与要计算数量的矩形的交点。
from collections import namedtuple
Rectangle = namedtuple('Rectangle', 'xmin ymin xmax ymax')
def intersection(a, b): # a and b are the 2 rectangle
dx = min(a.xmax, b.xmax) - max(a.xmin, b.xmin)
dy = min(a.ymax, b.ymax) - max(a.ymin, b.ymin)
if (dx>=0) and (dy>=0):
return dx*dy
如果结果> 0,则表示两个矩形之间存在相交。