本文共 660 字,大约阅读时间需要 2 分钟。
matrix_iof 的意思是裁剪后的roi除以boxes,有全覆盖的则留下。
roi是裁剪后的,boxes是原来的框。
rect1 = [1, 1, 3, 5] # (top, left, bottom, right) rect2 = [1, 1, 3, 3] boxes = np.array([rect1]) roi = np.array([rect2]) # value = matrix_iof(boxes,roi) print(value) flag = (value >= 1) if not flag.any(): print("no good")
增强的原理是,裁剪大图,变成小图,如果还有目标,则ok。
scale = random.uniform(0.6, 1.0)
是裁剪后的图还是比较大,这样就不会放大,增强小目标检测,对大目标检测没帮助。
import numpy as np#相交面积除以a面积def matrix_iof(a, b): """ return 相交面积除以a面积 """ lt = np.maximum(a[:, :2], b[:, :2]) #x1 y1 最大值 rb = np.minimum(a[:, 2:], b[:, 2:])# x2 y2 最小值 area_i = np.prod(rb - lt, axis=1) * (lt < rb).all(axis=
转载地址:http://copz.baihongyu.com/