我们如何衡量生成质量和速度

这里介绍的是我们发布任何 funscript 基准测试时所用的方法:生成的脚本如何与参考脚本对比评分、参考脚本从何而来,以及我们仅有的一项速度数据。本页目前还没有准确度表格。第一批与手工脚本对比评分的结果已经出来;在发布任何准确度数据之前,还会先完成第二批留出数据的评分。

已于 2026 年 9 月 21 日对照项目的测量工具和记录核查。

脚本如何评分

funscript 是一组随时间变化的位置。评分从它的转折点开始:也就是脚本停止向一个方向运动、开始向另一个方向运动的每一个点。在同一段视频上,把生成脚本的转折点与参考脚本的转折点进行比较。

匹配
生成的转折点落在参考转折点 ±150 ms 以内时算作匹配。超出这个范围的,一方记为漏掉,另一方记为多出的转折点。
F1
一个综合数值,同时反映参考转折点中有多少被找到,以及生成的转折点中有多少是真实的。1.0 表示每个转折点都匹配上,且没有凭空多出的;漏掉的转折点和多出的转折点都会拉低它。
时间误差
仅针对匹配上的转折点,计算两者相差多少毫秒,报告中位数和第 90 百分位数。不计算平均值或第 95 百分位数。未匹配的转折点不计入此数值,所以时间误差必须始终与对应的 F1 一起解读:F1 很低时,再低的时间误差也只描述了被找到的那些转折点。
行程幅度比
生成脚本行程长度的中位数除以参考脚本行程长度的中位数,不做匹配。1.0 表示平均而言行程幅度正确;低于 1.0 表示行程偏小。
转折频率与空闲动作
与手工脚本对比时,我们还会统计每秒的方向变化次数,以及在脚本作者标记为没有动作的片段中,脚本仍在运动的程度。

在同一部影片上用相同设置重复运行,F1 的波动约为 ±0.005,所以我们把两个版本或两组设置之间小于 0.01 F1 的差异视为噪声。

参考脚本从何而来

评分的好坏取决于用来对比的脚本,而在项目的大部分历史中,那个脚本并不是独立的。

2026 年 9 月 19 日之前:Live Track 参考

2026 年 9 月 19 日之前记录的所有 F1、时间误差和行程幅度数据,都是把引擎与 Live Track 参考进行对比。那些参考是引擎在 2026 年 8 月 22 日的输出,由人拖动追踪框加以引导,而不是手工制作的脚本。新版本与它们不一致,可能是因为新版本更差,也可能是因为它比生成那些参考的引擎更好。所以这类对比能拦住糟糕的改动,却无法证实改进;由此得出的任何数据只能描述为与我们参考的一致程度,绝不能说成相对手工脚本的准确度。本站曾出现的“27 ms”时间数据就来自这类对比。

2026 年 9 月 19 日起:盲测的手工脚本片段

现在的基准真值来自按盲测流程手工编写脚本的短片段:

  1. 从测试影片中按固定随机种子选取的时间窗口切出 12 秒长的片段。每个片段都有一个随机名称,没有声音、标题或时间码。
  2. 记录每个片段来自哪部影片的对照表单独保存,编写脚本期间不打开,编写顺序也把各部影片打乱混合。
  3. 脚本作者按照书面规则为每个片段手工制作 funscript,这些规则在编写第一个片段之前就已固定。
  4. 每个片段只对中间的 8 秒评分;两端各 2 秒不计分。
  5. 引擎在同一段上生成的脚本,用上述指标与手工脚本对比评分。

作为对基准真值本身的检验,在检查的 9 个片段中,有 7 个的脚本作者行程频率与视频自身的主要运动频率相差在约 0.1 Hz 以内。

第一批是 2026 年 9 月 19 日评分的、来自五部影片的 28 个片段,它有两个我们明确说明的局限。它由一个人编写,也就是开发者本人。而且这些片段来自默认设置调校时所用的同样五部影片,所以其中没有任何留出数据。这是一个探索性批次:适合发现弱点,不适合给出宣传数字。

唯一的速度测量

我们目前只有一项速度数据,来自一台电脑。解读时请连同所有条件一起看:

开发者电脑上 Balanced 档位的分析速度
条件数值
硬件NVIDIA RTX 5080 显卡,Intel i7-13700K 处理器
精度档位Balanced,全新安装时的默认设置(YOLOv8s 姿态模型、MiDaS small 深度模型、每 3 帧分析 1 帧)
版本2.121.2 版的默认设置,从源代码运行,而非已安装的应用。2.121.2 已构建但尚未发布;用户使用的是 2.121.1
影片5 部影片,时长 32–39 分钟,29–60 fps,1080p 和 2160p
每个分析帧的耗时26.3–36.7 ms
每部影片的耗时8.2–28.5 分钟
时机2026 年 9 月 15 日前后

