当前位置: 首页 > news >正文

建立网站时要采用一定的链接结构可采用的基本方式有郑州市金水区建设局网站

建立网站时要采用一定的链接结构可采用的基本方式有,郑州市金水区建设局网站,做英文网站多钱,工业设计相关网站一、背景 目标检测和实例分割中的关键问题#xff1a; 现有的大多数边界框回归损失函数在不同的预测结果下可能具有相同的值#xff0c;这降低了边界框回归的收敛速度和准确性。 现有损失函数的不足#xff1a; 现有的基于 ℓ n \ell_n ℓn​范数的损失函数简单但对各种尺度…一、背景 目标检测和实例分割中的关键问题 现有的大多数边界框回归损失函数在不同的预测结果下可能具有相同的值这降低了边界框回归的收敛速度和准确性。 现有损失函数的不足 现有的基于 ℓ n \ell_n ℓn​范数的损失函数简单但对各种尺度敏感。当预测框与真实框具有相同的宽高比但不同的宽度和高度值时现有损失函数可能会存在问题限制了收敛速度和准确性。 文章目录 一、背景二、原理2.1 IoU计算原理2.2. 基于最小点距离的IoU度量2.3. 作为边界框回归损失函数2.4 MPDIoU的计算公式 三、添加步骤3.1 ultralytics/utils/metrics.py3.2 修改ultralytics/utils/loss.py3.3 修改ultralytics/utils/tal.py 四、成功运行截图 MPDIoUIntersection over Union with Minimum Points Distance是一种用于高效且准确的边界框回归的损失函数。 二、原理 2.1 IoU计算原理 IoUIntersection over Union即交并比用于衡量预测边界框和真实边界框的重合程度。 1. 交集计算 - 首先确定预测边界框和真实边界框的交集区域。 - 对于两个以左上角和右下角坐标表示的矩形框分别找出它们在横坐标和纵坐标方向上的重叠区间。 - 如果两个矩形框在横坐标和纵坐标方向上都有重叠部分那么这个重叠区域就是一个矩形其面积就是交集的大小。 2. 并集计算 - 计算预测边界框和真实边界框的并集区域。 - 并集的大小等于两个矩形框各自的面积之和减去它们的交集面积。 3. 比值计算 - 最后IoU的值就是交集面积与并集面积的比值。2.2. 基于最小点距离的IoU度量 原论文中受水平矩形的几何特性启发设计了一种基于最小点距离的新型IoU度量MPDIoU直接最小化预测边界框和真实边界框的左上角和右下角点之间的距离。MPDIoU的计算通过两个任意凸形状 A A A和 B B B用其左上角和右下角点的坐标来表示通过计算两个框的交集与并集之比再减去左上角和右下角两点距离的归一化值来得到MPDIoU。 2.3. 作为边界框回归损失函数 在训练阶段通过最小化基于MPDIoU的损失函数 L M P D I o U 1 − M P D I o U L_{MPDIoU}1-MPDIoU LMPDIoU​1−MPDIoU使模型预测的每个边界框 B p r d B_{prd} Bprd​接近其真实框 B g t B_{gt} Bgt​。现有损失函数中的所有因素如非重叠区域、中心点距离、宽高偏差等都可以通过左上角和右下角两点的坐标确定这意味着提出的 L M P D I o U L_{MPDIoU} LMPDIoU​不仅考虑了这些因素还简化了计算过程。 2.4 MPDIoU的计算公式 MPDIoU的计算公式 M P D I o U A ∩ B A ∪ B − d 1 2 w 2 h 2 − d 2 2 w 2 h 2 MPDIoU\frac{A\cap B}{A\cup B}-\frac{d_{1}^{2}}{w^{2}h^{2}}-\frac{d_{2}^{2}}{w^{2}h^{2}} MPDIoUA∪BA∩B​−w2h2d12​​−w2h2d22​​其中 A A A和 B B B是两个任意凸形状 ( x A 1 , y A 1 ) (x_{A1}, y_{A1}) (xA1​,yA1​) ( x A 2 , y A 2 ) (x_{A2}, y_{A2}) (xA2​,yA2​)表示(A)的左上角和右下角点坐标 ( x B 1 , y B 1 ) (x_{B1}, y_{B1}) (xB1​,yB1​) ( x B 2 , y B 2 ) (x_{B2}, y_{B2}) (xB2​,yB2​)表示 B B B的左上角和右下角点坐标。 d 1 2 ( x 1 B − x 1 A ) 2 ( y 1 B − y 1 A ) 2 d_{1}^{2}(x_{1}^{B}-x_{1}^{A})^{2}(y_{1}^{B}-y_{1}^{A})^{2} d12​(x1B​−x1A​)2(y1B​−y1A​)2 d 2 2 ( x 2 B − x 2 A ) 2 ( y 2 B − y 2 A ) 2 d_{2}^{2}(x_{2}^{B}-x_{2}^{A})^{2}(y_{2}^{B}-y_{2}^{A})^{2} d22​(x2B​−x2A​)2(y2B​−y2A​)2。 基于MPDIoU的损失函数计算公式 L M P D I o U 1 − M P D I o U L_{MPDIoU}1-MPDIoU LMPDIoU​1−MPDIoU。 三、添加步骤 3.1 ultralytics/utils/metrics.py 此处需要查看的文件是ultralytics/utils/metrics.py metrics.py中定义了模型的损失函数和计算方法我们想要加入新的损失函数就只需要将代码放到这个文件内即可 将下方的bbox_iou函数替换原本的bbox_iou函数即可 def bbox_iou(box1, box2, xywhTrue, GIoUFalse, DIoUFalse, CIoUFalse, MDPIoUFalse, feat_h640, feat_w640, eps1e-7):# Returns Intersection over Union (IoU) of box1(1,4) to box2(n,4)# Get the coordinates of bounding boxesif xywh: # transform from xywh to xyxy(x1, y1, w1, h1), (x2, y2, w2, h2) box1.chunk(4, -1), box2.chunk(4, -1)w1_, h1_, w2_, h2_ w1 / 2, h1 / 2, w2 / 2, h2 / 2b1_x1, b1_x2, b1_y1, b1_y2 x1 - w1_, x1 w1_, y1 - h1_, y1 h1_b2_x1, b2_x2, b2_y1, b2_y2 x2 - w2_, x2 w2_, y2 - h2_, y2 h2_else: # x1, y1, x2, y2 box1b1_x1, b1_y1, b1_x2, b1_y2 box1.chunk(4, -1)b2_x1, b2_y1, b2_x2, b2_y2 box2.chunk(4, -1)w1, h1 b1_x2 - b1_x1, b1_y2 - b1_y1 epsw2, h2 b2_x2 - b2_x1, b2_y2 - b2_y1 eps# Intersection areainter (torch.min(b1_x2, b2_x2) - torch.max(b1_x1, b2_x1)).clamp(0) * \(torch.min(b1_y2, b2_y2) - torch.max(b1_y1, b2_y1)).clamp(0)# Union Areaunion w1 * h1 w2 * h2 - inter eps# IoUiou inter / unionif CIoU or DIoU or GIoU:cw torch.max(b1_x2, b2_x2) - torch.min(b1_x1, b2_x1) # convex (smallest enclosing box) widthch torch.max(b1_y2, b2_y2) - torch.min(b1_y1, b2_y1) # convex heightif CIoU or DIoU: # Distance or Complete IoU https://arxiv.org/abs/1911.08287v1c2 cw ** 2 ch ** 2 eps # convex diagonal squaredrho2 ((b2_x1 b2_x2 - b1_x1 - b1_x2) ** 2 (b2_y1 b2_y2 - b1_y1 - b1_y2) ** 2) / 4 # center dist ** 2if CIoU: # https://github.com/Zzh-tju/DIoU-SSD-pytorch/blob/master/utils/box/box_utils.py#L47v (4 / math.pi ** 2) * torch.pow(torch.atan(w2 / h2) - torch.atan(w1 / h1), 2)with torch.no_grad():alpha v / (v - iou (1 eps))return iou - (rho2 / c2 v * alpha) # CIoUreturn iou - rho2 / c2 # DIoUc_area cw * ch eps # convex areareturn iou - (c_area - union) / c_area # GIoU https://arxiv.org/pdf/1902.09630.pdfelif MDPIoU:d1 (b2_x1 - b1_x1) ** 2 (b2_y1 - b1_y1) ** 2d2 (b2_x2 - b1_x2) ** 2 (b2_y2 - b1_y2) ** 2mpdiou_hw_pow feat_h ** 2 feat_w ** 2return iou - d1 / mpdiou_hw_pow - d2 / mpdiou_hw_pow # MPDIoUreturn iou # IoU 3.2 修改ultralytics/utils/loss.py utils\loss.py用于计算各种损失。 在BboxLoss函数内修改如下代码使模型调用此MPDIoU损失函数。 iou bbox_iou(pred_bboxes[fg_mask], target_bboxes[fg_mask], xywhFalse, MDPIoUTrue) 3.3 修改ultralytics/utils/tal.py tal.py中是一些损失函数的功能应用。 在iou_calculation函数内修改如下代码使模型调用此MPDIoU损失函数。 return bbox_iou(gt_bboxes, pd_bboxes, xywhFalse, MPDIoUTrue).squeeze(-1).clamp_(0)四、成功运行截图
http://www.w-s-a.com/news/422639/

