自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 yolov5模型export.py生成的输出节点为output还是output0的问题

源码的意思是根据是否是分割模型来定义输出节点的名称,将其中的output0修改为output之后所生成的onnx模型的输出节点就变成了output了,搞定,查看一下网络结构中的节点名称也没有问题。查看export.py文件,最终定义位置在160行左右。

2024-04-01 14:33:19 220

原创 onnx部署之针对单张图片的检测---opencv的cuda版本推理比cpu更慢?

一度有点怀疑是不是opencv的编译出现了问题,恰好最近认识了一个csdn的朋友也在搞这个东西,所以相互交流了一下,发现原来问题就出在与检测单张图片上,将代码更改为检测视频,获取逐帧检测解决,最终yolov5s.onnx在我的电脑上gpu的推理时间为10ms左右一张,在cpu上推理时间为300-400ms一张。另外,单张图片的处理可能会导致 GPU 的负载不足,无法充分利用 GPU 的并行性能,而处理多张图片可以更充分地利用 GPU 的并行性能,从而提高整体处理速度。

2024-03-31 15:53:04 157

原创 写了一个读取数据集中小中大对象个数的脚本

【代码】写了一个读取数据集中小中大对象个数的脚本。

2024-03-20 19:18:43 131

原创 Qt中数字乱码的问题--根本不需要反复设置重启电脑!!

最近在学习Qt的过程中发现一些控件中显示的数字都有问题,0显示成〇这个倒还能认得,1显示成〈,这谁能认得到,查看了一篇文章说什么要重启电脑,这也太麻烦了吧?控制面板-->时钟和区域-->区域更改日期、时间和数字格式。在标准数字一栏中选中:0123456789。搞定,电脑是重启不了一点的。

2024-03-16 15:33:52 371 1

原创 python中的“*”,解包操作--将tuple与list中的数据解包成孤立的数据

1,[1,28,28],这显然是不正确的,另外分别打印size与*size的结果。将上面()改成[ ]发现*也能实现列表的解包。相应的{ }的集合也是可以使用。从而实现了[-1,*size]到[-1,1,28,28]的转换。很好,既然元组可以,那么列表呢?从这里就可以看出来,

2024-03-09 20:05:48 334 1

原创 关于宽窄字符串和指针读取的问题

默认会将宽字符编码(Unicode)的路径存储在其中。因此,当你试图将宽字符指针强制转换为窄字符指针时,只能获取到第一个字符 "D",因为窄字符指针无法正确解析宽字符编码的路径。最近这学习图像处理的入门课程,拿到老师给的源码之后半天跑不通,逐行调试的时候发现问题出在使用CString定义字符串的时候,使用char* 无法正确读取其中的内容。之后问了chatgpt,发现CString是宽字符串,需要将其改为窄字符串的类型CStringA的类型。时,它已经明确指定了使用窄字符集,所以能够正常获取到完整的路径。

2024-02-28 10:46:20 345

原创 yolov7网络结构图(与yolov7.yaml对应)

其中值得注意的是第80层和第93层,由于MP结构自身有concat后面还有concat,所以作者就把这个concat层放在一起操作了,也就是说80层和93层的concat里面包含了MP模块的concat。最近在看yolov7的代码发现于yolov5的相比yaml文件太多行了,所以特地绘制了一个于yaml文件对应的网络结构图以便于后期的使用于学习。另外由于我主要是为了将模块于yaml文件中的每一层对应,所以有些模块的结构我就不画了,借用CSDN的另一位大佬画的图。希望可以帮助大家理解yolov7的结构。

2024-01-15 23:12:03 1018

原创 yolov5、v7系列训练no labels问题:AssertionError: train: No labels in D:\datasets\small-object-detection-data

直接读取的train.txt和val.txt的路径,而train.txt和val.txt中写的是每一张图片的绝对路径,所以读取图片这一块就是不可能出问题的。最近在训练自己的数据集的时候又出现了一个很笨的错误,首先yolo的标准格式是图片文件夹使用images命名,标签的txt文件夹使用labels命名。那为什么只是一个文件夹命名格式不同会导致读取不到标签的问题呢?可以看到上面我注释掉并附加的一行,源码的意思是将图片的路径中的images替换为labels,就得到了该图片对应的标签的路径了。

