← 返回 PaperDaily 视觉与图像

CMU等四校联手:可微分物理笔刷,让AI生成手写还能操控机器人直接写出来

想象一下,AI 不仅能模仿任何人的笔迹生成手写图片,还能把笔画轨迹直接发给机器人,让它拿着笔在纸上写出来——在线轨迹和离线图像向来是两条平行线,这篇来自 GIST、CMU、延世大学等机构的论文用一个六参数的可微分物理笔刷模型,硬是把它们捏成了同一件事。

CMU等四校联手:可微分物理笔刷,让AI生成手写还能操控机器人直接写出来
原论文信息如下:
论文标题:
Bridging Online and Offline Handwriting via Differentiable Physical Rendering
发表日期:
2026年08月
论文作者:
Seonmi Park, Seunghyun Shin, Vihaan Misra, Dongmin Shin, Ukcheol Shin, Jean Oh, Hae-Gon Jeon
发表单位:
GIST, CMU, Yonsei University, KENTECH
原文链接:
https://arxiv.org/pdf/2608.03198v1.pdf

手写生成的两个平行世界:在线轨迹与离线图像为何难以统一?

先聊一个生活里特别常见的场景。大家平时用平板或者手机写笔记、签字,系统实时记录下来的是一串带时间戳的坐标点序列,比如笔尖在某个时刻移动到哪个位置、是抬笔还是落笔——这就是在线手写数据,本质是一串运动轨迹,强调的是"怎么写"的过程。而另一类场景是扫描仪扫描出来的手写文档、或者朋友圈晒出来的手写卡片照片,这些是静态的像素图片,能看到纸张纹理、墨迹晕染、笔锋粗细这些丰富的视觉细节,但这张图背后是怎么一笔一画写出来的,完全看不出来——这就是离线手写图像。这两条技术路线各有拥趸:在线方法擅长捕捉动态结构和时序信息,但因为只有坐标序列,缺少笔触纹理、墨迹深浅这些细节,生成的"字"看起来像用细线画出来的骨架;离线方法能把纸上的质感和笔锋还原得很好,但完全丢掉了笔画顺序,机器拿到一张图也不知道该怎么"写"出来。
图1:在线与离线手写生成的统一框架
图1:在线与离线手写生成的统一框架
图2:在线手写与离线手写示意图
图2:在线手写与离线手写示意图
举个更直白的例子:在线手写像是学书法时看老师运笔,知道哪一笔先写、哪一笔后写、用力轻重怎么变化;离线手写则像是看一幅完成的书法作品挂在墙上,能感受到整体的美感和墨色的韵味,但看不出当初是怎么下笔的。这两种表示各有各的用武之地——在线轨迹可以驱动机械臂写字、做笔迹鉴定里的动态特征分析;离线图像可以做字体设计、OCR训练数据增广。但问题在于,它们长期是两条独立的技术路线,各自发展了许多年,从来没有人把这两者真正统一到一个框架里让它们互相促进。
想把这两者统一起来,难点到底在哪?论文点出了两个核心瓶颈。第一,缺少连接笔尖运动到像素外观的物理模型——也就是说,不知道怎么从"笔尖走了什么路径、用了多大力"数学推导出"纸面上应该是什么样子"。第二,没有现成的配对数据集——既包含高质量手写图像、又带有对齐笔画轨迹的数据,在现实世界里根本不存在。在线数据集只存轨迹,离线数据集只存图片,两边各玩各的,没有一个数据集把两者同时提供出来。
不仅如此,想要真正做到端到端联合训练,这个物理模型还必须是可微分的。什么叫可微分?简单说,就是梯度信息能够从像素外观一路传回运动轨迹——从"图长什么样"反推出"笔应该怎么动",这样才能用标准的深度学习优化方法去训练。经典计算机图形学里那些笔刷模拟方法,比如Hairy Brushes、DAB这些,虽然能模拟出非常逼真的毛笔效果,但计算量巨大且不可微,没法嵌进深度学习流程里做端到端训练。这就像是想要一座连接两个岛屿的桥,受力要合理、还要允许双向通行,而以前的方法要么是座独木桥只能单向走,要么干脆是座断桥走不通。
表1:在线、离线与联合手写表示方式的对比
表1:在线、离线与联合手写表示方式的对比。从表中可以看到,在线表示有完整的结构信息和物理可执行性,但视觉风格和外观真实感有限;离线表示有丰富的视觉风格,却缺少结构信息和物理可执行性。联合表示则同时在几个维度上补齐了短板

