图片拼接的几种方法

1. torch tensor 格式

from torchvision.utils import save_imageimg_train_list = torch.cat([image_s,image_r,im_G[0],fake_A,mask_s[:, :, 0],mask_r[:, :, 0]])result_path = self.save_path_dir+'/image'if not os.path.exists(result_path):os.makedirs(result_path)save_image(self.de_norm(img_train_list),os.path.join(result_path,f'{self.e}_{self.i}_fake.jpg'))

2. Image 格式

图片维Image格式

w = image_real.widthh = image_real.heightnew_img = Image.new('RGB',(w*4,h))loc = [ (i) * w for i in range(4)]new_img.paste(source,(loc[0],0))new_img.paste(reference,(loc[1],0))new_img.paste(image_real,(loc[2],0))new_img.paste(image_fake,(loc[3],0))new_img.save(save_path+'{}_{}_source.jpg'.format(source_path.name.split('.')[0],reference_path.name.split('.')[0]))

3. img图片 格式

import cv2
from pylab import * img1 = cv2.imread('logo.jpg',cv2.IMREAD_COLOR)
img2 = cv2.imread('logo.jpg',cv2.IMREAD_GRAYSCALE)
img3 = cv2.imread('logo.jpg',cv2.IMREAD_UNCHANGED)
img4 = cv2.imread('logo.jpg')htitch= np.hstack((img1, img3,img4))   # 横向排列
vtitch = np.vstack((img1, img3))    # 纵向排列
cv2.imshow("test1",htitch)
cv2.imshow("test2",vtitch)cv2.waitKey(0)
cv2.destroyAllWindows()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/535170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pytorch 各种模块:降低学习率,

