【YOLOv7调整detect.py】1.调整检测框粗细,2.设定标签颜色,3.只显示与标签数目相同的检测结果

2023-10-27

1. 调整检测框粗细

detect.py中按住Ctrl+F检索line_thickness定位过去,在129行左右,更改line_thickness的大小即可,例如改为line_thickness=3

2. 设定标签颜色

detect.py中按住Ctrl+F检索colors = [[random.randint(0, 255) for _ in range(3)] for _ in names]定位过去,注释掉,然后直接写颜色矩阵,例如下面:

  • 注意:因为后面是cv2保存图像,cv2保存图像的顺序是BGR,所以颜色卡需要先手动把RGB顺序变为BGR
colors = [[97, 57, 234], [80, 176, 0], [240, 176, 0], [201, 33, 113]]   # 因为后面是cv2保存图像,cv2保存图像的顺序是BGR,所以颜色卡需要把RGB顺序变为BGR

RGB对应颜色为(在上面代码变了顺序后,能展示如下相同的颜色):

在这里插入图片描述

3. 只显示与标签数目相同的检测结果

detect.py中的source参数设置的是test数据集的位置,本节更改是实现对test数据集进行检测时,只保留检测出来的标签数量=真实标签数量的检测图片效果

  1. detect.py最上面导入包import xml.etree.ElementTree as ET
  2. Ctrl+F检索# Process detections定位过去,然后在# Process detections上面新增如下代码
        # ---------------lwd edit---------------- #
        xml_path = path.replace('images', 'annotations').replace('jpg', 'xml')
        xml_names_num = [0 for _ in range(len(names))]
        # 检查类别个数是否对得上
        tree = ET.parse(xml_path)
        root = tree.getroot()
        objects = root.findall('object')
        for obj in objects:
            cls = obj.find('name').text
            xml_names_num[names.index(cls)] += 1

        pred_names_num = [0 for _ in range(len(names))]
        # ---------------lwd edit---------------- #

在这里插入图片描述

  1. Ctrl+F检索# Save results定位过去,然后在# Save results下面做如下更改

