根据文本描述生成图片不是梦!

ai的能力越来越强,之前认为是人类独有能力的领域,也在被ai不断的超越。创造性缺失是之前对ai的普遍性认知,死板、程序化是ai鲜明的特点,因此艺术创作普遍认为是ai不可替代的。

但好像这个认知被打破了,之前有新闻报道,完全不懂绘画的人,通过ai创作的画作拔得大赛头筹,引起了人们的普遍讨论。

对此事情,在此不做讨论,从这件事我们可以看到的是,ai逐渐拥有人类创造力,或者说逐渐的在模仿人类的创作力,但不管如何,ai在艺术上的创作能力是逐渐提升,这是不可否认的。

之前写过通过图像生成技术语音技术创造一个属于自己独一无二的“女朋友”,图像生成可以看做是ai创造性能力获取的前置能力

在前不久,百度发布了“一格”——一个让任何人都可以进行艺术创作的平台,生成自己的大片不是梦,简单的操作就可以生成自己的“梦中情画”

一格的使用需要提交审核,但基本是三五分钟通过,生成的图片可以发表到一格的画廊,或者提交审核后自己下载

在这里插入图片描述

这是我比较中意的自己生成的一个结果——荷塘月色

这比网络上各种“大师”的结果好太多了

在这里插入图片描述

近期看到百度通过paddlehua发布了新的一款图像生成技术——ernie_vilg。相比“一格”,ernie_vilg是更属于技术宅人员,可以通过搭建环境自行生成任意的图片
巨大的白色城堡
可爱的猫

环境搭建是非常简单的,通过百度提供的aistudio或者谷歌的colab都可以

import paddlehub as hub 
module = hub.Module(name="ernie_vilg") 
results = module.generate_image(text_prompts=["可爱的猫"])

在上述text_prompts后,写上自己对图片的描述,直接生成符合描述的图,一步到位。

如果不想自己搭建环境,也可以通过huaggingface的sapace空间进行体验,但生成速度比较感人

不论是百度之前的“一格”,还是paddlehub的ernie_vilg,都可以根据文本描述转图片,而文本生成图片最早可以追溯到迪斯尼的一篇论文,通过文本生成图片进而合成动画,随后有DELL、GPT-3、ERNIE等,都在尝试文本生成图片,效果都比较一般。

ai能力的不断增强,希望看到越来越多的惊喜~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
文本描述生成图片文本向量生成图片的主要区别在于输入的数据形式不同。文本描述生成图片的输入是自然语言文本,需要进行文本处理和自然语言理解,将文本转化为对应的图像。而文本向量生成图片的输入是已经处理好的文本向量,可以直接输入到生成器网络中生成对应的图像。 文本描述生成图片可以使用一些预训练的自然语言处理模型,例如 GPT、BERT 等,或者使用一些生成式模型,例如 GAN、VAE 等。在 PyTorch 中,可以使用 Transformers 库来调用预训练的自然语言处理模型,使用 PyTorch 的 nn.Module 实现生成式模型。示例代码如下: ```python import torch from transformers import GPT2Tokenizer, GPT2Model from PIL import Image class TextToImageDataset(Dataset): def __init__(self, text_dataset, image_size=256): self.text_dataset = text_dataset self.image_size = image_size self.tokenizer = GPT2Tokenizer.from_pretrained('gpt2') self.encoder = GPT2Model.from_pretrained('gpt2') self.generator = Generator() self.generator.load_state_dict(torch.load('generator.pth')) self.generator.eval() def text_to_image(self, text_data): # 将文本数据转化为对应的向量表示 inputs = self.tokenizer(text_data, return_tensors='pt') outputs = self.encoder(**inputs) text_vector = outputs.last_hidden_state.mean(dim=1).squeeze() # 使用生成器网络生成对应的图像 with torch.no_grad(): fake_image = self.generator(text_vector.unsqueeze(0)) fake_image = fake_image.squeeze().cpu() # 将生成的图像进行缩放、裁剪等处理 img = transforms.functional.to_pil_image(fake_image) img = transforms.functional.resize(img, (self.image_size, self.image_size)) img = transforms.functional.center_crop(img, (self.image_size, self.image_size)) return transforms.functional.to_tensor(img) ``` 文本向量生成图片主要使用生成式模型,例如 GAN、VAE 等。在 PyTorch 中,可以使用 nn.Module 实现生成器网络。示例代码如下: ```python import torch from torchvision.utils import save_image from PIL import Image class TextToImageDataset(Dataset): def __init__(self, text_dataset, image_size=256): self.text_dataset = text_dataset self.image_size = image_size self.generator = Generator() self.generator.load_state_dict(torch.load('generator.pth')) self.generator.eval() def text_to_image(self, text_vector): # 使用生成器网络生成对应的图像 with torch.no_grad(): fake_image = self.generator(text_vector.unsqueeze(0)) fake_image = fake_image.squeeze().cpu() # 将生成的图像进行缩放、裁剪等处理 img = transforms.functional.to_pil_image(fake_image) img = transforms.functional.resize(img, (self.image_size, self.image_size)) img = transforms.functional.center_crop(img, (self.image_size, self.image_size)) return transforms.functional.to_tensor(img) ``` Stable-Diffusion 是一个用于生成式模型的训练框架,主要用于训练基于扩散过程的生成式模型,例如 Diffusion Probabilistic Models(DPM)等。因此,Stable-Diffusion 属于文本向量生成图片的训练框架。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芝士AI吃鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值