文件
paintfcp-fxplug/docs/验证记录.md
T

12 KiB
原始文件 Blame 文件历史

大鱼人像美化 1.0.4 验证记录

日期:2026-10-21。环境:Apple Silicon M1 Max,macOS27.2、Motion6.4、Final Cut Pro12.4、Xcode27.1、FxPlug SDK4.3.4、PluginManager1.7.4。Release包含arm64和x86_64;原生宿主实测为arm64,未在Intel机器实测。

用户报告的两个问题

FCP黑屏来自初版效果模板的输入链:Source Media=0且无clip/footage。已恢复标准Effect Source→clip→footage→本地Drop Zone.tiff。新模板在FCP的独立验收项目中成功替换为实际片段,并能调整美化参数;不能把此前XML通过当作原生输入链通过。

肤色提亮出现眼、鼻、唇周围圆洞,原因是调色复用了为磨皮扣除五官的蒙版。现在磨皮保留五官保护,肤色改用连续的人脸覆盖与柔和肤色分类,并羽化过渡、抑制蓝发溢色。提供的实际素材以75%提亮/50%中频在Motion复测,首帧及转头后画面未再见原圆洞;离线同帧旧/新算法对照保存在本机build目录,未将用户素材或截图上传源码仓库。强提亮仍会放大原素材的日光与阴影差异,不等于自动重布光。

宿主测试范围

FCP:使用用户给定的3840×2160、25fps蓝发人像视频。新建独立验收事件与10秒项目“ 大鱼人像美化验收-20261021 ”,位于当前已打开的素材库中,未修改原生产时间线;前5秒原片、后5秒同一段原片加效果。实际看到正常输入、非黑画面和提亮变化。勾选选脸并执行向前分析后,使用跟踪数据由0变为1,按钮路由与基本分析完成可用;未将其描述为125帧逐帧核验或复杂遮挡恢复通过。

Motion:独立普通视频项目,源PTS0、1920×1080/25fps/10秒,媒体通过本机链接引用给定视频;开启50%中频、75%提亮与人脸框。切换滤镜启用、从第1帧播放到第179帧均正常出图,人脸框随画面位置更新;选中滤镜可正常建立OSC连接。此QA工程依赖外置卷原视频,不作为可移植产品资源交付。

选脸控件:原生验收额外发现OBJECT坐标被二次归一化,十字落在画面角落;现直接使用归一化OBJECT坐标转换至CANVAS像素。Motion点参数桥接会归一化读取,却按中心像素写入,新增事件内读回检测及兼容转换,并校验最终位置;不依赖宿主版本号猜测。98项OSC测试同时覆盖文档约定与Motion像素桥接。事件现显式使用CANVAS坐标并由宿主转换回OBJECT,避免OBJECT鼠标事件的单位歧义。1.0.4的显式选脸点击回写尚未完成原生复测;界面被用户接管自测,已按要求停止自动化操作。98项离屏OSC/ASan检查不能替代这项原生验收。公开坐标依据:Apple Creating Onscreen Controls。

宿主在更新前退出,新正式版安装后重新打开。曾在旧XPC连接未释放、临时构建插件仍被注册的热替换环境出现宿主关闭挂起/OSC连接崩溃;交付流程已增加宿主关闭检查,并在原生验收前注销构建目录的插件。没有把该崩溃直接归因为某条提亮公式。

功能边界与原版跟踪选项

用户给出的MS超级美颜V2.moef共发布15个入口,没有跟踪、前向或后向分析控件。没有额外分析按钮不影响原版默认自动跟随;活跃render路径与Motion运行均已确认这一点。复刻版的三目标离线分析与持久化属于独立扩展,应与默认实时跟随分开理解。

六种肤色风格采用自写调色变换,脸型当前使用Vision脸框场与眼部点位置的近似反向采样;瘦脸本身没有使用下颌轮廓点。未复制原版私有LUT或算法资源。没有完成原版逐像素对齐、全部脸型强度主观比对、多人交叉遮挡、所有宿主版本及Intel硬件验收。源码层保存/恢复测试不代替两宿主所有工程关闭重开场景。