核心破局:六参数物理笔刷模型+可微分渲染器如何架起桥梁?

面对上面说的两大瓶颈,这篇论文给出的破局思路非常巧妙,从经典计算机图形学的物理笔刷模型里找灵感,但并不是照搬。传统书法模拟系统为了提高真实感,会用弹簧-质点骨架模拟每一根毛笔刷毛的形变,计算量极大;而这篇论文把这些物理过程大胆做减法,只提炼出对手写文字外观影响最关键的六个参数,浓缩成一个低维的、可微分的替代模型。这就像是做菜的时候不追求把厨房里每一口锅都复刻出来,而是抓住火候、油温、调味这几个核心变量,照样能做出像样的菜,还省时省力。
这六个参数分别是:基础笔宽 w_base,控制笔刷足迹的基本宽度;压力扩散敏感度 k_spread,决定笔迹宽度对压力变化的反应程度;墨量密度 ρ_ink,控制墨迹的视觉浓淡;边缘锐度 σ_sharp,决定笔迹边界的清晰或模糊程度;压力下限 p_min 和压力上限 p_max,用来定义书写工具特有的压力响应范围。用公式表示就是:
公式1:笔刷模型参数定义
这六个参数合起来就是笔刷模型参数 θ。有了这套参数,手写轨迹和像素外观之间的鸿沟就有了一个明确的、可调节的桥梁。但参数本身还不够,真正让这座"桥"跑起来的是设计精巧的可微分渲染器。它接收在线轨迹序列和笔刷参数,输出一张风格化渲染图,整个过程完全可微,梯度可以从输出图像一路回传到输入坐标。渲染器的内部流程包括四个关键步骤。
第一步是压力估计。因为现有的在线手写数据集大多没有记录真实的笔压数据,论文巧妙地用书写速度来反推压力:写快的时候笔压小、笔画轻,写慢的时候笔压大、笔画重。具体来说,先计算相邻两个笔迹点之间的距离作为局部速度,再做归一化并做指数平滑,最后通过一个线性变换把它映射到参数 p_min 到 p_max 定义的压力范围内。这一设计的妙处在于,它把物理上很难测量的笔压转换成了轨迹数据里天然就有的速度信息,完全不需要额外硬件。
公式2:局部书写速度计算
公式2:局部书写速度计算
公式3:压力代理计算
公式3:压力代理计算
公式4:指数平滑压力
公式4:指数平滑压力
第二步是笔迹覆盖计算。每一步笔迹的宽度用基础笔宽加上压力乘以扩散敏感度来得到。这个线性关系出自对经典笔刷模型的观察——Hairy Brushes论文里就明确指出,压力增大时笔刷的铺展和纸面接触面积是线性增大的。然后对轨迹上的每个线段,计算图像上每个像素到线段的距离,再用一个由边缘锐度控制衰减速度的核函数来生成一个覆盖度值。
公式5:有效笔迹宽度计算
公式5:有效笔迹宽度计算
第三步是墨迹传递。墨量的多少决定了笔迹是浓是淡,论文用指数形式建模了墨水从笔尖到纸面的转移效率,确保墨量不会超过一个物理上限。最后把所有时间步的笔迹覆盖度用最大值合成的方式叠加起来,而不是简单相加。这个设计细节值得专门说明一下:如果两条笔迹交叉,简单相加会让交叠处变得特别黑,非常不自然;而取最大值就避免了这个问题,让交叉处的墨色和两边保持一致,更符合真实书写的情况。
公式6:墨迹传递与每步笔迹覆盖度
公式6:墨迹传递与每步笔迹覆盖度。其中 O_t 是第 t 步转移到纸面的不透明度,s_t 是笔落指示符(1表示落笔,0表示抬笔),K_t 是足迹核,α_t 是第 t 步对像素的墨迹贡献量
图3:提出的笔刷模型概念图解
图3:提出的笔刷模型概念图解。(a) 基础笔宽和压力扩散敏感度决定笔刷足迹几何,压力代理由压力下限和上限约束;(b) 墨量密度控制笔画强度,边缘锐度控制边界衰减;(c) 每一步的alpha图用最大值合成
最后一步是合成渲染,把所有时间步的覆盖度取最大值得到最终的累计墨迹覆盖图,再用1减掉覆盖度就得到灰度渲染图。整条链路每一步都是光滑的数学运算,导数天然可以计算,这就为后面所有的训练和数据合成打下了基础。
图I:可微分笔刷渲染器中的笔刷参数
图I:可微分笔刷渲染器中的笔刷参数示意
图IV:书写工具笔尖形状及其在画布上的视觉表现
图IV:书写工具笔尖形状及其在画布上的视觉表现

