简介:文生图模型生成中文时经常出现“轮廓像、细节崩”的问题,根因不仅是生成能力不足,还在于评估方式把汉字当成黑箱。本文从汉字构型、OCR评分缺陷、错误粒度反馈等角度拆解问题,并给出一套面向中文渲染质量优化的技术思路,适合关注多模态生成、强化学习评测与中文场景落地的开发者阅读。
在很多文生图任务里,模型已经能生成带有中文元素的海报、封面、菜单或界面稿。远看排版合理,近看却频繁出现笔画缺失、偏旁错位、结构挤压等问题。尤其是“尬”“赢”“囊”“鬱”这类多部件汉字,几乎成为重灾区。
一种常见归因是生成模型能力不足。但更深层的问题在于:训练后期用强化学习优化图像质量时,负责打分的“裁判”本身就没有正确理解汉字结构。模型不知道错在哪里,只能反复试错,最终仍然难以形成稳定的中文书写能力。
因此,要提升文生图中的中文渲染质量,不能只增加数据或扩大模型规模,还需要重新审视评价信号的质量与粒度。
目前不少文生图流程会引入光学字符识别能力充当质量裁判。其逻辑可以抽象为:
score = 1 if ocr_text == target_text else 0
这种评分方式对英文相对友好。英文字母数量有限,字符线性排列,识别结果与目标文本逐字符对齐即可。但汉字是二维构型系统,偏旁、部件、位置关系共同决定一个字是否成立。
例如“想”由“相”与“心”上下组合,“相”又由“木”与“目”左右组合。如果生成结果中“目”多出一横,或者“心”被压成怪异形状,OCR可能仍然识别成“想”,也可能识别成“相”“箱”“厢”等形近字,甚至直接返回空结果。
无论哪种情况,最终分数都可能退化为二值信号:
这种“非黑即白”的评分方式丢失了大量中间信息。模型无法感知“只错一笔”和“完全乱掉”之间的差异,也就难以形成渐进式优化路径。
汉字可以被视为一种结构化符号系统。其构型单元通常包括:
空间关系常见类型包括左右、上下、左中右、上中下、半包围、全包围、品字形等。这种结构决定了一个汉字错误可能存在多个层级:
现有基于整字识别的裁判通常只能覆盖第 4 类严重错误。前 3 类错误即使存在,也可能被识别模型“猜对”,产生假阳性评分。更麻烦的是,一些语言能力较强的多模态模型会利用上下文进行纠错式理解。
例如画面中写错了一个字,但整句内容是常见表达,多模态模型可能根据语境“脑补”出正确字,给出高分。这类评分看似准确,实则掩盖了真实渲染问题。
更合理的评分机制应当具备诊断能力,而不是只输出一个二元结果。可以从以下维度切入。
对目标汉字进行结构分解,再逐部件比对生成内容。以“尬”为例,可拆为“尢”与“介”的左右组合。评分流程可以设计为:
target_parts = split_glyph("尬")generated_parts = detect_parts(image)score = similarity(target_parts, generated_parts)
这样模型就能获得更细粒度的反馈:是右侧“介”写错,还是左侧“尢”缺失,而不再只是“整字不对”。
即使部件齐全,空间比例也可能有问题。例如“想”的上半部分“相”被拉得过高,“心”被压缩成一条线,虽然可识别,但视觉质量不合格。可以引入结构热力图或部件包围框评估部件间比例是否协调。
对于关键横竖撇捺,使用笔画骨架提取或边缘连续性分析判断是否存在断裂、粘连或异常抖动。这类信号可以辅助模型理解“字形是否稳定”。
在评分流程中增加结构校验层,不依赖语言理解,而是仅依据字形几何信息判断是否与目标字一致。这样可以降低多模态模型“靠语境猜对”的概率。
对于希望在文生图产品中改善中文渲染效果的团队,可以考虑构建“多粒度中文字形评分器”,替代或补强传统OCR评分。整体流程如下:
生成图像↓文本区域定位↓目标字切分↓字形结构拆解↓部件级比对↓结构关系与比例评分↓综合质量分(0~1)↓用于强化学习奖励信号
该流程的核心不是识别“这是什么字”,而是回答“这个字写得对不对、差多少、哪里差”。这种做法更接近教师批改作文,而不是自动阅卷机只给对错。
在训练阶段,综合质量分可以作为连续奖励。例如:
reward = 0.35 # 部件存在部分错误,但结构基本可辨reward = 0.68 # 部件齐全,仅比例轻微偏差reward = 0.91 # 字形正确,视觉稳定
通过连续奖励,模型能够在强化学习中逐步向更高质量字形收敛,而不是在 0/1 奖励中反复震荡。
细粒度评分减少了大量“假阳性”和“假阴性”。即使字形尚未完全正确,只要结构有改善,也能获得正向反馈。这有助于模型在长尾汉字上保持学习动力。
当评分器能够区分“部件缺失”和“比例失调”时,生成策略也可针对性调整。例如在提示词或条件控制中加入结构约束,或为复杂汉字增加后处理校验。
在中文海报、菜单、教学卡片、界面设计等场景中,用户不仅关心文字能否被识别,更关心字形是否规范。结构级评分更贴近这些真实质量要求。
文生图中文字渲染的瓶颈,不只是模型不会画,而是评价系统不会看。把汉字当成不可拆分的整体进行识别评分,会让大量结构错误被掩盖,也会让模型失去渐进优化的方向。
更合理的方式是将汉字拆开看:看部件、看位置、看比例、看笔画。通过构建多粒度结构评分器,可以为文生图模型提供更高质量的训练反馈,让中文渲染从“偶尔蒙对”走向“稳定写对”。
对于关注中文场景文生图应用的开发者来说,这类工作不仅是算法优化,更是评价体系的重建。只有评价方式与汉字构型规律一致,生成质量才能真正向上走。