2024-01-14 14:20:54 1106 2

原创 yolo系列一个奇奇怪怪的读取不到数据标签的问题

在这个代码中将JPEGImages的图片文件夹名称替换为labels的标签名,我将图片的名称更换了所以自然在这一步是无法转换的,也正是因为这个原因所以造成了找不到标签的路径。一方面是源码没有完全读完;另一方面是自己没有遵循yolo的命名规则随便就把图片文件夹的名称给改掉了。不过还好debug能很快找到问题的所在。

2023-12-26 22:38:43 844 1

原创 将西工大的NWPU VHR-10 dataset数据集标签转换成yolo格式

在yolo模型中要使用这个数据集的话需要将其转换为 类别(编号),x,y,w,h的形式,其中x,y,w,h是目标框相对于图片的框中心点坐标的比例和宽高相对于图像总体尺寸的比例。将坐标从左上右下转换为中心+宽高。

2023-12-26 17:31:39 935 1

原创 谈一谈.pyd文件

最近在使用SAPA的上采样代码的时候,作者整了一个setup的一个操作,最开始的时候没太注意,原来是运行了setup文件之后可以生成对应的.pyd文件。其生成的结果如下:但是很疑惑pyd文件是干啥的,所以上网搜了一下学习了一下,原来.pyd文件是加密的文件。看不懂这个文件的文件名是什么意思,搜了一下原来是cp39-win_arm64是一个有关与设备的文件名,这个是要对应删除的,将其文件名修改为av_ext.pyd。

2023-12-21 20:28:36 539

原创 将RSOD的txtlabel数据转换为适合yolov5的txt数据

今天想用武大的RSOD数据集来做小目标检测,发现数据集中的txt文件夹内容是图片路径+图片类别+坐标信息的格式,和yolov标准版的类别索引+坐标的格式有所区别,于是自己进行了转换,现在把代码贴出来。通过以上的操作之后就可以直接进行转换了,其实过程还是很简单的,可以尝试看一下转换过程,自己怕以后代码找不到了所以就发出来也方便各位需要的伙伴。首先需要将图片和旧的txt标签数据存放于两个独立的文件夹。

2023-12-19 15:41:52 614 1

原创 记录一下labelme标注完之后生成yolo的txt格式标签

前言:最近这两天因为数据集的问题,进行了一些简单的标注工作,使用labelme标注完成之后会生成json格式的文件(每张图对应一个json文件)。这个txt文件的内容就是图片名的前缀,如下图我的图片名命名为000001~001200共1200张图,所要得到的txt文件就包含1200行。这样之后就获得了yolo格式的txt文件夹,yolo格式转COCO格式要生成小目标的APs指标可以参考我这一篇。(3)用xml文件生成yolo格式的txt标签文件(脚本如下,使用之前先看TODO后面的提示)

2023-11-09 19:33:27 1318 1

原创 小目标的检测指标APs怎么获得?------数据集Yolo格式生成json文件

需要这个文件是因为,你在使用val.py文件进行APs的指标评估的时候,会生成一个best.json,那个json文件包含了你对验证集中图片的检测信息,其实就是你生成的检测框的信息,将best.json和annotations.json进行对比就可以得到APs的检测指标了。------注意要调用val.py执行COCO检测指标时还需要修改val.py中的三处代码,今天没什么时间了,先放着(自行搜索一下,这个好搜),等有空了我会贴链接,现在懒得找了。有了这两个文件夹之后,第一步,划分数据集。

2023-11-03 20:16:50 397 4

原创 CMat格式转QImage格式时出现图片歪斜的情况(已解决)

而我最开始只是随便使用了其中的一种(上面的2),只定义了图像的宽度、高度以及格式,从而导致我创建的Qimage对象的size是不明确的,可以理解为图片的三个通道没有被定义。---------------------------------不着急的朋友听我多解释两句--------------------------------------------------------------总结一下-----------------------: 根据指定的宽度、高度和图像格式创建一个空的图像对象。

2023-10-26 23:43:37 105 3

原创 避坑啊家人们:OpenCV Mat::ones()有坑!!