数据从哪来?可微分渲染器合成在线-离线配对数据集

搞定了物理模型和渲染器,接下来的问题就是:训练数据从哪来?前面提到过,现实中不存在同时提供轨迹和图像的配对数据集。但有了可微分渲染器,这个问题就迎刃而解了——直接用渲染器把现有的在线轨迹数据"渲染"成离线图像,这样每条轨迹就自动获得了一张对齐的图像,配对数据就有了。
图4a:可微分渲染器生成的在线-离线配对数据集示例
图4a:可微分渲染器生成的在线-离线配对数据集示例
图4b:更多生成样本展示不同背景、风格和单词长度
图4b:更多生成样本展示不同背景、风格和单词长度
具体做法是把在线数据集记为 D_online = {(T, S)},其中T是文本字符串,S是对应的笔画轨迹。对每个样本,从预设的分布中随机采样一组笔刷参数θ,再用渲染器把轨迹渲成覆盖图,最后将墨迹合成到随机采样的真实背景纹理上。论文参考了Emuru的数据增广思路,收集了包括笔记本纸、硬纸板、木板在内的各种真实背景,每次合成时随机选一块背景,随机调整位置和方向,把墨迹叠加到背景上面。公式为:
公式7:合成图像公式
公式7:合成图像公式。其中 A 是累计墨迹覆盖图,C_ink 是墨迹颜色(如黑色),B 是背景纹理。这个合成方式让模型见识到了真实离线手写图像中常见的复杂强度变化和噪声
最终的合成数据集 D_syn = {(T, S, I_syn, θ)} 就包含了文本、轨迹、图像、笔刷参数四元组,为联合训练提供了完备的监督信号。这样构造数据的巧妙之处在于,它不依赖任何手工标注或人工采集,就从已有的大规模在线手写数据集中"免费"生成了配对的离线图像,本质上是用可微分渲染器把轨迹数据转化成了图像数据,一举解决了配对数据缺失的难题。论文所用的训练数据规模相当可观:结合了IAM-OnDB和CASIA-OLHWDB两个数据集,总共构建了155,840个单词级样本,由303位书写者的数据训练、78位书写者的数据测试,基本覆盖了日常手写单词的各种形态。
图II:在线-离线配对数据集的组成结构
图II:在线-离线配对数据集的组成结构
图III:背景纹理库中的背景块示例
图III:背景纹理库中的背景块示例

四大模块如何协同?从文本到轨迹、图像再到机器人执笔