1.训练过程中学习率衰减 if (self.e1) > (self.num_epochs - self.num_epochs_decay):g_lr - (self.g_lr / float(self.num_epochs_decay))d_lr - (self.d_lr / float(self.num_epochs_decay))self.update_lr(g_lr, d_lr)print(Decay learning rate to g_lr: {}, d_lr:{}..…

cudnn.deterministic = True 固定随机种子

随机数种子seed确定时,模型的训练结果将始终保持一致。 随机数种子seed确定时使用相同的网络结构,跑出来的效果完全不同,用的学习率,迭代次数,batch size 都是一样。 torch.backends.cudnn.deterministic是啥&#x…

torch.backends.cudnn.benchmark 加速训练

设置 torch.backends.cudnn.benchmarkTrue 将会让程序在开始时花费一点额外时间,为整个网络的每个卷积层搜索最适合它的卷积实现算法,进而实现网络的加速。适用场景是网络结构固定(不是动态变化的),网络的输入形状&…

各种损失损失函数的使用场景和使用方法:KL散度

KL 散度的使用场景 KL散度( Kullback–Leibler divergence),又称相对熵,是描述两个概率分布 P 和 Q 差异的一种方法 torch.nn.functional.kl_div(input, target, size_averageNone, reduceNone, reductionmean) torch.nn.KLDivLoss(input, target, si…

RNN,LSTM,GRU的理解

RNN x 为当前状态下数据的输入, h 表示接收到的上一个节点的输入。 y为当前节点状态下的输出,而h′h^\primeh′为传递到下一个节点的输出. LSTM #定义网络 lstm nn.LSTM(input_size20,hidden_size50,num_layers2) #输入变量 input_data Variable(tor…

常用的loss函数,以及在训练中的使用

文章目录KL 散度L2 loss做标准化处理CElossCTCLossAdaptiveAvgPool2dKL 散度 算KL散度的时候要注意前后顺序以及加log import torhch.nn as nn d_loss nn.KLDivLoss(reductionreduction_kd)(F.log_softmax(y / T, dim1),F.softmax(teacher_scores / T, dim1)) * T * T蒸馏lo…

Shell 在训练模型的时候自动保存训练文件和模型到指定文件夹

在进行深度学习训练的过程中,往往会跑很多实验,这就导致有的实验设置会忘记或者记混淆,我们最好把train test model 的代码都copy一遍到指定文件夹中,这样后面检查也方便。 用shell指令保存文件 #!/bin/sh GRUB_CMDLINE_LINUX&qu…

Pytorch:数据并行和模型并行,解决训练过程中内存分配不均衡的问题

文章目录数据并行单机多卡训练,即并行训练。并行训练又分为数据并行 (Data Parallelism) 和模型并行两种。 数据并行指的是,多张 GPU 使用相同的模型副本,但是使用不同的数据批进行训练。而模型并行指的是,多张GPU 分别训练模型的…

DataParallel 和 DistributedDataParallel 的区别和使用方法

1.DataParallel DataParallel更易于使用(只需简单包装单GPU模型)。 model nn.DataParallel(model)它使用一个进程来计算模型参数,然后在每个批处理期间将分发到每个GPU,然后每个GPU计算各自的梯度,然后汇总到GPU0中…

torch.cuda.is_available(),torch.cuda.device_count(),torch.cuda.get_device_name(0)

torch.cuda.is_available() cuda是否可用; torch.cuda.device_count() 返回gpu数量; torch.cuda.get_device_name(0) 返回gpu名字,设备索引默认从0开始; torch.cuda.current_device() 返回当前设备索引;

windows, 放方向键设置为vim格式,autohotkey-windows

安装 Autohotkey https://www.autohotkey.com/download/ 设置快捷键 随便找个目录,鼠标右键新建一个autohotkey的脚本。 映射一个键——上左下右 经常打字的人都知道,我们编辑文本时要上下左右移动光标,难免要将手移到方向键再移回来打字。对我这样的懒癌后期患者,这简直不能…

window设置快捷键左右方向键

autohotkey-windows快捷键设置神器 使用方法 地址

Hbase数据模型及Hbase Shell

目录 1 数据模型 1.1 相关名词概念 1.2 模型分析 2 Hbase Shell操作 2.1 命名空间 2.2 表操作 2.2.1 创建表 2.2.2 更改表结构 2.2.3 表的其他操作 2.3 数据操作 2.3.1 添加数据(put) 2.3.2 删除数据(delete) 2.3.3 获取数据(get|scan) 3 过滤器 3.1 比较运算符…

非关型数据库之Hbase

目录 1 Hbase简介 1.1 初识Hbase 1.2 Hbase的特性 2 HDFS专项模块 2.1 HDFS的基本架构 2.1.1 HDFS各组件的功能: 2.2 HFDFS多种机制 2.2.1 分块机制 2.2.2 副本机制 2.2.3 容错机制 2.2.4 读写机制 3 Hbase组件及其功能 3.1 客户端 3.2 Zookeeper 3.3 …

MongoDB Shell操作

目录 1 数据库操作 2 集合操作 3 文档操作 3.1 插入文档(insert|insertOne|insertMany) 3.2插入、删除的循环操作 3.2 删除文档(remove|deleteOne|deleteMany) 3.3 更新文档(update|save) 3.4 查询文档(find) 4 游标 5 索引 6 聚合 1 数据库操作 当新创建的数据库里…

MongoDB副本集、分片集的伪分布式部署(保姆级教程)

目录 1 集群架构(概念篇) 1.1 MongoDB核心组件 1.2 主从复制 1.3 副本集 1.4 分片集 2 集群搭建 2.1 部署副本集(伪分布式) 2.2 分片集部署(伪分布式) 2.3 副本集与分片集区别 1 集群架构(概念篇) MongoDB有三种集群部署模式,分别是主从复制(Master-Slave)…

非关型数据库之MongoDB

目录 1 MongoDB简介 1.1 初识MongoDB 1.2 MongoDB与传统的关系型数据库的区别 1.3 MongoDB存储结构 1.4 BSON支持的数据类型 2 MongoDB Shell操作 3 MongoDB集群操作 1 MongoDB简介 1.1 初识MongoDB MongoDB来源自英文单词"Humongous”,译为“庞大的”…

【手把手 脑把脑】教会你使用idea基于MapReduce的统计数据分析(从问题分析到代码编写)

目录 1 编程前总分析 1.1 数据源 1.2 需要掌握的知识 1.2.1 Hadoop对比java的数据类型 1.2.2 MapReduce流程简介 1.3.3 MapReduce流程细分 2 编码阶段 2.1 导入依赖 2.2 mapper 2.3 reducer 2.4 main 1 编程前总分析 1.1 数据源 英语,李沐,85,男,20 数学,李沐,54,男…

【细节拉满】Hadoop课程设计项目,使用idea编写基于MapReduce的学生成绩分析系统(附带源码、项目文件下载地址)

目录 1 数据源(学生成绩.csv) 2 hadoop平台上传数据源 3 idea代码 3.1 工程框架 3.2 导入依赖 3.3 系统主入口(menu) 3.4 六个mapreduce 3.4.1 计算每门成绩的最高分、最低分、平均分(Mma) 3.4.2 计算每个学生的总分及平均成绩并进行排序(Sas) 3.4.3 统计所有学生的信…

【单位换算】存储单位(bit Byte KB MB GB TB PB EB ZB YB BB)时间单位(ms μs ns ps)长度单位(dm cm mm μm nm pm fm am zm ym)

存储单位 相邻单位相差2⁰,记忆时可以此类推 一字节等于八比特 1 Byte 8 bit 1KB 1024 B 2⁰ B 1MB 1024 KB 2⁰ B 1GB 1024 MB 2⁰ B 1TB 1024 GB 2⁴⁰ B 1PB 1024 TB 2⁵⁰ B 1EB 1024 PB 2⁶⁰ B 1ZB 1024 EB 2⁷⁰ B 1YB 1024 ZB 2⁸⁰ B 1B…