从代码中可以看出我想创建一个大小为100*100的三通道全白的图像,然而在反复测试时都发现显示的是蓝色的图像,最终使用通道分解的方法,将max_image 的三个通道进行分离,并给另外两个通道附上和第一个通道一样的值。因此估计这个函数创建多维的cMat图像的时候是默认只有第一个维度的数据可以进行操作的(如上述代码中创建了全0的图像给它们加上255,但是只有第一个维度进行添加),所以最终导致显示的还是蓝色图像。

2023-10-26 16:32:54 269 1

原创 opencv的cuda加速,速度进来学!

最近这一周都在实现这个部署的动作,遇到了无数的问题,onnx模型不能读取,不能使用GPU加速opencv,tensorRT的部署过程中出现了内存泄漏等等无数的问题,对于非科班的我来说每一个问题都是天大的问题,一步一步脚踏实地做事是我喜欢的方式,所以很辛苦也不觉得难过。③既然还是不能使用cuda加速,那是为什么呢?-------------------------------------编译前要看的注意事项的分割线-------------------------------------------

2023-10-22 21:53:33 978 8

原创 安装了GPU版本的torch却不能用?(已解决来看看)

将以下七个文件夹全部复制到对应的环境的目录下(即上面一个截图中envs-->unet_implementation-->lib-->site-packages),并把环境中对应的torch全家桶文件夹删除。希望能帮到同样问题的人。已经安装了GPU版本的torch,但是使用torch.cuda.is_available()来验证的时候得到的结果还是一个大大的false。但是我在pycharm中查看解释器中的环境:此时的torch版本又是另一个版本。③这样对比终端的库和pycharm的库一眼发现问题;

2023-10-18 19:39:54 1564 2

原创 tensorRT的VS环境部署

与opencv的环境配置不同的是,tensorRT的部署不止要配置tensorRT下的include文件夹路径作为包含目录,还要另外配置CUDA下的路径。cuda下的include文件夹的lib文件有很多,写个程序来读取指定文件夹下的所有文件名,然后复制粘贴进来就好了。除此之外,在链接器-->输入-->附加依赖项中还要配置以上两个include文件夹中的所有lib文件。

2023-10-18 09:51:23 122 1

原创 yolov5s进行tensorRT的VS部署时出现输出信息不正确的情况

其实就是输出节点的问题,有些人的模型输出节点是output,有些模型是output0,当出现置信度为不合理的乱码数值时就可以尝试修改output的结点信息即可。

2023-10-17 20:21:01 186

原创 yolov5s利用tensorRT部署并转dll文件

(2)tensorrt: export failure 0.0s: No module named 'tensorrt':问题是说tensorrt没有正确安装成功,但是我是根据视频的教程一步一步来的,于是我就想卸载重装,但是在终端中删除这个库的时候出现了错误,说我没装这个库,警告的信息如下。这个问题是说cuda不可用,最终发现就是cuda没有正确安装,要安装cuda的GPU版本, cudnn,并且torch和torchvision的版本都要与cuda对应,缺一不可。

2023-10-13 15:15:50 382 1

原创 Yolov5s利用onnx部署并转dll的记录

4.在读取完模型之后我们还要进一步将模型的输出内容解码生成我们想要的检测结果,这一步的实现就需要另外编写解码过程的代码,根据不同的模型以及不同的检测类别需要编写不同的解码过程,具体的解码过程与pycharm中的解码过程是一样的(只是需要转写成C++的形式)。先对应创建前面所编写的.cpp文件的头文件,创建 yolov5s的类别并在cpp文件中定义它的test成员函数(实际上就是刚才所编写的加载模型+检测图片的函数)此时已经完成了dll文件的封装步骤了,接下来是调用dll文件的步骤。

2023-10-13 14:54:11 482 2

原创 创建conda环境时出现的MoudleNotFound的错误

截图是后面用终端创建conda环境时报的错误,用Pycharm也是报这个错误,可以看出错误为MoudleNotFoundError,即没有urllib3这个模块,找到对应的文件路径,D:\anaconda3\lib\site-packsges\reqyests这个路径下,在其他环境中安装urllib3就会有如下两个文件,将其复制到requests文件夹下,再创建环境即可解决该问题。

2023-03-10 09:44:11 170 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除