![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
实验室
镇长1998
菜鸟升级。
展开
-
[MMSegmentation] PR Model Ensemble
MMSegmentation PR原创 2022-10-24 19:49:16 · 281 阅读 · 0 评论 -
Linux pip 安装 tensorRT
pip安装tensorRT原创 2022-06-21 15:22:02 · 1130 阅读 · 3 评论 -
Python 去除字符串中的中英文标点符号
去除中英文标点符号原创 2022-06-08 12:19:50 · 2404 阅读 · 4 评论 -
Python获取本机GPU的显存余量
获取机器上显卡的显存剩余原创 2022-06-05 20:52:19 · 1093 阅读 · 0 评论 -
albumentations ToTensorV2
albumentations ToTensorV2from albumentations.pytorch import ToTensorV2ToTensorV2(p=1)只会[h, w, c] -> [c, h, w],不会将数据映射到[0, 1]原创 2022-05-07 23:44:47 · 3012 阅读 · 1 评论 -
Windows 命令行终端可以使用滑轮上下滚动
修改屏幕缓冲区大小原创 2021-12-06 14:58:42 · 1297 阅读 · 1 评论 -
Windows终端与远程服务器tmux、vim 互相复制 / 粘贴内容
右键终端顶部的白框,选择 属性在编辑选项中,将下图红框的内容选中,即可使用Ctrl + shift + C 复制内容,Ctrl + shift + V 粘贴内容原创 2021-11-05 11:42:47 · 711 阅读 · 0 评论 -
CursorResult 结果获取其长度
CursorResult 结果获取其长度 rows.rowcount原创 2021-10-26 11:24:02 · 911 阅读 · 0 评论 -
参数网格搜索: ParameterGrid
sklearn中提供了一个参数组合的方法,该方法可以根据用户输入的各个参数的可能取值,产生所有参数的组合结果from sklearn.model_selection import ParameterGridparam_grid = {'a': [1, 2], 'b': [True, False]}for param in list(ParameterGrid(param_grid)): print(param) # 每一个param代表一种参数组合方式, param是一个字典, 具体内容类似于:.原创 2021-10-03 21:02:55 · 588 阅读 · 0 评论 -
Pytorch torch.device
pytorch torch.devicedevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')torch.device的判断# 1. 直接判断 device == 'cuda' 或者 device == 'cpu' 这样是不能正确判断device的>>> torch.device('cuda:0')device(type='cuda', index=0)>>> torch.原创 2021-09-14 20:18:14 · 969 阅读 · 0 评论 -
Mac Pytorch 模型下载位置
/Users/用户名/.cache/torch/hub/checkpoints原创 2021-08-02 16:38:09 · 323 阅读 · 2 评论 -
Python3 读取网络图片,并保存至内存中
# img_path 是img的完整路径,如 https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fimg1.utuku.china.com%2F640x0%2Fent%2F20200522%2F6ca7ef26-3c5b-4994-9e12-a7a9acc33092.jpg&refer=http%3A%2F%2Fimg1.utuku.china.com&app=2002&size=f9999,10000&q=a80&a.原创 2021-07-27 18:56:07 · 1387 阅读 · 0 评论 -
type object Image has no attribute fromarray
我的错误原因: Image包导入错误错误导入: from PIL.Image import Image正确导入: from PIL import Image原创 2021-07-23 15:21:50 · 678 阅读 · 0 评论 -
Pytorch 镜像Padding
对图像进行边缘镜像填充path = '/root/PycharmProjects/test/label/'for file in os.listdir(path): pad = transforms.Pad(padding=64, padding_mode='reflect') #镜像填充宽度为64 totensor = transforms.PILToTensor() toimg = transforms.ToPILImage() img = totensor(I原创 2021-05-05 10:32:10 · 625 阅读 · 0 评论 -
C++基础知识点(未完...)
0. C++助教马上就要开始了,重新复习下C++基础知识.1. 数据类型int 4字节unsigned int 4字节long long 8字节float 4字节double 8字节char 1字节2. 数组的初始化方式 2.1 数值型数组的初始化// 一维数组int a..原创 2020-10-30 11:43:48 · 371 阅读 · 0 评论 -
PaddlePaddle 获取BackBone的中间层feature map
import paddleimport paddle.nn as nnfrom paddle.vision.models import vgg16, resnet50import osclass Resnet(nn.Layer): def __init__(self): super(Resnet, self).__init__() self.net = resnet50(pretrained=True) self.layer0 = nn.S.原创 2021-04-14 16:52:34 · 707 阅读 · 0 评论 -
Ubuntu 报错:bash: pip: command not found
0. 目前我的Ubuntu初始系统中是没有安装pip工具的,因此找不到pip命令1.sudo apt-get updatesudo apt-get install python3-pip # 如果Python2和Python3都存在原创 2021-04-13 22:46:19 · 2377 阅读 · 0 评论 -
pyqt5 designer QLabel插入图片
1. 选中要插入图片的QLabel2. 在Designer右侧属性编辑器中选中pixmap属性3. 选择要插入的图片即可原创 2021-04-09 14:03:11 · 5035 阅读 · 4 评论 -
Pytorch 加权BCE损失
bce_loss = nn.BCELoss(reduction='none') # 默认选项是mean, 设置为none后会返回一个和target一样尺寸的tensor, 每个位置的数字对应网络输出和target对应位置上的lossweight = torch.zeros_like(target)weight = torch.fill_(weight, 0.2)weight[target > 0] = 0.8bce_loss = bce_loss(input.float(), targ.原创 2021-04-07 20:52:12 · 2578 阅读 · 9 评论 -
Image.blend ValueError: images do not match
Traceback (most recent call last): File "/root/PycharmProjects/ADSFN/test.py", line 21, in <module> img = Image.blend(img1, label, 0.7) File "/root/anaconda3/lib/python3.7/site-packages/PIL/Image.py", line 2939, in blend return im1._new(.原创 2021-03-23 18:50:40 · 2572 阅读 · 3 评论 -
Pytorch tensor.sum()
Pytorch 中tensor.sum(axis) 会按照指定的维度进行求和,但是对于N * C * H * W 这种类型的输入,如果通过 sum 获得 N * C * 1 * 1 的输出该怎么做?a = torch.ones(size=(1, 3, 4, 4))b = a.sum(axis=[2, 3], keepdim=True)print(b.shape) # (1, 3, 1, )print(b) # [[ [[16]], [[16]], [[16]] ]].原创 2021-03-05 13:21:46 · 9810 阅读 · 3 评论 -
机器学习 BN层实现细节
BN层实现细节:一个问题:在上图中的最后一行中, 进行了scale 和 shift, 这样做的原因是 如果没有scale和shift且使用sigmoid作为激活函数的话, 那么BN会使得输入sigmoid的数据都处于其梯度较大的区域,而如果都在该区域的话, sigmoid的非线性拟合能力将会被减弱, 因为这段区域与线性比较相似, 因此会降低模型的拟合能力, 因此需要将一部分数据移出梯度较大的区域。...原创 2021-02-27 11:58:11 · 578 阅读 · 0 评论 -
CNN 卷积的 权值共享 和 局部连接 特点
CNN中卷积的特点:权值共享、局部连接权值共享: 卷积操作会产生多个channel, 而每个channel中的每个元素值都是由相同的卷积核产生的, 一个卷积核kernel可以看成是一个模式搜索器,它对特定的模式感兴趣,换言之,只有特定的模式才能使其激活,激活则代表输出值较大。由于对于图像来说特定的模式可以出现在图像的任何位置,因此卷积核也需要对整张图片进行完整的搜索(卷积核滑动),以搜索出所有其感兴趣的区域由下图所示: 鸟嘴可能出现在图中左上角也可能出现在图的中间位置局部连接: 在...原创 2021-02-23 14:45:56 · 3418 阅读 · 0 评论 -
skimage.morphology.dilation 运行错误
错误: File "Dialation.py", line 19, in <module> img = binary_dilation(img, disk(5))File "/root/anaconda3/lib/python3.7/site-packages/skimage/morphology/misc.py", line 39, in func_out return func(image, selem=selem, *args, **kwargs)File .原创 2021-02-19 17:24:39 · 612 阅读 · 0 评论 -
Pytorch 测试阶段显存溢出
Pytorch模型训练的测试阶段, 显存溢出,训练阶段并没有显存溢出,原因: 没有使用 with torch.no_grad(),model.eval()只是使dropout和bn不工作,并不能产生torch.no_grad()的效果with torch.no_grad(): 测试阶段代码...原创 2021-02-07 10:54:10 · 1215 阅读 · 1 评论 -
Pytorch CUDA ERROR: device-side assert triggered at
遇到 CUDA ERROR: device-side assert triggered at 这个问题,我出现的原因目前有2种1. 模型预测中包含了label不存在的类别,预测中部分预测类别超出了label中最大类别2. 交叉熵函数,传入的模型预测tensor并不是N * Num_Class* H * W (Num_Class: 类别数量)...原创 2021-02-06 12:55:36 · 533 阅读 · 0 评论 -
Pytorch RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn
原因: loss = loss1 + loss2, 而loss这个tensor默认的requires_grad是False,因此执行loss.backward()时会报标题的错误解决办法: 将loss这个tensor的requires_grad属性设为Trueloss.requires_grad_(True)原创 2021-02-03 19:52:36 · 3904 阅读 · 1 评论 -
Pytorch 交叉熵损失函数计算实例
在Pytorch中交叉熵损失函数上图中x代表的是模型的output,即预测输出序列, class代表的是指模型预测的类别,loss(x, class)代表模型输出x的损失loss值不同BatchSize举例说明# 这是一个二分类问题, batchsize = 1 model-output: [-0.3345, -1.0987] label-target: [0] loss: -(-0.3345) + log(exp(-0.3345) + exp(-1....原创 2020-12-24 17:35:51 · 1540 阅读 · 1 评论 -
nginx + php 上传文件最大5KB
现象:需要上传图片,但是上传图片大于5KB就会显示404错误。。。,但是其他的东西明明是好的原因:1. 在nginx的配置文件nginx.conf中没有设置client_body_temp_path属性,导致使用post上传的$_FILES文件出现上述问题2. 显示声明一个client_body_temp_path地址即可...原创 2020-12-09 11:22:03 · 156 阅读 · 0 评论 -
ValueError: attempted relative import beyond top-level package
0. 文件结构1. 在SegNet.py中导入Model.py 和 utils1.py 出现文章题目的错误信息原因: 没有指明Python Package中有哪些文件,导致无法导入2. 解决1. 在__init__.py中指出Package中有哪些文件2. __all__ = ['Model', 'utils1']3. 问题解决...原创 2020-11-28 18:40:22 · 1096 阅读 · 0 评论 -
Pytorch 任意层特征图可视化
1. 思路: 输入一张随机像素图片,然后不断调整输入图片中各个像素点的像素值,使得选定可视化的特征图表现出最大的激活度2. 代码:import torchimport cv2import numpy as npimport torch.optimimport torchvisionfrom PIL import Imagefeature_result = Nonedef feature_hoook(layer, data_input, data_output): glo原创 2020-11-25 23:08:41 · 3580 阅读 · 0 评论 -
Image.open() png图片
现象: 当使用Image.open(png图片) 时, 默认读入图片是4通道的, RGBA (多出的A是透明度), 而模型的输入一般是三通道的, 因此需要将RGBA -> RGB方法:img = img.convert('RGB')原创 2020-11-25 16:00:58 · 4268 阅读 · 0 评论 -
pytorch RuntimeError: expected scalar type Double but found Float
RuntimeError: expected scalar type Double but found Float原因: tensor的数据类型dtype不正确解决: 将数据类型转为float32tensor.to(torch.float32)原创 2020-11-25 14:38:12 · 54077 阅读 · 17 评论 -
PILImage 和 Tensor转换 TypeError: Input type int64 is not supported
transform.ToPILImage()(tensor)该方法接受的tensor需要是torch.float32类型的参数, 不能是torch.int类型的参数, 否则会报错如下图原创 2020-11-24 22:32:12 · 5996 阅读 · 0 评论 -
利用visdom显示卷积层结果
输入卷积神经网络的图像:中间各个卷积层输出的featuremap可视化结果:代码: vis = visdom.Visdom() for layer_name, fmap_list in fmap_dict.items(): fmap = fmap_list[0] # shape : (1, 64, 55, 55), batch维度恒为1 fmap.transpose_(0, 1) # 将64通道逐通道的显示原创 2020-11-15 17:12:42 · 466 阅读 · 1 评论 -
Pytorch MaxUnpooling 反最大池化操作(上采样)
import torchfrom torch import nnfrom torchvision import transformsfrom PIL import Imageimg = Image.open('images/train/0_1_pre_disaster.tif')img_tensor = transforms.ToTensor()(img)img_tensor = img_tensor.unsqueeze(0) # MaxUnpool2d()需要输入一个4维.原创 2020-11-11 21:13:57 · 4645 阅读 · 0 评论 -
利用Pytorch的transform进行数据扩充
import torchfrom PIL import Imageimport torchvisionfrom torchvision import transformsimg_transfrom = transforms.Compose([ transforms.Resize((300, 300)), transforms.CenterCrop(size=200), transforms.RandomHorizontalFlip(p=1), transforms.原创 2020-11-11 11:37:25 · 3230 阅读 · 3 评论 -
Pytorch 目标检测 IOU交并比函数分析
1. 源码# 参考https://github.com/sgrvinod/a-PyTorch-Tutorial-to-Object-Detection/blob/master/utils.py#L356def compute_intersection(set_1, set_2): """ 计算anchor之间的交集 Args: set_1: a tensor of dimensions (n1, 4), anchor表示成(xmin, ymin, xmax,原创 2020-11-07 22:33:48 · 850 阅读 · 0 评论 -
Pytorch 读取指定文件夹中的图片
1. 文件夹与源代码的位置关系2. 代码 (0.py)import matplotlib.pyplot as pltimport torchimport torchvisionfrom torchvision import datasets, transformsdata_transfrom = transforms.Compose([ # 对读取的图片进行以下指定操作 transforms.Resize((300, 300)), # 图片放缩为 (300, 300原创 2020-10-26 22:04:21 · 9842 阅读 · 3 评论 -
Linux GPU DRL-RPN-TF 部署
1. git clonegit clone https://github.com/aleksispi/drl-rpn-tf.git2. 修改配置cd tf-faster-rcnn/lib# Change the GPU architecture (-arch) if necessaryvim setup.py# GPU 2080Ti 设置为 sm_753.Build the Cython modules# 路径还在lib文件夹下make cleanmakecd .原创 2020-09-14 19:03:31 · 258 阅读 · 0 评论