一个专注于计算机编程和硬件学习的博客主
torch.cuda.FloatTensor 与 torch.FloatTensor(torch.Tensor)--CPU和GPU上的数据类型torch.cuda.FloatTensor 与torch.FloatTensor Pytorch中的tensor又包括CPU上的数据类型和GPU上的数据类型,一般GPU上的Tensor是CPU上的Tensor加cuda()函数得到的。一般系统默认是torch.FloatTensor类型(即CPU上的数据类型)。例如data = torch.Tensor(2,3)是一个2*3的张量,类型为FloatTensor; data.cuda()就转为GPU的张量类型,torch.cuda.FloatTensor类型。torch.Tensor与torch.tensor torch.Tensor:torch.Tensor()是Python类,更明确的说,是默认张量类类型torch.FloatTensor()的别名,torch.Tensor([1,2]) 会调用Tensor类的构造函数__init__,生成单一精度浮点类的张量。torch.tensor():
anchor机制讲解什么是anchor boxesanchor boxes是一组提前预定义的边框,这些框的宽高和数据集中目标物体的宽高大体是一致的,换句话说,数据集中的绝绝大多数物体都能找到与其大小一致的anchor box。举例来说,如果数据集中包含苹果、猫,那么这组anchor boxes中就需要有和苹果、猫大小相仿的边框。为了尽可能多的覆盖数据集中可能出现的目标推的宽高,这些边框具有不同的宽高比(aspect ratio)和尺度(scale)。边框可以反应一个物体的大致信息,边框的位置反应物体的大致位置,宽高比反应物体的身材比例,尺度反应物体的大小。为什么需要anchor boxes其实,物体检测方法是非常直观的,就是在图片上,截一小块,检测这一小块包不包含物体,如果包含物体,该物体的位置就是刚刚截取的这个小块的位置,同时再预测一下它的类别是什么。那这种检测方法和anchor box又有什么关系呢? 其实,刚刚截取的这个小块就是一个anchor box。往往,图片上的每一处位置都有可能出现目标物体,并且目标的大小是不确定的。那有什么办法能检出所有的物体呢?最容易想到的办法就是,以
Ubuntu 20 安装 PgSQL安装更新源sudo apt update安装 postgresqlsudo apt install postgresql启动 postgresqlsudo /etc/init.d/postgresql start安装postgresql时会自动创建一个账号 postgres 进入sql时需要先切换到postgres账号才可以使用用 postgres 用户登录sudo -u postgres psql使用 \q 命令退出控制台(也可以直接按ctrl+D)\q配置远程连接调整 postgresql.conf 文件cd /etc/postgresql/12/main/ 我装的是12 所以这块是12sudo nano postgresql.conf将 listen_addresses 项取消注释,并将值调整为 '*' ,如下:#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #----
go和gin开发环境安装安装go下载安装包:Go下载 - Go语言中文网 - Golang中文社区 (studygolang.com)根据自己电脑系统下载 注意:下载 Windows 版本的Go语言开发包时尽量选择 MSI 格式,因为它可以直接安装到系统,不需要额外的操作。一路默认下一步就好。注:尽量不要占用C盘安装,例如我的安装路径 D:\GOGo 开发包的安装目录的功能及说明目录名说明api每个版本的 api 变更差异bingo 源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt)doc英文版的 Go 文档lib引用的一些库文件misc杂项用途的文件,例如 Android 平台的编译、git 的提交钩子等pkgWindows 平台编译好的中间文件src标准库的源码test测试用例配置运行环境需要删除自动添加的gopath和goroot!配置GOROOT在系统变量中新建一个变量变量名:GOROOT 变量值:D:\GO安装路径配置GOPATH-开发工程目录在系统变量中新建一个变量变量名:GOPATH 变量值:E:\go_workspace路径配置path环境点
论文题目(英)SCAM! Transferring humans between images with Semantic Cross Attention Modulation论文题目(中)SCAM! 基于语义交叉注意调制的图像间人转移发表时间22-10-10论文方向给定一个源和一个目标主体,主体转移的思想是让源主体无缝地替换目标图像中的目标主体。目标图像应该保持相同的背景,相同的主体和对象之间的相互作用,和相同的空间配置,以考虑可能的遮挡。论文创新点1. 提出了语义交叉注意(SCA),它在一组潜在的(每个都链接到一个语义区域)和一个图像特征图之间执行注意。 SCA 限制了注意力,例如潜在的只关注图像特征图上与相关语义标签相对应的区域。2. 引入了 SAT 操作和编码器(Semantic Attention Transformer),它依赖于交叉注意力来决定在图像中收集哪些信息以及哪些潜在信息,从而允许对更丰富的信息进行编码。 3. 提出SCAM-Generator(以 SCAM 命名),它使用 SCAM-Operation 调制特征图,允许每个像素关注语义上有意义的潜在。论文方法
SCAM! Transferring humans between images with Semantic Cross Attention ModulationIntroduction作者首先用编码器E对目标对象进行编码,得到目标潜码。然后,我们对姿态和背景引用的背景和语义掩码进行编码。最后,生成器G合成一个图像,在这个图像中,被摄对象被转换成所需的背景和姿态。 给定一个源和一个目标主体,主体转移的思想是让源主体无缝地替换目标图像中的目标主体。目标图像应该保持相同的背景,相同的主体和对象之间的相互作用,和相同的空间配置,以考虑可能的遮挡。图1说明了这一点。注意,与脸、建筑或景观相比,人体具有高度形态多样性的延展性,因此很难建模。 现如今大多数方法要么专注于姿态迁移,姿态会发生变化,要么专注于风格迁移,姿态保持固定,但主体的风格会发生变化。它们是有限的,因为它们:限制多:它们只在统一的背景下工作,在复杂的背景下就会失败。花费多:他们训练比较困难或者每个人训练一个模型。主体转移改变了主体的姿势和风格/身份。因此,一个成功的系统在姿势和风格转移上都是解耦的,
一只胖橘