《【AIGC实战】Python+SDXL批量生成“英歌舞树莓香草布丁”IP,附保持角色一致性的代码逻辑》

大家好,我是小江。继上一期的猫咪英歌舞多样化冰淇淋蛋糕红桃粿咖啡后,今天继续更新「潮汕国潮甜品IP」系列新作------英歌舞树莓香草布丁。

很多粉丝问我:"小江,你生成的英歌舞Q版人物形象每次都统一,甜品换款式但IP角色不崩,是怎么做到的?难道每次都靠碰运气抽图?"

其实做商业IP设计,角色稳定性大于画面美感。今天这篇继续分享底层自动化逻辑,用 Python + SDXL + ControlNet,把文创甜品创意,变成可批量复用的生产力方案。

看这张图:Q版英歌舞小人立牌悬浮在香草布丁上方,杯顶点缀新鲜树莓、蓝莓,微缩潮汕海岛沙盘场景,星空背景,金币、小厝、椰树元素点缀。这不只是一张效果图,是一套可以交给烘焙店落地的完整甜品文创概念。

为了实现「英歌舞人物形象固定不变,甜品载体自由更换」,我编写Python脚本,通过API调用Stable Diffusion WebUI,固定seed、Lora、ControlNet参数,保证IP角色跨产品不崩坏。

import requests

import json

import base64

from PIL import Image

from io import BytesIO

定义批量生成的配置

核心:固定seed和controlnet参数,保证英歌舞IP形象不崩坏

BATCH_CONFIG = {

"model": "sdxl_chaoshan_v1.safetensors", # 微调潮汕风格SDXL模型

"lora": "yingge_dance_ip.safetensors", # 英歌舞Q版人物LoRA

"controlnet": "openpose_character.json", #锁定人物姿态五官

#提示词工程,强化甜品与国潮细节

"prompts": [

"(masterpiece), cute Q version yingge dance character sticker, floating above vanilla pudding cup, fresh raspberry and blueberry, mini chaoshan island scene, starry sky background, gold ancient coins, small teochew old house, coconut tree, glossy clay texture, 8k, cinematic lighting",

"(masterpiece), close-up shot of vanilla pudding, smooth cream texture, bright red raspberry topping, yingge totem pattern, food commercial photography, clean lighting, dessert packaging concept"

],

#关键参数:固定Seed锁定IP角色一致性

"seed": 1024,

"cfg_scale": 7.0,

"steps": 30

}

def generate_batch(config):

"""

批量生成函数:循环调用API,自动保存不同变体

"""

url = "http://127.0.0.1:7860/sdapi/v1/txt2img"

for i, prompt in enumerate(config'prompts'):

payload = {

"prompt": prompt,

"negative_prompt": "bad anatomy, extra limbs, ugly, blurry, deformed",

"seed": config'seed' + i, #种子递增,小幅变化,主体IP不变

"steps": config'steps',

"cfg_scale": config'cfg_scale',

#这里可追加ControlNet参数配置

}

response = requests.post(url, json=payload)

if response.status_code == 200:

r = response.json()

#解码并保存图片

image_data = base64.b64decode(r'images'0)

image = Image.open(BytesIO(image_data))

image.save(f"output/pudding_yingge_{i+1}.png")

print(f"Image {i+1} generated successfully!")

if name == "main":

generate_batch(BATCH_CONFIG)

相关推荐
const_qiu1 小时前
第四章 06:4.6 统一入口 —— analyze() 能力收束
java·人工智能
闻缺陷则喜何志丹1 小时前
【C++特性及类库】多线程
开发语言·c++·多线程·语言特性·系统库
硅谷秋水1 小时前
DynaHarness 方法总结
人工智能·机器学习·语言模型·机器人
TK泰妞1 小时前
跨境短视频真正难在哪?一套从找参考到批量测试的 AI 工作流
大数据·人工智能
溪语流沙1 小时前
【Web全栈进阶】文件上传与图片展示:早报站的第一张图片
前端·vue.js·python·fastapi
川石课堂软件测试1 小时前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
m0_622023531 小时前
产业资本运作之金融结构重塑产业生态
人工智能·深度学习·金融
dtq04241 小时前
C++3 - 分支语句if和string变量
开发语言·c++·学习
jimy11 小时前
c++类成员访问只看静态类型
开发语言·c++