自动化与恢复

渲染/人脸/宿主适配器/OSC测试使用公共NASA人像与合成数据,覆盖默认直通、像素格式与画面原点、极值、连续调色蒙版、蓝发抑制、选脸/分析状态和错误处理。最终代码节点为e03e460a9b3e5ad489aad24095485ba10ceb987d,380项检查通过:渲染49、人脸116、宿主适配117、OSC98,零失败。宿主适配器和OSC测试启用AddressSanitizer。

远端独立克隆核验检查受跟踪文件字节、工程资源、Git对象完整性和可执行脚本模式,无LFS与子模块。scripts/checkpoint.py以100644保存,按文档使用python3调用;它不是可直接执行的入口,恢复测试报告中该权限提示不表示源码丢失。

正式交付

1.0.4 build6为通用Release,已按由内到外正式签名,codesign严格验证、Apple公证Accepted(8eb96294-5935-49ff-a487-3c4f60c27395)、票据粘附/验证、Gatekeeper及安装身份验证通过。临时构建APP、旧版备份APP及公证ZIP已清理,检查的项目、DerivedData、桌面、下载、Applications、正式FxPlug目录与本次临时构建路径只剩正式APP,该产品插件注册为1个正式路径;详细扫描范围见verification/release-receipt.json。唯一正式APP路径固定为 /Library/Plug-Ins/FxPlug/beatygril.app;FCP效果模板在用户Movies/Motion Templates.localized/Effects.localized/大鱼/大鱼人像美化内,必须同时有.moef与Drop Zone.tiff。

1.0.4 自动跟随专项

已按原版活跃路径加入自动主体关联、矩形防跳、关键点稳定、失检保持与独立时间缓存;默认不要求分析。新增51项人脸回归,覆盖移动、多脸作用范围、重选、重复帧、失检、矩形边界、轴向保护、历史缓存、并发及不改离线存档;独立审查曾发现A→B→A重选后的回看范围混淆,修复后独立复现保持同一输出。Face116另有ASan通过。

原版完整数学系数未恢复,本版使用自有平滑公式与past-only时间策略;当前检测框未做原版77点网格级稳定,没有真正sourceID,不能声称任意同尺寸换源或首次乱序完全一致。原生1.0.4:Motion成功加载正式路径插件,实际视频在不同播放头位置正常显示提亮、脸型和黄色主要人脸框;项目未执行离线分析,“使用跟踪数据”读取为0。用户随后明确接管Motion/FCP进行自测,自动化已停止,因此尚未完成1.0.4的FCP自动跟随、显式OSC点击回写及两宿主复杂场景验收。FCP黑屏输入链与提亮此前已原生复测,不能把它们混称为1.0.4所有自动跟随场景通过。详见分析说明的具体边界。

代码节点已从远端独立克隆恢复,51项受跟踪文件与9项必要资源逐字节/对象/文件模式一致;380项检查、严格fsck与Xcode工程读取全部通过,无LFS或子模块。验收报告见 独立恢复摘要 与 完整记录。最终文档标签另作独立克隆核验,源码构建依赖没有因文档更新改变。

用户复测与瘦脸专项分析

用户反馈“跟踪没问题”,同时提供最大瘦脸与侧脸变形对照。记录为用户实测反馈,不扩张为显式OSC点击、两宿主复杂场景或全部脸型验收通过。

后续静态REA和Apple Metal AIR分析确认:原版瘦脸以17组轮廓到鼻部/瞳孔锚点的局部位移驱动,当前瘦脸按框水平对称变形,两者的方向、范围与强度模型不同。独立Vision76点离线探针在同一视频11个采样时刻均检出1脸76点,含明显侧脸;它只证明关键点仍可获得,不代替原版宿主输出对照。探针使用Wall/Wextra编译成功并完成采样,没有执行原版APP、替换安装版或操作Motion/FCP。

分析报告见 脸型变形与转脸分析。当前安装1.0.4的变形问题尚未修复,本轮的诊断代码/证据/文档不改变已安装产品。