图5:提出的在线-离线联合手写框架总览
图5:提出的在线-离线联合手写框架总览。给定风格参考图像和目标文本,笔刷参数观测器O估计物理感知的笔刷参数θ,笔画生成器G预测在线笔画序列S,可微分笔刷渲染器R将笔画序列和笔刷参数转换为渲染图像,最后零样本图像增强器E细化渲染结果生成具有真实外观的最终离线手写图像
有了可微分渲染器和合成数据集这两块基石,论文搭建了完整的联合手写生成框架。整个推理流程可以用一条清晰的生产线来理解:输入是一句目标文本和几张风格参考图,输出是三个东西——笔画轨迹序列、渲染图像、以及最终的精细化离线图像。这条生产线由四个模块协同配合完成。
公式8:整体推理流程分解
公式8:整体推理流程分解。S 是笔画序列,G 是笔画生成器,I_sty 是风格参考图,T 是目标文本,θ 是笔刷参数,O 是笔刷参数观测器,I_rend 是渲染图像,R 是可微分渲染器,I_off 是最终离线图像,E 是零样本增强器
第一个模块是笔画生成器G。它的任务是根据输入的文本和风格参考图,逐时间步地预测笔画轨迹序列,包括二维坐标和笔状态(落笔、抬笔、结束)。论文在SDT的Transformer轨迹估计架构基础上做了两个关键改进:一是把原来单字符的内容编码扩展为整个单词的字符向量序列,让模型能够处理多字符输入;二是在解码器里新加了一个交叉注意力层,让轨迹表示在生成每个时间步时都能动态关注整个字符序列,从而捕捉字符间的上下文依赖。这个改动的意义在于,从单字生成扩展到单词级生成,大幅提升了方法的实用价值——毕竟真实场景里很少有人只需要写单个字母。
公式9:笔画生成器输入输出关系
公式9:笔画生成器输入输出关系
生成器的训练目标是负对数似然损失加笔状态交叉熵损失:
公式10:笔画生成器的训练损失
公式10:笔画生成器的训练损失。p(u_t) 是预测的高斯混合密度,m̂_t 是预测的笔状态logits,m_t 是真实的笔状态
第二个模块是笔刷参数观测器O。它做的事情是从风格参考图像中提取笔刷物理参数。用什么网络结构来提取呢?论文使用了DINOv3这个自监督视觉模型来提取图像特征,然后在Transformer层中用"图内自注意力"和"图间注意力"两种方式结合——前者捕捉单张图像内部的局部风格细节,后者从多张风格参考图中提取一致的共享书写风格。最后通过MLP头输出归一化的六维笔刷参数向量。这个模块让机器拥有了"看字识笔"的能力——看一眼某个人写的字,就能估计出写字用的笔是什么样的物理特性。
公式11:笔刷参数观测器输入输出关系
公式11:笔刷参数观测器输入输出关系
观测器的训练有两个监督信号:一个是直接对参数空间做MSE回归(对齐预测参数和真实参数),另一个是将预测参数和真实参数分别丢进可微分渲染器渲染出图像后,对图像空间做MSE回归(保证视觉外观一致)。论文用公式 L = L_params + L_render 把这两个损失结合在一起,好处是梯度可以同时从参数空间和图像空间两个方向给观测器提供监督,让模型学到的不只是参数的数值,更是参数和最终视觉效果之间的对应关系。
公式12:笔刷参数观测器的联合损失
公式12:笔刷参数观测器的联合损失
第三个模块是可微分渲染器R,也就是前面介绍的核心组件。在整体框架中,它的角色是"翻译官"——把笔画生成器输出的轨迹序列从运动域翻译到像素域,变成一张渲染图像。第四个模块是零样本离线图像增强器E。渲染器生成的图像已经能反映笔迹结构和风格笔刷足迹,但真实的离线手写图像往往还有更多的细节:纸张纹理、扫描仪伪影、局部强度波动、数据集特有的外观统计特性。为了消除这个差距,论文直接启用了一个现成的手写扩散模型作为增强器。
这个增强器的实现方式很聪明:完全不对扩散模型做任何训练或架构修改,而是把渲染图当作扩散采样过程中的一个结构先验。先用扩散模型的VAE编码器把渲染图编码到潜空间得到结构先验,然后在某个中间时间步用这个结构先验加上适量噪声来初始化扩散潜变量,之后用标准的条件去噪过程(以文本和风格图为条件)生成最终的精细化图像。这样做的好处是既保留了渲染图预测的笔画结构,又能让扩散模型在真实图像的流形上"补完"渲染图缺乏的真实质感。
公式13:渲染图像的VAE编码
公式13:渲染图像的VAE编码
公式14:扩散潜变量初始化
公式14:扩散潜变量初始化。从渲染图编码的潜变量加上适量噪声作为扩散采样的起点,既保留了笔画结构,又允许扩散模型在真实图像流形上优化外观
以上四个模块串联起来就形成一个完整且自洽的框架:G管结构(轨迹)、O管风格(笔刷参数)、R管渲染(轨迹+参数→图像)、E管增强(渲染图→真实感图像)。每个模块各司其职,又通过可微分渲染器紧密耦合,任意两个域之间都能传递梯度,这正是"统一"二字的深层含义。

