trace.moe
所谓世人,不就是你吗?——太宰治《人间失格》
GitHub - soruly/trace.moe: Anime Scene Search by Image
/
trace.moe:通过截图识别番剧的开源神器
trace.moe 是一个开源的番剧识别服务,通过上传任意一帧截图,即可快速识别出该画面来自哪一部动画、哪一集,甚至精确到具体的时间点。其核心目标是为动漫爱好者、视频剪辑师和弹幕平台提供“以图识番”的能力。
一、项目简介
trace.moe 由 @soruly 开发,提供完整的后端识别引擎、Web API 接口以及前端页面,支持本地部署和线上使用。用户可以通过网页上传截图,也可以通过 API 集成进第三方应用。
该项目已部署于 ,开放免费使用,也支持自行搭建私有服务。
二、核心功能
- 以图搜番:通过上传图片识别动画出处,返回标题、集数、时间戳、相似度等。
- 时间定位:输出画面在原动画中出现的时间范围,支持跳转播放。
- 多语言支持:返回中英日等多语种标题信息。
- 公开 API:适用于 Bot、插件、弹幕系统等集成。
三、工作原理
- 使用 ffmpeg 将动画视频帧提取为图像特征向量;
- 使用 anime-face-detection 检测画面中的面部特征;
- 将图像向量存入
annoy
索引中,用于高效相似度匹配; - 上传查询图像后,提取其特征,与索引库进行比对;
- 返回最相似帧的信息,包括标题、集数、时间等。
四、本地部署方式
trace.moe 提供 Docker 支持,可快速本地部署:
代码语言:txt复制git clone .moe.git
cd trace.moe
docker compose up -d
可选地,也可以使用 yarn
和 node
手动部署前端与后端服务。
五、API 使用示例
图片 POST 查询:
代码语言:txt复制curl -X POST /search \
-F "image=@screenshot.jpg"
响应数据结构:
代码语言:txt复制{
"result": [
{
"anilist": 12345,
"filename": "ep01.mp4",
"episode": 1,
"from": 123.45,
"to": 126.78,
"similarity": 0.954,
"video": "/video/...",
"image": "/image/..."
}
]
}
六、适用场景
- 番剧爱好者查找出处
- 弹幕网站自动匹配弹幕源
- 视频剪辑工具识别素材来源
- 社区答题类互动(如 “来猜番”)
七、项目亮点
- 高相似度识别:即使画面模糊也能精准匹配;
- 自建灵活:支持私有部署、个性化索引;
- 实时查询:在线响应快速,适合集成化使用;
- 持续维护:项目更新频繁,社区活跃。
八、结语
trace.moe 是“以图识番”领域的代表项目,简单高效、开放易用。无论是动漫站点、二次元工具、Bot 开发者,还是普通动画爱好者,都能从中获益。
如果你对技术细节感兴趣,欢迎深入阅读其 GitHub 源码仓库,并尝试搭建属于你的番剧识别服务。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-04-04,如有侵权请联系 cloudcommunity@tencent 删除部署动画服务索引trace