图像处理
写代码_不错哦
这个作者很懒,什么都没留下…
展开
-
模型推理时图片卷积可视化
模型推理可视化原创 2022-11-09 20:44:42 · 958 阅读 · 0 评论 -
参加江大白手把手教你-----AidLux智慧安防AI训练营
目标跟踪原创 2022-10-29 00:10:59 · 995 阅读 · 0 评论 -
自己对 RepVGG 的一点理解
RepVGG原创 2022-08-10 20:17:40 · 1281 阅读 · 2 评论 -
可视化模型网络连接
可视化原创 2022-07-21 22:28:52 · 273 阅读 · 0 评论 -
conda 安装 pytoch 用国内源则一直安装的 cpu版本?
最近用更改了 anaconda 的源,然后用 pytorch 官网安装方法,不加 -c pytorch forge 啥的,安装完,用以下命令,一直返回 False,就很崩溃了,无意中看到一个可以查看环境中安装的各个版本,一看是cpu,乖乖,安装错了,后来发现,只要这么安装,一直是cpu版本,崩溃。测试cuda命令:import torchprint(torch.cuda.is_available())pytorch 对应那一行最后 cpu,无论怎么安装都是这个后来终于利用 pi原创 2022-05-02 23:58:51 · 1302 阅读 · 0 评论 -
ubuntu 卸载 cuda 以及再次安装
使用这个方法卸载cudasudo apt-get remove cudasudo apt autoremovesudo apt-get remove cuda*cd /usr/local/sudo rm -r cuda-11.x x代表版本sudo dpkg -l |grep cuda 这个只能卸载 dpkg然后使用 nvcc -V 仍然看到 cuda 版本接着使用:sudo apt-get --purge remove "*cublas*" "*cufft*" "*...原创 2022-05-02 13:49:04 · 4369 阅读 · 0 评论 -
ubuntu 或者 windows 安装 pytorch 慢 以及anaconda,cuda安装
ubuntu 更换Anaconda源 解决pytorch无法下载的问题_枸杞叶儿的博客-CSDN博客这个博主的方法真的不错,而且设置好后,就可以直接用官网上的命令,可以加-c pytorch -c conda-forge 就相当于直接用官网命令,而且速度很快。sudo gedit ~/.condarcchannels: - defaultsshow_channel_urls: truechannel_alias: https://mirrors.bfsu.edu.cn/...原创 2022-05-01 15:52:59 · 174 阅读 · 0 评论 -
非极大值抑制 non-max-suppresion
所谓非极大值抑制,就是把不是最大的值给剔除掉。在深度学习之目标检测中,当模型预测一个物体时,会有很多框,这个时候,我们一般会选取置信度最大的作为输出。同时,把置信度小的与这个置信度最大的 IOU 大于一定阈值的给剔除掉,IOU大于一定阈值,就是两者重合度比较大了。IOU的计算可以参照:tensor与list版本的iou比较_shenjianhua005的专栏-CSDN博客非极大值的代码,我是参照:Machine-Learning-Collection/ML/Pytorch/object_原创 2021-09-16 20:20:04 · 440 阅读 · 0 评论 -
tensor与list版本的iou比较
自己写的是list版本的,但是一般深度学习框架都是tensor版本的,所以做了两者对比,发现没有什么区别,但是个人感觉,tensor版本更灵活。import randomimport torchvision.transforms as transformsimport cv2import torchimport osimport numpy as npimport matplotlib.pyplot as pltfrom torch.utils.data import Dataset,原创 2021-07-10 17:14:23 · 236 阅读 · 0 评论 -
tensor版本的交并比IOU
今天在看tensor版本的交并比,它比单纯的python版本的list使用更加灵活,但是看的时候也遇到了一个问题,就是unsqueeze,这个方法就是根据指定的维度进行扩展一维,比如维度为:A =(2,4),A.unsqueeze(0),则变为 (1,2,4)A.unsqueeze(1),则变为 (2,1,4) A = box_a.size(0) B = box_b.size(0) max_xy = torch.min(bo...原创 2021-07-10 16:12:06 · 258 阅读 · 0 评论 -
深度学习之数据增强
这篇文章的目的是写写常见的数据增强模式,也会把对应的标注随着增强模式对应更新,增强模式会持续更新,从最简单的开始...import randomimport torchvision.transforms as transformsimport cv2import torchimport osimport numpy as npimport matplotlib.pyplot as pltfrom torch.utils.data import Dataset, DataLoaderfr原创 2021-07-09 22:52:47 · 384 阅读 · 3 评论 -
动手实现pytorch之Dataloader
参考:https://zhuanlan.zhihu.com/p/52807406还是比较喜欢这个作者把源码放出来,就是继承 Dataset需要覆盖什么,这样就可以了,如下图:所以,知道需要overide什么,我们就可以定义自己的 CustomData了,如下所示:import randomimport torchvision.transforms as transformsimport cv2import torchimport osimport numpy as npimpor.原创 2021-07-08 22:40:45 · 742 阅读 · 2 评论 -
比较好的网址
https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html 对检测做了一个总结、收集https://zhuanlan.zhihu.com/p/142630197 目标检测领域,从FasterRCNN的实战,Anchor,从loss到全局解析到YOLO V1,YOLO V2,YOLO V3的网络讲解,YOLO V3的anchor和loss都已经讲完了...原创 2021-07-04 13:19:44 · 122 阅读 · 0 评论 -
根据比例,随机划分数据
import osimport randomfrom imutils import pathsfrom sklearn.model_selection import train_test_splitfrom tqdm import tqdmdef split_train_val(): xml_file_path = r'' out_txt_dir = r'' if not os.path.exists(out_txt_dir): os.mak...原创 2021-07-04 13:03:10 · 172 阅读 · 0 评论 -
多问为什么
原创 2021-07-04 11:03:53 · 65 阅读 · 0 评论 -
零散知识点
PyTorch源码解读之torch.utils.data.DataLoaderhttps://blog.csdn.net/u014380165/article/details/79058479https://www.cnblogs.com/hutao722/p/10008581.html这样就不要依赖input sizehttps://blog.csdn.net/stu_shanghui/article/details/91042187Batch normalization(每.原创 2021-07-04 10:33:33 · 200 阅读 · 0 评论 -
yolov1 汇集的网址
当初第一次接触yolov1,没有任何基础,所以看了很多别人博客才理解,记录下。 http://noahsnail.com/2017/08/02/2017-08-02-YOLO%E8%AE%BA%E6%96%87%E7%BF%BB%E8%AF%91%E2%80%94%E2%80%94%E4%B8%AD%E8%8B%B1%E6%96%87%E5%AF%B9%E7%85%A7/ https://zhuanlan.zhihu.com/p/136382095 https://bbs.cvma原创 2021-07-04 09:55:44 · 257 阅读 · 0 评论 -
permute,transpose,view,reshape
今天发现一个奇怪现象,调代码,发现在调函数前定义了一个变量,在函数内也可以用,这就奇怪了,按理说,调用的函数在其它地方,而局部变量在外,不是全局变量,代码下:原创 2021-06-24 13:56:37 · 146 阅读 · 0 评论 -
nn.ReLU(inplace=True) 中 inplace 理解
https://discuss.pytorch.org/t/whats-the-difference-between-nn-relu-and-nn-relu-inplace-true/948da'zhi原创 2021-06-10 21:52:41 · 826 阅读 · 0 评论 -
reference:计算机视觉入门系列(一) 综述
https://blog.csdn.net/wangss9566/article/details/546185072021-05-31 22:14:58 · 137 阅读 · 0 评论 -
RoI Pooling两次量化误差
参考:https://www.jianshu.com/p/670a3e42107d候选框从原图坐标映射到的feature map坐标时,位置坐标可能存在浮点数,此时进行取整操作从而出现第一次量化;其次,在ROI Pooling求取每个小网格的位置时也同样存在浮点数取整的情况。这两次量化的结果都使得候选框的位置出现了偏差。RPN推荐128个rois(对于原图的坐标),当和feature一起传入 Fast-RCNN时,rois的坐标会映射到 feature map上,按照缩放因子,rois坐标会缩.原创 2021-05-31 13:19:25 · 853 阅读 · 0 评论 -
numpy where()取值后为啥一般后面都加[0]
常看到:keep = np.where((hs >= min_size) & (ws >= min_size))[0],很奇怪,这里为啥加[0],点进where源码看到,其 return (condition, x, y),从这最外面()括号可以看出,其返回类似元组,所以取值需要加[0]...原创 2021-05-21 22:42:12 · 852 阅读 · 0 评论 -
numpy 持续更新
tmp_zero = xp.zeros((0, 4), dtype=loc.dtype) 是创建一个空的nump array, 其与 tmp_one = xp.zeros((1, 4), dtype=loc.dtype) 区别在于 前者len(tmp_zero) = 0, 后者为len(tmp_one) = 1,前者可以用于返回判断,但是后者就不行,所以,当某个方法需要返回一个空的numpy array时,就可以用,等价于python list,如 return []。...原创 2021-05-21 22:10:58 · 103 阅读 · 0 评论 -
Pytorch Tensor维度
https://blog.csdn.net/weicao1990/article/details/93618136原创 2021-05-20 14:55:28 · 70 阅读 · 0 评论 -
one stage & two stage 区别
区别就是有没有 RPN(region proposal network),没有就是 one stage,有就是 two stage后面把目标检测发展过程经典网络熟悉一下。reference:https://blog.csdn.net/gaoyu1253401563/article/details/86485851原创 2021-05-07 09:09:07 · 177 阅读 · 0 评论 -
关于 nump 的meshgrid 理解
meshgrid 这个方法其实就是把 (x, y) 坐标进行一个组合,生成对应的网格,然后把属于 x 的返回给x,属于 y 的返回给 y。先上代码import numpy as npif __name__ == '__main__': x = np.arange(-3, 3) print(x) y = np.arange(-6, 0) print(y) print('*' * 10) X, Y = np.meshgrid(x, y) pr.原创 2021-04-30 10:35:38 · 120 阅读 · 0 评论 -
图像训练为啥要用backbone
刚刚在看别人视频的时候,突然一个问题,为啥要用别人预训练好的模型作backbone,这个backbone是别人训练的别的图像....权重不适合我这个...后来浏览这个https://blog.csdn.net/weixin_44791964/article/details/105739918发现这句话:“在代码里里面,我们使用resnet50()函数来获得resnet50的公用特征层”, 有了理解其实别人这个backbone是对任意一幅图像都可以较好的提取特征,backbone的作用..原创 2021-04-24 09:23:53 · 1454 阅读 · 4 评论 -
关于torch torchvison离线安装
一般情况是直接用官方网站官网提供的来安装,但是网速不稳定,导致会超时,这个时候下载离线的安装包来进行安装就有必要了。比如要安装如下版本:当在命令行安装的时候,会有:https://download.pytorch.org/whl/torch_stable.html我们到这个网站打开,会有:这个时候要注意了,我们安装的版本是,python安装的是3.8:torch==1.8.1+cu102torchvision==0.9.1+cu102torchau...原创 2021-04-15 23:00:52 · 2823 阅读 · 0 评论 -
对cuda的理解
reference:https://www.zhihu.com/question/59184480这里面说,“对深度学习需要计算的东西进行重组” 感觉并不严谨,其是深度学习调用cuda,然后cuda根据深度学习内容,组合出最适合的计算方式,然后调用GPU进行计算。以上个人理解,如有问题,欢迎讨论。...原创 2021-04-01 15:17:00 · 131 阅读 · 0 评论 -
卷积操作后输出尺寸
https://blog.csdn.net/weixin_38145317/article/details/89636340原创 2021-02-24 18:38:59 · 275 阅读 · 1 评论 -
pytorch函数学习随笔记录---stack与cat
https://zhuanlan.zhihu.com/p/70035580原创 2021-02-24 15:52:06 · 105 阅读 · 0 评论 -
CUDA_VISIBLE_DEVICES 设置指定GPU cuda “0,1,2“来运行
https://blog.csdn.net/abc13526222160/article/details/109532767原创 2021-02-24 11:08:05 · 8497 阅读 · 1 评论 -
动手深度学习pytorch 随手记
1.仅⽀持输⼊⼀个batch的样本不⽀持单个样本输⼊,如果只有单个样本,可使⽤ input.unsqueeze(0) 来添加⼀维。原创 2021-02-18 21:19:49 · 139 阅读 · 0 评论 -
pytorch函数名有下划线和没有下划线区别
参考:https://blog.csdn.net/weixin_43323459/article/details/106969843原创 2021-02-18 16:14:34 · 245 阅读 · 0 评论 -
对张量的理解,Tensor
个人觉的这个解释很好:https://zhuanlan.zhihu.com/p/48982978 什么是张量:Tensor实际上就是一个多维数组(multidimensional array),其目的是能够创造更高维度的矩阵、向量。为什么用Variable (variable)变量是可以只用GPU进行加速计算的 https://blog.csdn.net/qq_41776781/article/details/93967961tensor表示一个的多维矩阵,tensor可以与nump.原创 2021-02-03 21:16:07 · 123 阅读 · 0 评论 -
YOLOV1所用VOC数据转换
本文是在认真研究了https://github.com/motokimura/yolo_v1_pytorch.git后自己的理解,为了方便自己复习以及大家共同讨论,写出的理解,如有理解错误,还请指出,谢谢~以下是github中的voc.py。yolov1是将一张图片分割成S*S个小个子,然后每个格子输出两个预测值。yolov1所用的训练数据为voc,但是yolo需要的数据格式为[x,y,w,h],其中x,y为相对于其小个子的偏移,即x,y所在小格子,小格子的左上角为起点(0,0),且[x,y..原创 2021-01-29 13:35:35 · 374 阅读 · 0 评论 -
resnet50
#https://blog.csdn.net/u014380165/article/details/79119664#这样就导入了resnet50的预训练模型了。如果只需要网络结构,不需要用预训练模型的参数来初始化,那么就是:#model = torchvision.models.resnet50(pretrained=False)resnet50 = models.resnet50(pretrained=True)self.extraction_layers = nn.Sequential(*li原创 2020-11-29 20:41:57 · 730 阅读 · 0 评论 -
python 画图像
参考:https://blog.csdn.net/majinlei121/article/details/78935083import matplotlib.pyplot as pltplt.imshow(img,cmap='gray')plt.show()原创 2020-11-15 09:51:25 · 137 阅读 · 0 评论 -
python 读取图片后返回的格式,以及转灰度,二值化
https://docs.opencv.org/master/d4/da8/group__imgcodecs.html#ga288b8b3da0892bd651fce07b3bbd3a56通过看上面官网,看到cv.imread一般默认格式是返回B,R,G格式BGR图像转为灰度:input_gray = cv2.cvtColor(in_img, cv2.COLOR_BGR2GRAY)当需要把图像转为二值化图像时,用的方法是:th,binary_img = cv2.threshol原创 2020-11-15 09:35:43 · 816 阅读 · 0 评论 -
关于 准确率,精确率,召回率讲解
昨天把这三个好好理解了一下,一般在用算法模型进行预测之前,都用标好的数据进行训练,这些标好的数据就是ground truth, 实际结果 TRUE FALSE 预测结果 Positive TP FP TP:为预测样本结果为正的,实际样本结果也...原创 2020-11-11 21:01:38 · 680 阅读 · 2 评论