edit-mind
本地视频知识库:用 Whisper、YOLO、DeepFace 多模态分析视频,自然语言搜索你的整个
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
本地视频知识库:用 Whisper、YOLO、DeepFace 多模态分析视频,自然语言搜索你的整个
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下:你的硬盘里躺着500部纪录片、3000个教程视频、无数家庭录像,想要找到「去年春节孩子第一次走路的那个镜头」——你知道它在那里,但翻遍文件夹也找不到。Edit Mind 就是来解决这个问题的。
Edit Mind 的作者 Ilias Had 是一个视频编辑从业者。在日复一日的剪辑工作中,他发现一个根本矛盾:视频文件本质上是非结构化数据,而创作者需要的是精准定位。他说自己「受够了在几百小时的素材里手动翻找」,于是决定用 AI 给视频建一个「第二大脑」。
这个项目被 Syntax.fm 节目推荐后获得了社区关注,也让他坚定了继续开发的决心。项目名字里的「Mind」来自「Video Editor Mind」——编辑师的第二大脑,这个定位贯穿了整个架构设计。
Edit Mind 不只是给视频打标签,它构建了一套完整的多模态分析流水线:
1. 语音转写(Whisper)
使用 OpenAI Whisper(或 faster-whisper)将视频音频转为文字字幕,支持多语言。这意味着你可以直接搜索视频里说过的任何一句话——「找一个讲 Python 装饰器的教程」不再是难题。
2. 物体检测(YOLO)
通过 Ultralytics YOLO 模型逐帧检测视频中的物体、场景和活动。你可以搜索「视频里出现过猫的画面」,系统会告诉你每个视频的时间戳。
3. 人脸识别(DeepFace)
用 DeepFace 库对视频中的人物进行识别和归档。家庭视频里按人物分组、旅游录像里按出镜次数统计——这些都是手动整理几乎不可能完成的任务。
4. OCR 文字识别
EasyOCR 提取视频中出现的文字(屏幕文字、路牌、书本封面等),补足了语音和物体之外的第三维信息。
5. 向量语义搜索(ChromaDB)
所有上述分析结果——转写文本、物体标签、人脸 ID——统一存入 ChromaDB 向量数据库,用户可以用自然语言进行语义搜索,而不只是关键词匹配。
Edit Mind 采用 pnpm workspaces 管理的 monorepo 结构,代码组织非常清晰:
| 模块 | 技术栈 | 职责 |
|---|---|---|
apps/web | React Router v7 + TypeScript + Vite | 前端 Web UI,端口 3745 |
apps/background-jobs | Node.js + Express + BullMQ | 后台任务调度(Redis 驱动) |
apps/mcp | MCP SDK | Model Context Protocol 服务集成 |
python/ | Python + PyAV + Whisper + YOLO + DeepFace | ML/AI 分析服务 |
packages/ | 13个共享包 | AI、数据库、嵌入、媒体工具、搜索等 |
BullMQ 是关键:用户上传视频后,background-jobs 服务将分析任务分片化推入 Redis 队列,由 python/ml 容器逐个消费。这样即使分析 2 小时的长视频,也不会阻塞 Web UI 的正常使用。
数据库层面使用 PostgreSQL(通过 Prisma ORM)存储项目、视频、人脸等结构化元数据;ChromaDB 存储向量嵌入,两者的结合既保证了关系查询的效率,又兼顾了语义搜索的灵活性。
只要你有一台装了 Docker 的电脑,整个系统一键启动:
curl -L raw.githubusercontent.com/IliasHad/edit-mind/main/.env.example -o .env
curl -L raw.githubusercontent.com/IliasHad/edit-mind/main/docker-compose.yml -o docker-compose.yml
docker-compose up
打开 http://localhost:3745,配置视频文件夹路径,系统会自动监控新视频并排队分析。没有 NVIDIA GPU?没关系,docker-compose.yml 默认是 CPU 版本,照常运行,只是分析速度稍慢。
Edit Mind 强调「Local-first」,这不只是口号。所有视频文件保存在本地,所有 AI 分析在本地 Docker 容器内完成,没有任何数据上传到云端。对于存储家庭影像、隐私素材或商业项目视频的用户来说,这是一个实质性的优势——和 OpenAI Whisper API 的云端方案相比,这里用的是本地 Whisper 模型,隐私边界是清晰的。
1. 开发中状态
作者明确标注项目「not yet production-ready」,意味着功能不完整、可能有偶发 bug。对于需要稳定生产环境的用户,这是需要评估的风险。
2. 资源消耗不容忽视
视频分析是计算密集型任务。YOLO 逐帧检测 + DeepFace 人脸识别 + Whisper 转写,1 小时视频的完整分析可能需要 30-60 分钟(CPU 模式)。作者提供 CUDA 版本说明他清楚 GPU 加速的价值,但没有 GPU 的用户需要耐心等待。
3. 桌面版分流问题
作者同时在开发商业桌面版,桌面版有 Davinci Resolve 和 Final Cut Pro 的直连集成。如果桌面版正式发布,社区开源版如何保持迭代动力,是一个潜在风险。
Edit Mind 代表了一个趋势:用多模态 AI + 向量数据库,把以前只能靠人工整理的非结构化媒体(视频、音频)变得可搜索、可查询。这是 RAG(检索增强生成)思路在视频领域的延伸。随着开源模型能力提升(Whisper 已经可以在 CPU 上跑得很好了),本地运行高精度多模态分析正在成为现实,而 Edit Mind 正是这个方向上一个值得关注的项目。