实验说话:定量指标、定性对比与真实机器人书法演示

前面把方法讲完了,接下来看看效果到底怎么样。论文在多个维度展开了实验验证——在线轨迹评估、离线图像评估、消融实验、用户研究以及真实的机器人书法演示。一张表格汇总了在线手写模型的评估结果:
表2:在线手写模型在两个场景下的评估结果
表2:在线手写模型在两个场景下的评估结果。场景一为从IAM-OnDB/CASIA数据集渲染的合成图像上估计轨迹,场景二为从真实扫描图像上估计轨迹。可以看到本框架在单字符和单词级别都取得了有竞争力的性能
论文的评估分为两个场景:一个是在合成数据上测试,即从渲染图像中估计轨迹;另一个是跨域测试,从真实扫描图像中估计轨迹,检验模型的泛化能力。在线评估用的是本框架自己构造的配对数据集,分别在IAM-OnDB和CASIA两个数据集上做训练和测试,评估指标包括常用的DTW、L2等轨迹相似度指标。
表3:在线-离线配对数据集上的评估结果
表3:在线-离线配对数据集上的评估结果。加粗表示最佳,下划线表示次佳
离线图像生成方面,论文使用IAM和CVL两个公开离线手写数据集进行测试。定性对比的结果很有说服力:
图6:离线手写生成结果的定性对比
图6:离线手写生成结果的定性对比。从左到右:真实图像、现有离线手写生成方法、本方法结果(渲染结果+零样本增强器)。从图中可以清楚看到,现有的离线方法有时会丢失正确的单词结构或产生不稳定的笔画,而结合本文方法后结构一致性和视觉真实感都有明显提升
从图6可以直观看到,现有的离线手写生成方法虽然在某些风格模仿上做得不错,但常常在单词结构上"翻车"——多字母、漏字母、笔画错乱的情况时有发生。而本文的方法由于有轨迹结构的约束(笔画生成器保证结构正确),再经过增强器补充真实质感,生成结果在结构保真度和视觉真实感两个维度上都有明显提升。
表4:IAM和CVL数据集上基线模型与本文框架的定量评估
表4:IAM和CVL数据集上基线模型与本文框架的定量评估。加粗表示最佳,下划线表示次佳
表I:IAM和CVL数据集上的额外定量评估
表I:IAM和CVL数据集上的额外定量评估。加粗表示最佳,下划线表示次佳
更值得关注的是论文还做了用户研究。让真人来打分评价不同方法生成的手写图像的质量,这比任何自动指标都更能反映真实感受,结果显示本文的方法在用户偏好上取得了领先位置。
表II:用户研究结果
表II:用户研究结果(分数越低越好)
接下来是重头戏——真实机器人书法演示。论文将笔画生成器预测出的轨迹直接发给Lite 6机械臂执行,让机器人用真实的笔在纸上把单词写出来:
图7:真实机器人系统执行我们框架的定性结果
图7:真实机器人系统执行本框架的定性结果。每个单词的上排显示的是可微分笔刷渲染器渲染的离线手写图像,下排是执行预测笔画轨迹后机器人实际写出的结果
从演示结果看,机器人写的字和渲染图像在结构上保持了高度一致,说明预测的轨迹确实捕捉到了书写的动作精髓。不同的书写工具(铅笔、滚珠笔、马克笔、毛笔)都能顺利执行,展示出框架对多种工具的兼容性。论文还补充了更多工具和字母组合的定性展示(图V),以及句子级别的应用(图VI),进一步证明了框架从单词到句子的可扩展性。
图V:统一在线-离线手写框架在多种工具和字母场景下的机器人执行定性展示
图V:统一在线-离线手写框架在多种工具和字母场景下的机器人执行定性展示
图VI:句子级别的应用展示
图VI:句子级别的应用展示。(A) 渲染图像,(B) 离线图像,(C) 机器人执行结果
图VII:在线手写生成结果的定性对比
图VII:在线手写生成结果的定性对比
图VIII:CVL数据集上离线手写生成结果的定性对比
图VIII:CVL数据集上离线手写生成结果的定性对比
图IX:IAM数据集上离线手写生成结果的额外定性对比
图IX:IAM数据集上离线手写生成结果的额外定性对比
从实验设计的整体合理性来看,论文覆盖了在线轨迹评估、离线图像评估、跨域泛化测试、消融研究、用户研究和机器人实物验证,可谓全面。在离线结果上,论文报告的定量指标和用户研究都显示出了有竞争力的表现。需要说明的是,相关对比基线的结果基于论文报告的数据,不同实验设置(如数据集划分、评价协议)可能带来数值差异,具体对比还需参考原文的详细设置。在线轨迹评估上,本框架在部分指标上达到最优或次优,但并非全面碾压——这也符合预期,毕竟本框架的定位是联合建模,侧重的是"统一"而非在某一个单一任务上做到极端。
总体来说,这篇论文最大的贡献在于提供了一个统一的框架,让在线和离线手写生成不再各说各话,而是共享同一个物理模型。更妙的是,可微分渲染器让"看轨迹→出图像"和"看图像→估轨迹"两条路径都能传递梯度,打开了双向学习的大门。当然,论文的工作也还有进一步提升空间,比如目前的物理模型还比较简单,对于一些极其复杂的书法效果(比如浓淡变化的墨迹、纸张的浸润效果)还不能完全模拟,这方面未来的工作可以借鉴更精细的物理模拟方法。但作为第一个把在线和离线手写生成真正统一起来的框架,这篇论文的学术价值和工程意义都是值得肯定的。