在这里插入图片描述

            if save_img and pred_names_num == xml_names_num:    # lwd edit
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【YOLOv7调整detect.py】1.调整检测框粗细,2.设定标签颜色,3.只显示与标签数目相同的检测结果 的相关文章

  • iOS 上的 OpenCV - VideoCapture 属性始终返回 1

    我一直在尝试构建一个简单的 OpenCV iOS 应用程序 该应用程序从捆绑包中加载视频并查询其帧数 持续时间等 然后它将尝试从中获取各个帧 不幸的是 当我使用VideoCapture类中 所有属性返回值 1 然后我尝试导航到frame 1
  • 在 Python 中将 OpenCV 帧流式传输为 HTML

    我正在尝试从 opencv Pyt hon 中的 URL 读取视频 然后逐帧处理它 然后将其发送到 HTML 页面 But I am only getting the first frame after that the program g
  • 如何使用 colorchecker 在 opencv 中进行颜色校准?

    我有数码相机获取的色彩检查器图像 我如何使用它来使用 opencv 校准图像 按照以下颜色检查器图像操作 您是想问如何进行颜色校准或如何使用 OpenCV 进行校准 为了进行颜色校准 您可以使用校准板的最后一行 灰色调 以下是您应该逐步进行
  • 在 Visual Studio C++ 2008 中包含 dll

    有没有办法将 dll 包含在项目中 这样我就不必在编译后将这些 dll 与可执行文件放在同一文件夹中 这样我就可以用它们编译我的项目 这是否有可能 如果是 有人可以指导我 我的项目是一个 opencv 项目 有很多 dll 我必须包含在文件
  • 为什么Android的ImageReader类这么慢?

    我尝试了适用于 Android 3 4 1 的全新 OpenCVJavaCamera2View但它太慢了 仅显示相机视图约 15 fps 当我尝试较旧的JavaCameraView相反 它给了我很好的结果 30fps 这是我相机的极限 我想
  • 了解darknet的yolo.cfg配置文件

    我在互联网上搜索过 但发现这方面的信息很少 我不明白 yolo 中的每个变量 值代表什么 cfg文件 所以我希望你们中的一些人能够提供帮助 我不认为我是唯一遇到这个问题的人 所以如果有人知道 2 或 3 个变量 请发布它们 以便将来需要此类
  • VideoCapture.read() 返回过去的图像

    我在跑python3 6 with openCV on the Raspberry pi OS is Raspbian 代码的大致结构如下 The image以时间间隔 3 5 分钟 捕获 被捕获image在函数中处理并返回度量 精度的种类
  • 从 NumPy 数组到 Mat 的 C++ 转换 (OpenCV)

    我正在围绕 ArUco 增强现实库 基于 OpenCV 编写一个薄包装器 我试图构建的界面非常简单 Python 将图像传递给 C 代码 C 代码检测标记并将其位置和其他信息作为字典元组返回给 Python 但是 我不知道如何在 Pytho
  • 开放简历fisherfaces

    我有这个问题 当我使用 vs2010 调试 opencv 2 4 0 facetec demo c 运行时 程序出现此错误 OpenCV错误 未知函数中图像步长错误 矩阵不连续 因此其行数无法更改 文件 src opencv modul e
  • 使用python从gst管道抓取帧到opencv

    我在用着OpenCV http opencv org 和GStreamer0 10 我使用此管道通过自定义套接字通过 UDP 接收 MPEG ts 数据包sockfd由 python 提供并显示它xvimagesink 而且效果很好 以下命
  • 在骨架图像中查找线 OpenCV python

    我有以下图片 我想找到一些线来进行一些计算 平均长度等 我尝试使用HoughLinesP 但它找不到线 我能怎么做 这是我的代码 sk skeleton mask rows cols sk shape imgOut np zeros row
  • java.lang.UnsatisfiedLinkError:java.library.path中没有opencv_java2411

    我正在尝试将 opencv 添加到我的 Spring Boot Maven 项目中 为了使用 opencv 库 我必须在 java library path 中提供本机库 我已将以下命令添加到 Eclipse VM 参数中 Djava li
  • 在Python中从整个图像中检测表格部分

    我有一张尺寸为 3500x5000 的图像 现在我只想检测整个图像中的表格部分 如果不能直接进行 OCR 处理 则对其进行裁剪和旋转 经过所有搜索后 我想到了使用裁剪图像中的每个单元格的想法https medium com coinmonk
  • 将图像加载到现有 Mat 中

    有没有办法将图像加载到现有的 Mat 中 如果没有 有没有办法控制 OpenCV 在调用 cv imread 时分配内存的位置 我只是为您的类创建一个构造函数 该构造函数接受 imread 的输入参数并将图像直接加载 并分配 到您的类中 所
  • C++ OpenCV 3.4 / FFMPEG 3.4.1 VideoWriter 和 MP4 输出文件格式

    我正在运行 Linux 内核 4 9 35 ti r44 的 ARM BeagleBone X 15 Debian 机器 在我的 C Qt 5 应用程序中 我想将 cv Mat 帧保存为 MP4 格式视频 我安装了 libx264 并从头开
  • 在 opencv 中一次性将旋转和平移结合起来

    我有一段用于旋转和平移图像的代码 Point2f pt 0 in rows double angle atan trans c trans b 180 M PI Mat r getRotationMatrix2D pt angle 1 0
  • Haar级联正例图像大小调整

    我正在迈出第一步 为自定义对象识别创建 haar 级联 我花了时间获取大量数据并编写了一些预处理脚本以将视频转换为帧 我的下一步是裁剪感兴趣的对象 以创建一些积极的训练示例 我有几个问题 我确实在网上寻找答案 我有点困惑 我读到我应该致力于
  • 在openCV内部调用Gstreamer

    我需要在 openCV 代码中调用 Gstremaer 本质上是打开摄像机 当我查看源代码时 modules highgui src cap gstreamer cpp似乎是我正在寻找的文件 我用 Gstreamer 标志编译了 OpenC
  • Python 2.7/OpenCV 3.3: cv2.initUn DistorifyMap 中出现错误。不显示不扭曲的校正图像

    我想扭曲并校正我的立体图像 为此 我在 Python 2 7 中使用了 Opencv 3 3 我使用的代码是 import cv2 import numpy as np cameraMatrixL np load mtx left npy
  • 使用 Racket FFI 进行快速阵列访问

    我正在尝试在 Racket 中编写 OpenCV FFI 并达到了需要有效操作数组的地步 然而 我所有使用 Racket FFI 访问数组的尝试都会导致代码效率非常低 有没有办法使用 FFI 快速访问 C 数组 在 Racket 中 这种类