相关文章:

  • 上海设计网站建设在线视频制作
  • 东营高端网站建设新建网站如何让百度收录
  • wordpress怎么生成网站地图微网站平台怎样做网站
  • 同安区建设局网站招投标公众号简介有趣的文案
  • 江苏州 网站制作网上宣传方法有哪些
  • 做网站时怎样申请域名郑州制作网站公司
  • 深圳 网站开发公司电话网站关键词快排名
  • 网站建设的工作总结seo同行网站
  • 网站需要兼容哪些浏览器sql数据库做的网站怎么发布
  • 营销型网站的建站步骤是什么意思广州门户网站建设公司
  • 汕尾好网站建设推广计算机软件包含网站开发
  • 建设工程施工许可证在哪个网站办wordpress更换主题白屏
  • 微交易网站建设wordpress摘要调用
  • 做网站维护需要懂什么网站后台后缀名
  • 网站建设的认可桂平市住房和城乡建设局网站
  • 网站设计师岗位职责域名关键词查询
  • 百度怎样建设网站盐城公司网站建设
  • 站长工具国产2023网站制作 商务
  • 网络新闻专题做的最好的网站杭州网站设计建设公司
  • 电商网站界面设计流程ps培训班一般学费多少钱
  • 西安网站运营上海闵行区网站制作公司
  • 宁波网站推广代运营长链接转化成短链接工具
  • 小企业如何建网站怎么自己制作app
  • 苏州品牌网站制作公司宁波建设工程有限公司
  • 合肥网站建设zgkr互联网创业好项目
  • 哪里学网站建设与管理云落wordpress
  • 网站建设意见做网站涉及到哪些
  • 网站导航栏原型图怎么做怎么样创建一个网站
  • 遨游建站金融网站建站
  • cms企业网站模板上海网站开发平台