在那台电脑上,五部影片中每一部的分析时间都短于播放时间。由于 Balanced 每 3 帧分析 1 帧,60 fps 影片每分钟需要分析的帧数是 30 fps 影片的两倍,耗时也大约是两倍。实际耗时还取决于电脑同时在做什么:当运行与其他工作重叠时,同样的影片花的时间要长得多。

项目记录中只保留了上面的范围;这次运行按影片的细分数据没有保存,所以我们不把某个时间与特定影片对应起来。

这不是对你电脑的承诺。它不能说明其他显卡的情况,不能说明仅用处理器运行的情况,也不能说明 High 和 Fast 档位的情况。

尚未测量的内容

  • 其他显卡。只对 RTX 5080 计过时。没有中端显卡的数据。
  • 仅用处理器。应用在没有 NVIDIA 显卡时也能运行,只是更慢,但这没有计过时。
  • 当前设置下的 High 和 Fast 档位。两者都没有当前的计时数据。
  • 已安装的应用。迄今为止的每项测量都是从源代码运行的,而不是用安装版。
  • 相对手工脚本的时间误差。手工脚本批次有 F1、转折频率、行程幅度和空闲动作的数据,但还没有毫秒级的时间误差。
  • 真实使用中的设备延迟和漂移。没有任何记录显示设备实际跟随视频的紧密程度:Autoblow AI Ultra 没有测得的往返延迟、漂移或启动偏移,Intiface 设备和 DeoVR 也没有。应用如何校正 Autoblow 漂移中描述的漂移阈值是应用的目标,而非测量结果。只有 Autoblow AI Ultra 在真实硬件上测试过;The Handy、Kiiroo、Lovense 和 OSR2/SR6 只用模拟设备测试过。
  • 留出数据的准确度批次。来自设置从未在其上调校过的影片的片段批次,目前还没有评分。
  • 默认应用中的动作类型分类。它在运行中的应用所用特征上的准确度从未测量过。

结果何时发布

第一批手工脚本已经评分。它让我们看到了引擎的弱点:在快速场景中,它产生的转折点比脚本作者少;在最快的场景中,它的行程偏小;在没有动作的片段中,它仍在运动。我们不把这批的 F1 或行程幅度数字作为准确度数据引用,因为这些片段来自默认设置调校时所用的影片,而且只有一位脚本作者。

在本站发布任何准确度数据之前,我们会从设置未在其上调校过的影片中切出一批留出片段,并以同样的方式评分。届时,本页会展示这些数字,并附上上述方法、片段和影片的数量,以及脚本由谁编写。今后添加的任何速度数据都会附带与上面相同的条件:显卡、档位、帧率、分辨率和版本。我们尚未确定日期。

常见问题

“27 ms 时间误差中位数”怎么了?

它是对照 Live Track 参考测得的,而那些参考是引擎的输出,并且只统计了在 ±150 ms 以内匹配上的转折点。在当前的 Balanced 默认设置下,同样的测量每部影片得到 21–35 ms,但这是与我们自己参考的一致程度,而不是相对手工脚本的准确度。相对手工脚本的时间误差目前还没有计算过。

在我的电脑上会有多快?

我们目前还无法回答。唯一的测量来自 RTX 5080,在 Balanced 下,32–39 分钟的影片耗时 8.2–28.5 分钟。我们没有任何其他显卡或仅用处理器的数据。你可以用免费试用在自己的硬件上计时。

为什么现在不公布手工脚本的结果?

因为这批数据范围太窄,不足以作为准确度数据:只有一位脚本作者,而且片段来自默认设置调校时所用的同一批影片。留出数据批次能解决第二个问题;它会先完成。

Accuracy 设置会改变质量吗?

它改变的是分析多少帧:High 每 2 帧分析 1 帧,Balanced 每 3 帧 1 帧,Fast 每 4 帧 1 帧。2026 年 9 月初在一部影片上,使用当时的引擎和 High 设置、对照 Live Track 参考评分,Fast 的 F1 约为 High 的一半(0.316 对 0.605)。在当前设置下、对照手工脚本的各档位比较尚未进行。

延伸阅读

  • 引擎如何工作姿态、光流和深度,以及它们各自对脚本的贡献。
  • 漂移校正Autoblow AI Ultra 上的播放如何与视频保持同步,以及其中哪些测量过、哪些没有。
  • Report Studio在浏览器中查看你自己那次生成的报告。
  • 本地处理这里计时的分析在你的电脑上运行。

在你自己的视频上测一测

试用版就是一天的完整应用,你可以在自己的电脑上为一次生成计时,并亲自评判脚本。