IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> Pix2PixHD数据处理+运行方法 -> 正文阅读

[人工智能]Pix2PixHD数据处理+运行方法

写在前面

项目需要,研究了一下Pix2PixHD的运行方法,这里对一些个人感觉难以理解的代码进行讲解,如果有写的不对的地方欢迎指正~

数据格式

这里以citycapes数据集为例,参考了这篇博客
语义图像:每个类别一种标签颜色,例如图片中的所有车的像素值都是26。citycapes的语义图像大小为[2048, 1024, 1]。
在这里插入图片描述
注意Pix2PixHD并没有直接使用这幅语义图像,而是使用的上面那副。
在这里插入图片描述
实例图像:同一类别的不同实例个体用的标签颜色也不一样,例如下面四辆车,用肉眼看是一个颜色,但是用opencv工具显示出来发现像素值还是有差别的,四辆车的像素值分别为26010、26005、26008、26003。这里之所以像素值大小为26010应该是用的16位存的,而不是0~255那种8位来存。
citycapes的实例图像大小为[2048, 1024, 1]。
注意需通过cv2.imread(path, cv2.IMREA_UNCHANGED)才能无损的读取到实例的uint图像数据。
在这里插入图片描述

数据处理

one-hot编码:citycapes一共有35类(34个类别+1个背景),作者将语义图片NCHW[1, 1, 2048, 1024]编码成one-hot格式[1, 35, 2048 ,1024],其中每一个通道代表一个类别,这里我们取出第26个通道[1, 1, 2048 ,1024]出来,发现这一个通道全是车子
在这里插入图片描述
边缘映射:作者将实例图像[1, 1, 2048 ,1024]转换为边缘图像[[1, 1, 2048 ,1024]],如何转换的论文里面有。
在这里插入图片描述
生成器输入:将one-hot编码[1, 35, 2048 ,1024]与边缘映射[1, 1, 2048 ,1024按通道维度拼接变为[1, 36, 2048 ,1024]送入生成器进行训练。

如何运行

如果你只有语义图像
python train.py --name 训练名字 --no_instance --label_nc 0 --resize_or_crop none --dataroot 数据集名字

如果你有语义图像+实例图片
python train.py --name 训练名字 --label_nc 类别数 --resize_or_crop none --dataroot 数据集名字

如果你想联合训练(先训练全局生成器再训练局部增强器)
首先执行:
python train.py --name 训练名字 --label_nc 类别数 --netG global --resize_or_crop none --dataroot 数据集名字
训练完后再执行:
python train.py --name 训练名字 --label_nc 类别数 --netG local --resize_or_crop none --dataroot 数据集名字 --load_pretrain 训练全局生成器网络保存路径

可视化代码

代码我放在这里
下面对各个文件简单介绍一下
get_edges.py:边缘映射,将实例图变为边缘图。在这里插入图片描述
get_onehot.py:one-hot编码,把语义图进行one-hot编码,每一通道是一个类别,一个35个类别,所以有35个通道。
在这里插入图片描述get_imgvalue.py:鼠标指在哪里现实哪里的像素值,把鼠标移到车子上可以看到车子的像素值大小为26000多。

写在后面

看论文固然重要,但是要更加深入的理解作者作者的思想,阅读和复现代码是少不了的。希望本文对大家学习Pix2PixHD有所帮助。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 22:31:54  更:2022-03-15 22:35:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/9 15:30:37-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码