1.0.5 瘦脸修复

已将最大瘦脸改为76点、17组局部位移;明确revision3/76点,保留图像及四类蒙版共用变形,旧档案缺完整点阵时只跳过瘦脸。新增224项数值与数据回归:48组尺寸/左右侧脸/歪头投影、非零原点、0/50/100%强度、独立double逆向坐标场、旧档案/坏点保护、失检重获及真实Vision76点与存储回放。最大UV坐标误差1.09828022e-5。

完整回归604项通过(渲染49、人脸116、瘦脸224、宿主适配117、OSC98);宿主适配与OSC启用ASan。独立审查另用程序生成的UV图与1×1读取验证36点,最大误差1.12695e-7。位图数值测试曾发现测试输入行方向与CI坐标不一致,修正测试桥接后通过,生产算法未因此反改。

1.0.5(7)已完成通用Release编译、Developer ID逐层签名、Apple公证Accepted(7d7034f8-7389-410f-ad8e-9e722408c0fc)、票据粘附/验证、Gatekeeper、安装身份与正式路径注册验证。用户保存退出宿主后安装;本轮没有操作或启动Motion/FCP界面,最终视觉由用户自测。默认单主要人脸对齐17-pin数学;快速多人仍沿用逐脸采样,重叠区不宣称与原版单fragment全脸序列等价。

额外用用户视频11帧(含4秒及18秒明显侧脸)运行264项瘦脸ASan检查,通过且未发现内存错误;此数包含重复的220项基础数值/数据检查,不与604简单相加。独立恢复从远程abe97ed0cbd5a2b5ffda6ebdb486d3bff9170964克隆,69文件/9资源和模式一致、strict fsck通过,clone内389项Metal/人脸/瘦脸测试通过。签名构建源码就是该节点;后续交付脚本补充了已公证产物校验恢复与重复注销兼容,产品源码未再变化。

正式安装APP仅位于 /Library/Plug-Ins/FxPlug/beatygril.app;配套1.0.5模板及占位资源已同步并逐字节核验。临时构建、旧版APP备份、公证ZIP已清理;项目、DerivedData、桌面、下载、Applications及系统/用户FxPlug目录扫描只发现该正式APP,无扫描错误。原生效果验收状态为用户自测待完成。票据、发现、恢复与检测报告见 docs/verification/v1.0.5/。

1.0.6 下巴与图像轴修复(构建前)

用户反馈“下巴调整作用到眼睛”。纯CI76点物理位置并未全局反置,但FxPlug适配器曾将TOP_LEFT当作物理行序,在输入和输出各多翻转一次;默认直通会抵消,无法验证中间Vision和变形的解剖方向。独立top-first照片构造复现下巴跑向眼部;原版REA输入及两条CI→IOSurface输出路径均没有同样额外翻转,现删除这两处。未捕获本次实际FCP缓冲,原生视觉由用户自测。

下巴另有旧框高斯算法和正负符号错误,现按原版68→38、67→37、66→36三pin、正0.04/负0.02和共同尺寸增益对齐。数学场、真实图物理下巴/瞳孔、正负符号与侧脸热点均已检查;其余七类控制及全部组合顺序未宣称完整恢复。新分析记录写入显式坐标标记;旧未标记记录保留但不再重放,自动回退实时跟随,重新分析可恢复离线记录。

本轮不操作、启动或退出Motion/FCP。完整分析证据见下巴与坐标分析。完整904项通过(美化49、人脸116、瘦脸/下巴394、宿主适配247、OSC98),宿主适配和OSC启用ASan。宿主适配16种默认/大眼/下巴正负×源/目的原点组合彼此逐字节一致,与独立upright文件参考最大差2/255;独立文件解码和IOSurface检测路径存在微小数值差,阈值另限制均差<0.005/255,并检查实际解剖热点。额外用户视频11帧494项ASan通过,含重复基础用例,不与904简单相加。用户帧和完整点位未上传远程。当前正式APP仍为1.0.5,不能将构建前验证描述为1.0.6已安装。