前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【AI绘画】Midjourney进阶:中心点构图详解

【AI绘画】Midjourney进阶:中心点构图详解

作者头像
CSDN-Z
发布2024-10-17 18:40:24
900
发布2024-10-17 18:40:24
举报
文章被收录于专栏:AIGC

💯前言

【AI绘画】Midjourney进阶:对称构图详解 https://blog.csdn.net/2201_75539691?type=blog

【AI绘画】Midjourney进阶:三分线构图详解 https://blog.csdn.net/2201_75539691?type=blog

  • 在之前的文章中,我们深入探讨了构图的概念及其在Midjourney中的重要性,重点介绍了对称构图与三分线构图的特点和应用。通过这些基础构图方法,我们学习了如何利用视觉平衡与比例来增强画面的表现力。而在本篇中,我们将进一步聚焦于中心点构图,探索如何通过这一简洁而强烈的构图方式来突出画面的主体,让观众的目光在第一时间聚焦于视觉中心。 Midjourney官方使用手册

💯什么是构图

构图是摄影、绘画、设计等视觉艺术中的一个基本概念。它指的是艺术家如何在二维平面上安排元素,包括形状、线条、色彩、质地、空间等,以达到一定的视觉效果和艺术表达。


为什么Midjourney要使用构图

  • 简单来说,Midjourney有构图词画面质量更高
  • 构图的目标是引导观众的视线,突出主题,增加视觉吸引I力,以及传达艺术家的观点或情感。
  • 在Midjourney中使用构图是非常重要的,有两个方向可以解释其必要性:非共性和共性。
代码语言:txt
复制
-  从非共性的角度来看,在Midjourney中使用构图相关的提示词可以显著提升生成画面的质量。这是因为Midjourney的模型在训练时,不仅使用了图像,还结合了与这些图像相关的提示词。通常来说,这些图像来源于专业摄影或高质量渠道,具有较高的视觉标准。当模型学习了这些图片与提示词之间的关联后,用户在生成图像时如果使用了构图相关的提示词,系统会优先选择类似图库中的优质素材,从而生成更为精致的画面。因此,通过使用构图提示词,可以明显地提高生成图像的质量。
代码语言:txt
复制
-  从共性的角度来说,构图本身就是一种极为有效的手段,可以用于引导观众的视线、突出画面的主题、增强视觉吸引力,并传递创作者的情感和观点。构图所带来的这些视觉上的提升效果,是不受具体工具限制的,无论是在摄影、绘画还是AI生成图像中都是通用的。因此,当在Midjourney中使用构图提示词时,画面的质量提升几乎是必然的结果。这些道理或许听起来有些抽象,但在实际操作和练习时,大家会切实地感受到构图带来的效果提升。

💯中心点构图

中心点的基本原则是将画面的主体或重要元素放在画面的中心位置。

  • 中心点构图的基本原理是将画面的主体或重要元素放置在画面的中心位置。这种构图方式能够有效地突出画面的主要部分,使观众的注意力立即集中到核心元素上。

中心点构图的特点

  1. 突出主体 由于主体位于画面的中心位置,这种构图方式能立即吸引观众的注意力,确保观众的视线集中在核心部分。
  1. 较为平淡 然而,主体位于中心有时会让画面显得平淡。因此,需要通过其他视觉元素进行衬托和搭配,才能使画面更具层次感和吸引力。例如,中心构图中的人物,如果周围有恰当的背景或细节作为衬托,画面效果会显得更加丰富和有趣。

使用场景

  1. 人像摄影
代码语言:txt
复制
- 在人像图中,中心点构图能够有效突出人物的面部表情和整体特点,使得观众的视线集中在被摄人物的核心部分。
  1. 静物摄影
代码语言:txt
复制
- 在静物图中,这种构图方式可以很好地突出静物的细节和特征,吸引观众对静物的质感和形状进行深入观察。
  1. 风景摄影
代码语言:txt
复制
- 在风景图中,中心点构图有助于突出风景中的主要元素,使画面的主题更加明确,便于观众理解景象的重点所在。
  • 相比之下,在建筑摄影中较少使用中心点构图,因为建筑通常需要表现结构的整体感和空间感,这样的需求更适合对称构图或者其他更加灵活的构图方式。

提示词书写技巧

  • 在为Midjourney生成图像时,使用提示词Center Point Composition能够引导AI在画面中将主体置于中心位置。这种构图方式简洁明了,能有效吸引观众的目光集中于画面最重要的部分。无论是在描绘人物、静物还是风景时,使用Center Point Composition可以强调主体,确保其成为视觉焦点。在编写提示词时,可以配合其他元素描述主体的特点、光线效果和背景氛围,以提升画面的丰富性和视觉吸引力。

测试

原图:

代码语言:javascript
复制
lavish dining table set with a variety of gourmet dishes, wine glasses, candles, and floral centerpiece, warm ambient light, luxurious atmosphere, 8k, ultra details
  • 在原图中,场景呈现出丰富且复杂的布局,整张桌子上布满了各种菜肴、蜡烛、酒杯和花卉。由于没有指定中心点构图,观众的视线会在画面中四处游走,试图捕捉每一个细节。场景的焦点分散,整体氛围显得热闹而丰富,但也容易让观众的视觉注意力被众多元素所分散,缺乏明确的视觉中心。

原图 + Center Point Composition:

代码语言:javascript
复制
lavish dining table with a single ornate dish as the centerpiece, Center Point Composition, surrounded by wine glasses and candles, warm ambient light, luxurious atmosphere, 8k, ultra details
  • 在加上Center Point Composition的构图方式后,画面明显不同。场景的焦点被集中于中心的一个装饰精美的主菜或盘子,其周围被酒杯和蜡烛围绕,这种构图使得中心的元素变得尤为突出,其他元素则起到衬托的作用。这样一来,观众的视线被自然引导到中心的主体上,整个画面更具层次感和聚焦效果。中心构图的运用为整个场景增添了一种庄重而精致的氛围,相较于原图,视觉传达更加明确和有力。

💯小结

本篇文章深入探讨了在Midjourney中使用不同构图方式的重要性,尤其是如何通过中心点构图来聚焦画面主体、增强视觉传达效果。通过前期对对称构图和三分线构图的解析,我们掌握了基础构图方法对视觉表现力的提升作用。本篇则进一步阐述了中心点构图的应用场景和特点——这种构图方式简单而有力,能迅速引导观众的视线聚焦到核心元素上。然而,为了避免画面过于单调,建议搭配背景或其他细节来丰富视觉效果。通过具体示例,我们看到中心点构图如何在风景、静物、人像等多种拍摄题材中发挥独特的效果。使用Midjourney提示词时,通过明确构图需求,可以生成更符合视觉预期的精致画面,为艺术创作带来更具针对性的表达方式。

  • AI绘画未来的发展将带来更丰富的创作可能性与个性化表达。在本文中,我们探讨了不同构图方式在Midjourney中的应用,它们不仅仅是技术手段,更是在视觉艺术中传达情感、故事和思想的重要工具。未来,随着AI模型的不断进化,AI绘画将不再仅仅是对图像的生成,而是艺术家与技术之间更深层次的协作。通过引入构图、色彩、光影等多维度的提示词,创作者能够更精确地定义自己的艺术意图,从而使生成图像更具艺术性和情感深度。

代码语言:javascript
复制
import torch, torchvision.transforms as transforms; from torchvision.models import vgg19; import torch.nn.functional as F; from PIL import Image; import matplotlib.pyplot as plt; class StyleTransferModel(torch.nn.Module): def __init__(self): super(StyleTransferModel, self).__init__(); self.vgg = vgg19(pretrained=True).features; for param in self.vgg.parameters(): param.requires_grad_(False); def forward(self, x): layers = {'0': 'conv1_1', '5': 'conv2_1', '10': 'conv3_1', '19': 'conv4_1', '21': 'conv4_2', '28': 'conv5_1'}; features = {}; for name, layer in self.vgg._modules.items(): x = layer(x); if name in layers: features[layers[name]] = x; return features; def load_image(img_path, max_size=400, shape=None): image = Image.open(img_path).convert('RGB'); if max(image.size) > max_size: size = max_size; else: size = max(image.size); if shape is not None: size = shape; in_transform = transforms.Compose([transforms.Resize((size, size)), transforms.ToTensor(), transforms.Normalize((0.485, 0.456, 0.406), (0.229, 0.224, 0.225))]); image = in_transform(image)[:3, :, :].unsqueeze(0); return image; def im_convert(tensor): image = tensor.to('cpu').clone().detach(); image = image.numpy().squeeze(); image = image.transpose(1, 2, 0); image = image * (0.229, 0.224, 0.225) + (0.485, 0.456, 0.406); image = image.clip(0, 1); return image; def gram_matrix(tensor): _, d, h, w = tensor.size(); tensor = tensor.view(d, h * w); gram = torch.mm(tensor, tensor.t()); return gram; content = load_image('content.jpg').to('cuda'); style = load_image('style.jpg', shape=content.shape[-2:]).to('cuda'); model = StyleTransferModel().to('cuda'); style_features = model(style); content_features = model(content); style_grams = {layer: gram_matrix(style_features[layer]) for layer in style_features}; target = content.clone().requires_grad_(True).to('cuda'); style_weights = {'conv1_1': 1.0, 'conv2_1': 0.8, 'conv3_1': 0.5, 'conv4_1': 0.3, 'conv5_1': 0.1}; content_weight = 1e4; style_weight = 1e2; optimizer = torch.optim.Adam([target], lr=0.003); for i in range(1, 3001): target_features = model(target); content_loss = F.mse_loss(target_features['conv4_2'], content_features['conv4_2']); style_loss = 0; for layer in style_weights: target_feature = target_features[layer]; target_gram = gram_matrix(target_feature); style_gram = style_grams[layer]; layer_style_loss = style_weights[layer] * F.mse_loss(target_gram, style_gram); b, c, h, w = target_feature.shape; style_loss += layer_style_loss / (c * h * w); total_loss = content_weight * content_loss + style_weight * style_loss; optimizer.zero_grad(); total_loss.backward(); optimizer.step(); if i % 500 == 0: print('Iteration {}, Total loss: {}'.format(i, total_loss.item())); plt.imshow(im_convert(target)); plt.axis('off'); plt.show()

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-10-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 💯前言
  • 💯什么是构图
    • 为什么Midjourney要使用构图
    • 💯中心点构图
      • 中心点构图的特点
        • 使用场景
          • 提示词书写技巧
            • 测试
            • 💯小结
            相关产品与服务
            大模型图像创作引擎
            大模型图像创作引擎是一款提供 AI 图像生成与处理能力的 API 技术服务,可以结合输入的文本或图像智能创作图像内容,具有更精美的绘图品质、更强大的中文理解能力、更多样的风格选择与更广泛的应用场景,为高质量的图像内容创作、内容运营提供技术支持。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档