你的jetson开发套件性能是否达标?
你的jetson开发套件性能是否达标?本人在做项目时使用jetson orin nano 觉得性能不够,于是购买了某国内三字品牌的jetson orin nx,部署项目后发现性能还是没有太大的提升。于是,我在多个设备的测试下,发现不同品牌的同一种开发套件存在性能不达标情况,建议刚入手的可以测测性能,不达标可以马上退货。下面是测试方法:
jetson benchmarks这个是nvidia官方给出的一个基准测试方法,github地址:https://github.com/NVIDIA-AI-IOT/jetson_benchmarks
我们可以利用这个方法跑出分数再与nvidia给出的各设备分数进行对比,即可知道你的jetson开发套件是否达标了。
官方数据如下:
下面再讲如何使用jetson benchmarks:
jetson benchmarks的使用可以结合github项目readme,不同的设备要下载的测试算法不同,运行命令也不同,下面是以orin-AGX举例。
1.首先把github项目下载到设备上
1git clone https://github.com/NVIDIA ...
YOLOV8优化(4), yolov8改进添加非极大值抑制(soft-nms)
有时候我们进行推理时检测框太多了,通常我们会调整conf值来抑制检测框的出现,但当conf值要求固定时,我们需要加入nms(非极大值抑制)来限制检测框的出现。接下来教大家如何改进添加非极大值抑制(soft-nms)。
首先需要修改损失函数部分
在ultralytics/yolo/utils/metrics.py加入以下代码:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 ...
YOLOV8优化(3),标签和掩码透明化
大家在检测一些密集目标时经常会遇到标签名互相遮挡的情况,给大家分享一个调整标签透明度的方法。
修改方式非常简单,只需要修改一个文件 ultralytics/yolo/utils/plotting.py
第一步将 cv2.rectangle(self.im, p1, p2, color, thickness=self.lw, lineType=cv2.LINE_AA) 这句注释掉,
换成下面这三句:
12345overlay = self.im.copy()alpha = 0.7 # 透明度 数值越小 透明度越高cv2.rectangle(overlay, p1, p2, color,thickness=self.lw, lineType=cv2.LINE_AA)
第二步将
12cv2.rectangle(self.im, p1, p2, color, -1, cv2.LINE_AA) # filledcv2.putText(self.im,
注释掉
换成
12cv2.rectangle(overlay, p1, p2, color, -1, cv2.LINE_AA) # f ...
YOLOV8优化(2),自定义boxes和mask颜色
有时候我们在推理时发现目标物体与检测框、掩码颜色相近,甚至相同,影响观测体验。
这篇文章来教大家如何自定义boxes和mask颜色
第一步首先我们找到并打开ultralytics/utils/plotting.py文件
在Colors类之后添加Color类,在colors = Colors()后添加color = Color(),注意C要大写的
如果想自定义修改颜色可以在 def __init__(self):添加self.*常量,颜色选择为RGB格式
再添加类似
123if i == *: return self.* if not bgr else self.*[::-1]
就可以了
class Color如下:
123456789101112131415class Color: def __init__(self): self.red = (255, 0, 0) # 红色 self.green = (0, 255, 0) # 绿色 self.bru = (0,0,255) def __call__(self, ...
YOLOV8优化(1),突破tensorrt加速默认推理尺寸
该章节教大家如何突破tensorrt加速默认推理尺寸(640*640)的限制,全网该类教程几乎没有,看到就是赚到!!!问题描述:可以想象这样一个场景:我们有一个1280*720的私人数据集,在进行正常的训练、验证、tensorrt转换、用engine文件推理,engine文件推理时,发现终端栏显示(160 * 640)的一个尺寸,这与我们的数据集尺寸不匹配。
我当时注意到这个问题,就在想如何做到推理与数据集尺寸匹配呢?
首先我查看了YOLOV8的官方文档,在模型训练和推理时可以设置imgsz参数,我当即在运行脚本设置了imgsz=(720,1280)
注:参数格式imgsz=(h,w),先输入h,再输入w。
输入之后:
报错:input size torch.Size([1,3,640,640]) not equal to max model size (1,3,1280,1280)
会不会是训练和转换时没设置参数导致该问题?
于是我添加 imgsz=[1280,720]参数,并重新训练
注:训练时的imgsz参数格式是imgsz=[w,h]
训练脚本:
12345678910fr ...
yolov8seg仅分割不显示检测框(boxes)
yolov8seg仅分割不显示检测框(boxes)有时候我们使用yolov8seg的分割功能,不需要显示boxes框,但是yolov8seg默认是这样的情况:
检测框和置信度很碍眼,我们有是否方法去除呢?
我们不妨仔细查看
YOLOv8的官方文档: https://docs.ultralytics.com/zh
就会有所收获:
点击预测主题,可视化参数:
我们注意show_boxes这个参数,我们添加boxes=False
运行结果:
果然把boxes框去掉了。
我们yolo新手很容易忽略官方文档的存在,而跑去网上搜索,还不一定有你想要的答案,有时候解决问题的方法只是调一个参数的事情,我非常建议yolo新手有空能够仔细看看官方文档,我本人也是经常看看官方文档有什么解决方法,而后再去网上搜索。
希望我的文章对你有所帮助,有问题可以联系我的邮箱:[email protected]。
jetson orin nano+yolov8+tensorrt加速 环境配置
jetson orin nano+yolov8+tensorrt加速 环境配置1.烧录系统(不做示范,网上有很多教程)硬件环境:
jetson orin nano 8G
jetpack:5.1.1
2.安装jetpack(包含CODA和cudnn)12sudo apt updatesudo apt install nvidia-jetpack
3.安装jtop123sudo apt-get install python3-pipsudo pip3 install -U pipsudo pip install -U jetson-stats
4.下载miniforge下载地址: https://github.com/conda-forge/miniforge
选择Linux aarch64(arm64)版本,运行shell(sh)文件,再两次选择yes完成安装。
1234567891011创建虚拟环境conda create -n yolov8 python=3.8激活环境conda activate yolov8我们将在虚拟环境中安装-------------------- ...
mysql的npm包安装
1.wget
wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
2.rpm
rpm -ivh mysql80-community-release-el7-11.noarch.rpm
3.yum.repos.d
cd /etc/yum.repos.d/
ls and cat /etc/yum.repos.d/
发现mysql-community-debuginfo.repo
4.cacheyum clean all
yum makecache
5.yum install (默认安装mysql 8.0)yum install -r mysql-server
yum会自动删除mariadb的一些文件(会影响mysql正常运行)
6.启动mysql服务systemctl start mysqld
7.查看mysql密码 grep "password" /var/log/mysqld.log
passw: #,Cgd4n?lrcr
8.登录mysql,首次登录需要修改密码才 ...
It’s so easy to make a command line program in Java!
Picocli is the most complete and easiest-to-use command line development framework in Java that I personally think can help everyone quickly develop command line tools.
There are very few tutorials about the Picocli framework on the Internet. The most recommended way to get started is to read the official documentation in addition to the tutorials on Fish Skin.
Official documentation: https://picocli.info/
It is recommended to start with the official quick start tutorial: https://picocli.info/qu ...
How to link a VMware virtual machine with ssh
I. Configuration environment1、VMware 15 2、ubuntu-18.04.1-desktop-amd64 3、Xshell7
II. Configuration process1. Is there any ssh configured in the virtual machine?1234root@kqz-virtual-machine:/usr/bin/bin# /etc/init.d/iptables startbash: /etc/init.d/iptables: There is no such file or directory.
This is because the ssh seat is not installed and the file or directory is not present.
2. Command to install ssh123root@kqz-virtual-machine:/etc# sudo apt install openssh-server
3. Restart the ssh service ...