背景

其实在过往我们生活的世界里,当人们需要获取信息的时候,更多地强调的是信息的检索和遍历,意味着去已经存在的物品中找到自己合适的。在我看来这是一种很低级的生活形态,比如我的意识中有一个某种图案的杯子,想要它,只能打开淘宝根据标签去找已经设计好的款式有没有相近的,而不能直接根据我的想法自动生成一个我需要的杯子。

又比如,我想要一张猫正在喝水的照片,只能去搜索引擎里去根据关键词搜索已经存在的猫喝水的照片,而不是自动生成一张符合我要求的照片。随着人工智能的升级,这种低级的信息获取方式一定会淘汰。

今天就介绍一种深度学习方法,如何根据文字自动生成图片。先来看下效果:

输入文本:

sky is above the grass, man standing on the grass

生成的图片,是不是有点神奇:

详细流程

关于具体的算法细节可以看下这个论文:“Image Generation from Scene Graphs”

1.下载代码

代码可以在Github找到: https://github.com/google/sg2im?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more
需要把sgim文件夹复制到scripts文件夹下面:

2.安装需要的第三方库

建议用python3以上版本,在文件夹下执行

sudo pip3 install -r requirements.txt

3.下载模型

首先自行安装好wget,然后在代码目录下执行:

bash scripts/download_models.sh

4.创建图片

首先,要先自己搞个描述脚本,这个脚本需要描述生成图片中的对象以及对象间的位置关系。比如以下脚本(看过《机器学习实践应用》的同学是不是会眼熟,有点像里面知识图谱的内容):

[
{
"objects": ["car", "street", "line", "sky"],
"relationships": [
[0, "on", 1],
[2, "on", 1],
[3, "above", 1]
]
}
]

描述的是car在street的上面,line在street的上面,sky也在street上面。然后在代码的根目录下执行以下代码(代码中的括号内容是注释,执行前需要去掉):

python3 scripts/run_model.py(预测脚本) --checkpoint sg2im-models/vg128.pt(下载好的模型所在地址) --scene_graphs aohai.json(上面写的脚本) --output_dir outputs(图片输出路径)

最终生成的图片效果:

总结

是不是很好玩,可以自己任意添加描述脚本,生成自己想要的图片,是不是非常酷。目前来看像素还比较低,希望以后该项目可以继续更新,可以生成更多高清大图。

机器学习根据文字生成图片教程(附python代码)相关推荐

  1. python重点知识归纳_一文了解机器学习知识点及其算法(附python代码)

    一文了解机器学习知识点及其算法(附python代码) 来源:数据城堡 时间:2016-09-09 14:05:50 作者: 机器学习发展到现在,已经形成较为完善的知识体系,同时大量的数据科学家的研究成 ...

  2. bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)

    1 引言 多层神经网络,Multiple-layers Perceptron (MLP),又被称为多层感知机,是机器学习中深度学习的典型算法.关于多层神经网络的算法原理,我们在Stata和R实现的文章 ...

  3. 【推荐收藏】机器学习12种回归评价指标(附Python代码)

    你是否曾经遇到各种评价指标而不知道含义?或者不知道如何使用Numpy进行计算? 在本文我们将介绍常见的回归评价指标,并包含公式和Numpy计算代码. 文章目录 技术提升 Mean Absolute E ...

  4. 机器学习中的损失函数(附python代码)

    本文将深入研究hinge损失.logistic损失和二分类损失背后的概念和原理,并在MATLAB上实现感知器算法,并看看如何根据损失函数来选择最佳分类器. 在本文的最后,你将知道如何使用感知器进行分类 ...

  5. 教程 | 理解和实现自然语言处理终极指南(附Python代码)

     教程 | 理解和实现自然语言处理终极指南(附Python代码) 时间 2017-02-16 14:41:39 机器之心 原文  http://www.jiqizhixin.com/article ...

  6. 机器学习系列(12)_XGBoost参数调优完全指南(附Python代码)

    机器学习系列(12)_XGBoost参数调优完全指南(附Python代码) 原文链接:http://blog.csdn.net/han_xiaoyang/article/details/5266539 ...

  7. 10 种机器学习算法的要点(附 Python 和 R 代码)(转载)

    10 种机器学习算法的要点(附 Python 和 R 代码)(转载) from:https://zhuanlan.zhihu.com/p/25273698 前言 谷歌董事长施密特曾说过:虽然谷歌的无人 ...

  8. XGBoost参数调优完全指南(附Python代码)

    XGBoost参数调优完全指南(附Python代码) 译注:文内提供的代码和运行结果有一定差异,可以从这里下载完整代码对照参考.另外,我自己跟着教程做的时候,发现我的库无法解析字符串类型的特征,所以只 ...

  9. python随机森林变量重要性_推荐 :一文读懂随机森林的解释和实现(附python代码)...

    原标题:推荐 :一文读懂随机森林的解释和实现(附python代码) 作者:WilliamKoehrsen:翻译:和中华:校对:李润嘉 本文约6000字,建议阅读15分钟. 本文从单棵决策树讲起,然后逐 ...

  10. 【仿真】Carla之收集数据快速教程 (附完整代码)

    收集过程可视化展示,随后进入正文: 参考与前言 看到仿真群对这类任务下(用carla收集数据然后再做训练等) 需求量大,顺手马上写一个好了,首先收集数据需要考虑清楚: 收集什么数据,需要什么样的数据格 ...

最新文章

  1. access oracle sql语句,在 Access 中使用 SQL 建索引
  2. CDH5离线安装手册
  3. C++中函数调用操作符的重载
  4. mxnet基础到提高(6)--梯度,反馈与标准化(归一化)
  5. 异步服务_微服务全链路异步化实践
  6. java jdbc封装_JDBC封装-Java(新手)
  7. awesome python 中文版 相见恨晚!(pythonNB的第三方资源库)
  8. python pip 重新安装mysql_解决Ubuntu pip 安装 mysql-python包出错的问题
  9. wlan 网速测试软件,WiFi大师网速测试
  10. 031. 静以修身,俭以养德,非淡泊无以明志,非宁静无以致远。
  11. 华三交换机 level 详解
  12. 【技巧】我是如何 搜索 到想要的信息的
  13. 嵌入式Linux(5):驱动开发网络调试驱动设备的Linux系统移植
  14. win10 如何开启guest
  15. pythonifelse简化_简化“if…elif..else”条件
  16. Bash中的Date命令
  17. 文章分类标签数据库设计
  18. 嵌入式linux系统-Kernel串口2做交互终端
  19. RGB图像转换为BGR
  20. 视频教程-微信小程序开发【初级篇 / 附案例】-微信开发

热门文章

  1. 露天停车场的matlab代码,室外停车场设计规范 · 干货
  2. LPC1788启动代码分析
  3. ldaptemplate 分页_分页机皮带跑偏调整方法
  4. 使用md5对文件去重
  5. 最小二乘支持向量机(基于MATLAB)
  6. linux添加软件源命令,Linux 添加源
  7. 计算机组成原理中原码一位乘法
  8. win7下强制结束进程的cmd命令
  9. 二总线芯片RF601
  10. 天轰穿典型三层架构留言本9级视频教程