随机推荐

  • Win7和Win10 关闭驱动程序强制签名的方法

    随着windows的更新 微软对驱动签名的邀请越来越严格 Windows 10 1607以后的内核驱动没有微软签名都不能正常运行 建议大家将自己开发的驱动进行微软徽标认证 WHQL认证 以获取微软驱动签名 下面为大家介绍windows 7和
  • 拳王虚拟项目公社:淘宝虚拟货源怎么找?在哪里找虚拟资源,虚拟产品如何找到?

    淘宝的虚拟货源从哪来 卖家要知道虚拟产品有什么技巧 很多小伙伴开店开站卖的是虚拟产品 为什么新手更愿意选择虚拟产品开店呢 因为 虚拟店铺的成本非常低 利润却很高 相对于非虚拟的店铺 虚拟店铺是非常具有优势的 不过 在货源选择方面 大家同样要
  • 服务器被攻击怎么选择更好的方式去防御,IDC说的集防和单机防御都是什么意思

    只要是互联网覆盖到的地方 或多或少都会存在有网络攻击的情况 一但面对网络攻击 很有可能会出现服务器瘫痪业务无法正常进展的情况 那边怎么才能消除网络攻击的影响呢 那就是考虑接入使用高防服务器来抵挡网络攻击 高防服务器之所以称之为高防 是因为服
  • MyBatis动态SQL,foreach下批量插入

    MyBatis批量插入 mapper接口 mapping映射 测试 jdbc properties mapper接口 int forEachInsert Param list List
  • STATA基础笔记

    1 generate 可简化为 g ge gen help 简 h 2 变量也可简化 比如country 就用c 表示 前提是其他变量开头不带c 3 变量可以使用通配符 c 代表所有以c为首字母的变量 4 do文件 用来记录命令 log文件
  • 撸狗初体验

    直接上视频听我 BB https www bilibili com video av75675708 下面开始编故事 某个周末 走在去加班的路上 脚底突然被某个东西咯噔一下 抬脚一看 竟然是 捡起来一看 哈士奇 哈士奇 哈士奇 竟然是 DF
  • 编程中,有哪些好的习惯一开始就值得坚持?

    嗨 小伙伴们大家好 我是沉默王二 就是那个吹自己既有颜值又有才华的家伙 今天这个话题我觉得还是值得和大家探讨的 因为好的编程习惯对程序员的职业生涯真的非常重要 记得我在学驾照的时候 遇到一哥们 之前开过车 属于无证驾驶的那种 但是 这哥们科
  • 一键部署WeBase-FISCO-BCOS联盟链管理平台

    文章目录 一键部署 前置条件 实际使用环境 一 环境安装 ubuntu18 04 1 Java安装及环境变量配置 2 Mysql的安装及配置 3 python配置 PyMySQL部署 Python3 4 二 拉取webase部署脚本 修改w
  • PageHelper 分页查询「实现篇」

    两种情况 分两种情况 查出来为 PageQueryRespDTO 查出来直接是 Model 查出来为 PageQueryRespDTO public PageInfo
  • WS-Discovery(网络服务动态发现)协议再解读

    WS Discovery 网络服务动态发现 协议再解读 文章目录 WS Discovery 网络服务动态发现 协议再解读 1 概述 2 协议资料 3 协议介绍 1 适用范围 2 不适用 4 协议示例及wireshark抓包分析 1 客户端探
  • html想相关概念

    HTML Hypertext Markup Language 是一种用于创建网页的标记语言 它为开发者提供了一种结构化的方式来描述网页的内容和外观 本文将介绍HTML的基础知识和关键点 让读者了解如何使用HTML来构建现代网页 HTML的基
  • 将日志打印的SQL组装为可执行SQL_sublime版

    java项目日志打印的sql和条件参数是分离的 使用起来很不方便 之前为了解决这种问题 使用notepad 录制宏解决了这个问题 但是后期不方便维护 遂转用sublime 这个跟notepad 比起来有些东西不是很习惯 但是好处是插件可以自
  • 关于“网页埋点”的简单介绍与实现

    网页埋点的简单实现 本文抛开数据增长方法和埋点技术原理的大道理 通过一个简单的埋点小实例帮助大家更好的了解埋点 一 什么是数据埋点 埋点是网站和APP等产品进行日常改进及数据分析的数据采集基础 根据采集得到的用户行为数据 例如 页面访问路径
  • React源码分析(二)=> Reac初次渲染分析

    文章目录 1 render阶段 legacyRenderSubtreeIntoContainer 1 1 legacyCreateRootFromDOMContainer 1 1 1 ReactRoot 1 1 1 1 createFibe
  • [CM311-1A]-买了一个机顶盒准备刷成 Linux 盒子!

    目录 移动魔百盒 CM311 1A CM311 1A 配置 烧录系统盘将机顶盒刷成 Armbian 服务器教程发布啦 为什么非要买个盒子 拆后介绍 使用介绍 启动盒子 机顶盒怎么截屏 键盘鼠标操作 系统应用 系统设置 网络设置 空间管理 分
  • axios vue 加载效果动画_Vue 使用 axios 或者 vue-router 配置页面加载动画

    先提一笔 这篇文章是关于 Vue 页面加载动画的实现 以下介绍两种方法 使用 axios 配置全局中当发生 ajax 请求时 显示一个加载动画 当 ajax 请求结束后 隐藏加载动画 使用 Vue router 实现当页面跳转时有一个加载动
  • 图像I、B、P帧介绍

    I p b 帧 I帧 帧内编码帧 尽可能去除图像空间冗余信息来压缩传输数据量的帧内编码图像 P帧 前向预测编码帧 通过充分将低于图像序列中前面已编码帧的时间冗余信息来压缩传输数据量的编码图像 也叫预测帧 B帧 双向预测内插编码帧 既考虑与源
  • “区块链+物联网”的一场“网链”能顺利奔现吗?

    前不久 物联网安全高峰论坛在京举行 相关行业的专家在探讨物联网安全问题时不可避免地谈及区块链技术在物联网安全方面的独特价值 有专家指出 目前全球年产近百亿的智能终端控制芯片 真正能投入联网的还不足1 而阻碍物联网进一步发展融入大众生活中的
  • 使用Red Hat Insights注册RedHat系统

    文章目录 前因 Step 1 确认所选择的系统 Step 2 将系统注册到Red Hat Insights Step 3 具体操作演示 前因 使用SSH命令远程连接红帽系统 提示需要使用下面提示的命令进行系统注册订阅 C Users xyb
  • 【YOLOv7调整detect.py】1.调整检测框粗细,2.设定标签颜色,3.只显示与标签数目相同的检测结果

    目录 1 调整检测框粗细 2 设定标签颜色 3 只显示与标签数目相同的检测结果 1 调整检测框粗细 在detect py中按住Ctrl F检索line thickness定位过去 在129行左右 更改line thickness的大小即可