- 博客(20)
- 收藏
- 关注
原创 C++之旅:vector容器中push_back与下标[]访问方式添加元素的差异
对于push_back()方法添加元素时需要注意的是:对于有添加顺序需求的数组,元素添加顺序与其相对应的索引需要保持一致,比如此处示例中的顶点数组;当然对于添加顺序无关的数组,元素的添加就无所谓了。三种方式,其中at()方法与下标[]方法类似,都是通过下标访问的方式进行赋值,故记作同一种方式;若为空只能使用动态添加元素的方式push_back()方法。其实这两种方式添加元素最根本的区别是容器是否为空;此处以osg的geometry的矩形的4个顶点为例。对于下标[]访问进行赋值的方式需要注意的是。
2024-03-10 22:06:40
248
原创 C++之旅:关于缺省参数与virtual、overwrite关键字的声明与定义
缺省参数其实就是函数的形参中给定默认值的参数,并且给定的默认参数是常量(常数或者枚举类型的常量等),例如示例代码中的基类构造函数的声明与定义。CBaseClass(int f_a, EBaseColor f_b = EBaseColor_Red) // 缺省参数的声明(.h文件中)void CDerivedClass::doSomething() // 派生类虚函数定义/实现。CBaseClass(int f_a, EBaseColor f_b) // 缺省参数的定义(.cpp文件)
2024-03-10 17:14:16
333
原创 Pytorch模型TensorRT部署
Ubuntu20.04.02环境配置Anaconda3/Python3.8.8Pytorch1.9.0+cu102CUDA 11.3.r11.3Onnx1.10.2Onnxruntime 1.9.0pytorch常用的部署方案CPU: pytorch->onn...
2021-11-13 16:38:23
3121
1
原创 RuntimeError: cuda runtime error (46) : all CUDA-capable devices are busy or unavailable at /pytorch
最近在训练YOLOV5时,发现以下问题:Traceback (most recent call last): File "train.py", line 399, in <module> train(hyp) File "train.py", line 228, in train for i, (imgs, targets, paths, _) in pbar: # batch -------------------------------------------
2020-11-26 10:06:38
3995
原创 关于深度图像压缩方法中的位可变问题的探讨
在基于深度自编码网络的图像压缩方法中,有一个关于位分配的问题,即对于人眼视觉更关注的区域分配更多的比特位,其他区域分配少一点的比特位,之前的深度学习图像压缩模型对于整个图像区域的内容都是位不变的分配方式,即对整个图像内容同等对待,都分配同样的比特位,但是[文献]提出了重要性图(importance map)的模块用于指导内容的位可变分配,简单来说就是实现内容的自适应;除此之外,还有另一种由显著性图...
2020-04-13 19:58:42
774
1
原创 图像压缩之《Learned Image Compression with Discretized Gaussian Mixture Likelihoods and Attention Modules》
论文地址:https://arxiv.org/pdf/2002.01657.pdf代码地址:暂未公布摘要现在基于深度学习的图像压缩方法有着快速的发展同时也有着令人满意的结果,但是,在可学习的压缩算法和现行压缩标准之间仍然存在性能差距,尤其是在广泛使用的PSNR度量方面。本文探讨了最近的可学习的图像压缩算法中的存在的冗余问题,作者发现对于率估计,准确的熵模型极大的影响着模型的参数优...
2020-02-29 21:52:56
3111
1
原创 图像压缩之《Discernible Compressed Images via Deep Perception Consistency》
论文地址:https://arxiv.org/pdf/2002.06810.pdf代码地址:暂未公布摘要传统的图像压缩方法都是通过最小化原图像与压缩图像之间的外观差异,而较少的去注意其在其他视觉任务上的功效,比如图像识别与目标检测。本文旨在通过要求外观和感知一致性来压缩图像,基于编解码架构,作者提出使用一个预训练的CNN模型来提取原图像和压缩图像的特征并使用最大均值差异来最小化两种...
2020-02-26 21:31:04
383
原创 图像压缩之极限压缩方法:《Generative Adversarial Networks for Extreme Learned Image Compression》
Generative Adversarial Networks for Extreme Learned Image CompressionEirikur Agustsson,Michael Tschannen,Fabian Mentzer,Radu Timofte,Luc Van Gool, ETHZ, ICCV2019论文地址:https://arxiv.org/pdf/1804...
2020-02-21 23:20:12
3604
9
原创 图像压缩之《A Unified End-to-End Framework for Efficient》
论文地址:https://arxiv.org/pdf/2002.03370.pdf代码地址:暂未公布摘要针对目前最新的深度学习图像压缩所遭遇的计算复杂性,本文提出了一个称为高效深度图像压缩(Efficient Deep Image Compression, EDIC)的统一框架,该框架基于三个新的技术:通道注意力模型,高斯混合模型以及解码端增强模型。整个编解码框架基于Balle的超...
2020-02-19 21:53:45
1067
1
原创 图像压缩之《A GAN-based Tunable Image Compression System》
论文地址:https://arxiv.org/pdf/2001.06580.pdf代码地址:暂未公布摘要基于重要性图(imporatnce map)结构来依据图像内容显著性来实现位分配(bit allocation)问题已经有不少研究了,目前,在低bpp下非重要性区域不充分的位分配导致图像严重失真,这也阻碍了基于内容加权的图像压缩方法。本文基于前者的基础上设计了一种新的重要性图结构...
2020-02-15 17:57:27
1640
1
原创 Pytorch中.data与.detach()的区别和作用
在Pytorch中,创建模型和数据运算传递时,经常会使用到tensor.data和tensor.detach(),对于这两种使用方式,都是对Variable中的tensor进行处理,但是都不进行梯度计算和被进行梯度跟踪,即requires_grad=False,简单来说,他们的区别如下:相同点两者都和原数据共享同一块数据;都和原来数据的计算历史无关;requires_grad = Fa...
2020-01-01 11:54:58
3591
原创 阅读笔记:《Computationally Efficient Neural Image Compression》
《Computationally Efficient Neural Image Compression》Nick Johnston,Elad Eban,Ariel Gordon,Johannes BalléGoogle Research论文连接:https://arxiv.org/pdf/1912.08771.pdf代码链接:暂未公开源码摘要这篇是Balle大神挂名...
2019-12-20 19:51:26
1202
1
原创 Pytorch中的哈达玛积(Hadamard product)与矩阵乘积(Matrix product)的区别
在Pytorch中tensor处理时我们经常会遇到矩阵之间的乘法运算,而对于不同的要求会有不同的计算方式,特别是Hadamard积与矩阵乘积之间的差别。哈达玛积:对于两个举证或者数组A和B,A和B的维度至少是2,如果是二位数组,则AB两个数组相对应的维度的值必须相等,例如A为m*n的数组,仅当数组B满足维度为m*n时,A与B才能进行哈达玛积运算,具体计算方式如下:代码示例:a =...
2019-12-18 21:05:12
12412
3
原创 论文笔记:Semantic Bottleneck Scene Generation
论文:《Semantic Bottleneck Scene Generation》(University of California, Berkeley;Google Research, Brain Team)论文地址:https://arxiv.org/pdf/1911.11357代码地址:https://github.com/azadis/SB-GAN(目前源代码还未公开)P...
2019-12-16 21:53:29
322
原创 CUDA错误:cuDNN error: CUDNN_STATUS_NOT_INITIALIZED与CUDA error: device-side assert triggered
在运行pytorch模型进行训练时,CUDA报错:"/pytorch/aten/src/THC/THCTensorScatterGather.cu:188: void THCudaTensor_scatterFillKernel(TensorInfo<Real, IndexType>, TensorInfo<long, IndexType>, Real, int, I...
2019-11-25 16:01:18
7232
2
原创 Python中保存文本数据的open函数
Python中的open函数可以打开并保存文本数据,其函数的使用格式如下:file_obj = open('./example.txt', 'a+')# 第一个参数 './example.txt' 是要打开并会写入数据的txt文本文件# 第二个参数 'a+' 是可选的参数,常用的有 'w', 'w+', 'r', 'r+', 'a+',# 需要注意的是,'w', 'w+', 'r', ...
2019-11-25 13:55:38
2808
1
原创 Pytorch框架读取数据,训练模型,测试模型的基本流程
Part one:读取数据以图像压缩模型为例,输入数据为图像数据,假设图像数据集是PNG格式的图片。image_extentions = ['.png', '.PNG', '.jpg', '.JPG']class My_Dataset(Dataset): def __init__(self, image_root, transform=None): supe...
2019-11-12 20:02:24
1217
1
原创 Pytorch中针对不同层的weight和bias设置不同的学习率
在训练模型时,有时候依据需求需要对模型的不同层(比如convolutional layer, linear layer等)或者不同层的weght和bias设置不同的学习率,针对这个问题,我们有以下几种方式解决:以5层卷积的模型为例:class Net5(nn.Module): def __init__(self): super(Net5, self).__init...
2019-10-01 18:27:49
4085
原创 Shell脚本中循环的使用(for和while部分)
part1:for 循环的实现例如一个简单输出1-9的循环方式1:类似于C语言的for循环#C语音风格for((i=1;i<10;i++))do echo "the current number is $i"doneecho "task is done!"方式2: 类似于python语言中的for循环#python语音风格for i in {1.....
2018-12-15 23:56:49
379
原创 Ubuntu系统配置Caffe-SSD的CPU版本环境
在配置caffe-ssd的CPU版本时,遇到很多坑,查阅了相关资料,并结合自己实际的配置过程,梳理出现在的这个流程,对于初次接触Caffe的CPU版本编译的朋友或许有帮助。anaconda下载地址:清华镜像https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/caffe下载地址:https://github.com/weiliu89/c...
2018-08-20 13:21:08
854
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人