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

湖南的商城网站建设网址大全免费下载安装

湖南的商城网站建设,网址大全免费下载安装,网站有多少个,晋州 网站建设 网络推广一、NMS是什么#xff1f; NMS#xff08;non maximum suppression#xff09;即非极大值抑制#xff0c;广泛应用于传统的特征提取和深度学习的目标检测算法中。 NMS原理是通过筛选出局部极大值得到最优解。 在2维边缘提取中体现在提取边缘轮廓后将一些梯度方向变化率较小…一、NMS是什么 NMSnon maximum suppression即非极大值抑制广泛应用于传统的特征提取和深度学习的目标检测算法中。 NMS原理是通过筛选出局部极大值得到最优解。 在2维边缘提取中体现在提取边缘轮廓后将一些梯度方向变化率较小的点筛选掉避免造成干扰。 在三维关键点检测中也起到重要作用筛选掉特征中非局部极值。 在目标检测方面如Yolo和RCNN等模型中均有使用可以将较小分数的输出框过滤掉,同样在三维基于点云的目标检测模型中亦有使用。 二、示例 1.opencv示例 查看opencv源码可以知道canny算子中使用了nms即对sobel等梯度计算方法生成的梯度矩阵中的点求取局部极大值。 其计算方法是比较中心点与其邻域的梯度值如果为最大值则保留不是的话为0。 源码可见 Canny算法解析opencv源码实现及实例 //读取图片Mat img imread(true.jpg);Mat Grayimg;resize(img, img, Size(400, 600), 0, 0, INTER_LINEAR);cvtColor(img, Grayimg, COLOR_RGB2GRAY); //转为灰度图Canny(Grayimg, Grayimg, 100, 300, 3);imshow(picture0, img);imshow(picture, Grayimg);waitKey(0);return 0;2.PCL示例 点云关键点特征提取算法经常会使用nms提取极大值点。 如3D SIFT关键点检测中需要计算尺度空间中像素点的26邻域的极值点。 算法原理参考 PCL 3D-SIFT关键点检测(Z方向梯度约束) pcl::SIFTKeypointpcl::PointXYZ, pcl::PointWithScale sift; pcl::PointCloudpcl::PointWithScale result; sift.setInputCloud(cloud_xyz); pcl::search::KdTreepcl::PointXYZ::Ptr tree(new pcl::search::KdTreepcl::PointXYZ()); sift.setSearchMethod(tree); sift.setScales(0.01f, 7, 20); sift.setMinimumContrast(0.001f); sift.compute(result); 3.目标检测中nms示例 nms在深度学习领域常用于对box的得分进行极大值筛选在rcnnyolo, pointnet等模型中广泛使用。 其算法流程大致为 1计算所有box的得分。 2排序依次与得分高的box的IOU进行对比如果大于设定的阈值就删除该框。 在yolo源代码detect.py可见 pred non_max_suppression(pred, conf_thres, iou_thres, classes, agnostic_nms, max_detmax_det) conf_thres:置信度即得分score的阈值yolo为0.25。 iou_thres重叠度阈值为0.45 classes类别数可以设置保留哪一类的box agnostic_nms:是否去除不同类别之间的框,默认false max_det:一张图片中最大识别种类的个数默认300def non_max_suppression(prediction, conf_thres0.25, iou_thres0.45, classesNone, agnosticFalse, multi_labelFalse,labels(), max_det300):Runs Non-Maximum Suppression (NMS) on inference resultsReturns:list of detections, on (n,6) tensor per image [xyxy, conf, cls]nc prediction.shape[2] - 5 # number of classesxc prediction[..., 4] conf_thres # candidates# Checksassert 0 conf_thres 1, fInvalid Confidence threshold {conf_thres}, valid values are between 0.0 and 1.0assert 0 iou_thres 1, fInvalid IoU {iou_thres}, valid values are between 0.0 and 1.0# Settingsmin_wh, max_wh 2, 4096 # (pixels) minimum and maximum box width and heightmax_nms 30000 # maximum number of boxes into torchvision.ops.nms()time_limit 10.0 # seconds to quit afterredundant True # require redundant detectionsmulti_label nc 1 # multiple labels per box (adds 0.5ms/img)merge False # use merge-NMSt time.time()output [torch.zeros((0, 6), deviceprediction.device)] * prediction.shape[0]for xi, x in enumerate(prediction): # image index, image inference# Apply constraints# x[((x[..., 2:4] min_wh) | (x[..., 2:4] max_wh)).any(1), 4] 0 # width-heightx x[xc[xi]] # confidence# Cat apriori labels if autolabellingif labels and len(labels[xi]):l labels[xi]v torch.zeros((len(l), nc 5), devicex.device)v[:, :4] l[:, 1:5] # boxv[:, 4] 1.0 # confv[range(len(l)), l[:, 0].long() 5] 1.0 # clsx torch.cat((x, v), 0)# If none remain process next imageif not x.shape[0]:continue# Compute confx[:, 5:] * x[:, 4:5] # conf obj_conf * cls_conf# Box (center x, center y, width, height) to (x1, y1, x2, y2)box xywh2xyxy(x[:, :4])# Detections matrix nx6 (xyxy, conf, cls)if multi_label:i, j (x[:, 5:] conf_thres).nonzero(as_tupleFalse).Tx torch.cat((box[i], x[i, j 5, None], j[:, None].float()), 1)else: # best class onlyconf, j x[:, 5:].max(1, keepdimTrue)x torch.cat((box, conf, j.float()), 1)[conf.view(-1) conf_thres]# Filter by classif classes is not None:x x[(x[:, 5:6] torch.tensor(classes, devicex.device)).any(1)]# Apply finite constraint# if not torch.isfinite(x).all():# x x[torch.isfinite(x).all(1)]# Check shapen x.shape[0] # number of boxesif not n: # no boxescontinueelif n max_nms: # excess boxesx x[x[:, 4].argsort(descendingTrue)[:max_nms]] # sort by confidence# Batched NMSc x[:, 5:6] * (0 if agnostic else max_wh) # classesboxes, scores x[:, :4] c, x[:, 4] # boxes (offset by class), scoresi torchvision.ops.nms(boxes, scores, iou_thres) # NMSif i.shape[0] max_det: # limit detectionsi i[:max_det]if merge and (1 n 3E3): # Merge NMS (boxes merged using weighted mean)# update boxes as boxes(i,4) weights(i,n) * boxes(n,4)iou box_iou(boxes[i], boxes) iou_thres # iou matrixweights iou * scores[None] # box weightsx[i, :4] torch.mm(weights, x[:, :4]).float() / weights.sum(1, keepdimTrue) # merged boxesif redundant:i i[iou.sum(1) 1] # require redundancyoutput[xi] x[i]if (time.time() - t) time_limit:print(fWARNING: NMS time limit {time_limit}s exceeded)break # time limit exceededreturn output
http://www.pierceye.com/news/741356/