龙迷三问

下面是龙哥对于大家可能的一些问题的解答:
这篇论文到底在解决什么问题?本文介绍一种基于可微分物理笔刷渲染的统一手写生成框架,通过六参数笔刷模型桥接在线轨迹与离线图像,无需配对数据即可训练,并支持机器人直接执行书写动作,实现从文本到真实笔迹的全流程贯…
这篇工作最值得看的点是什么?在线手写生成任务中,所提方法在单词级与单字母级场景下均显著优于SDT(DTW大幅降低);离线手写生成中,所提方法配合One-DM作为增强器在FID、BFID、KID等分布相似性指标上取得最优或次优结果;在真实机器人书法演示中成功执行预测轨…
这篇工作的边界或风险在哪里?优点:(1)提出紧凑的六参数物理笔刷模型,为在线轨迹与离线图像提供可解释的桥梁;(2)可微分渲染器支持跨运动与外观域的梯度回传,实现端到端联合学习;(3)从现有在线数据集合成配对数据,缓解配对数据稀缺问题;(4)统一框架同时支持在线轨迹生…
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~

龙哥点评

龙哥觉得,《CMU等四校联手:可微分物理笔刷,让AI生成手写还能操控机器人直接写出来》最值得看的不是概念包装,而是它把提出紧凑物理笔刷模型与可微分渲染器,将在线笔迹轨迹与离线手写图像统一于同一框架,实现文本到轨迹生成、轨迹到图像渲染及机器人直接执行。真正落成了一条可检验的技术路线。 从结果看,在线手写生成任务中,所提方法在单词级与单字母级场景下均显著优于SDT(DTW大幅降低);离线手写生成中,所提方法配合One-DM作为增强器在FID、BFID、KID等分布相似性指标上取得最优或次优结… 不过也别只看最好看的数字:优点:(1)提出紧凑的六参数物理笔刷模型,为在线轨迹与离线图像提供可解释的桥梁;(2)可微分渲染器支持跨运动与外观域的梯度回传,实现端到端联合学习;(3)从现有在线数据集合成配对数据,缓解配对数据稀缺问题;(4)统一框架同时支持在线轨迹生…

*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击"阅读原文",查看更多原论文细节哦!       

转发文章 微博 X LinkedIn Facebook
龙哥读论文 · PaperDaily

本文基于龙哥读论文 PaperDaily 数据库整理,结合论文原文与工程视角进行解读。

LONGGE AI COMMUNITY

把每天读到的论文,变成长期积累

加入「龙哥读论文」知识星球,持续获取 AI 论文、资讯、开源项目、招聘与研究思路。

加入龙哥读论文微信群:添加微信 kangjinlonghelper,备注“研究方向 + 地点 + 学校/公司 + 昵称”。

龙哥读论文知识星球二维码 微信扫码加入知识星球