相关文章:

  • 公路建设查询网站蛋花儿wordpress主题
  • 网站图片加alt标签青岛seo做的好的网站
  • centos 7.2 做网站做.net网站流程
  • 做网站都有哪些费用app网站的优点
  • 茂名营销网站开发浙江华洋建设有限公司网站
  • 服装网站建设都有哪些注册公司流程视频
  • 泉州网站建设的步骤wordpress 接收json
  • 西宁网站设计全屏网站模版
  • 网站建设代理平台中国建设银行网站首页 定投
  • 备案 网站内容电商网站充值消费系统
  • 上海闸北区网站建设广州市网站建设制作
  • 阜阳公司做网站余江区建设局网站
  • 南山网站设计方案网站开发的客户群体
  • 汕头市建设网站高端网站定制的案例
  • 深圳外贸网站设计公司郑州seo培训
  • 公司高端网站设计公司湖南竞网做网站好吗
  • 做微信的微网站费用黄冈论坛遗爱湖
  • 设计师用什么做网站河南程序开发公司
  • 路由器做服务器做网站怎么在百度发布免费广告
  • 惠州网站制作推广做响应式网站设计做图怎么搞
  • 天津高端网站设计公司美食网页设计图
  • 做柱状图饼状图好看的网站四川省住房和城乡建设厅证书
  • 网站建设公司模版wordpress自适应站点
  • 怎么在百度上创建网站wordpress时间轴页面
  • 网站建设公司济宁深圳互联网营销外包
  • 交互设计产品榆林网站seo
  • 唯品会网站开发招聘英文网站公司
  • 网站的推广一般有什么方式韩城网站建设韩城网站推广
  • 书城网站开发四川省建设厅网站投诉
  • 想要个网站沈阳网站备案