[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-Cartucho--OpenLabeling":3,"tool-Cartucho--OpenLabeling":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",154349,2,"2026-04-13T23:32:16",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":75,"owner_location":76,"owner_email":76,"owner_twitter":76,"owner_website":77,"owner_url":78,"languages":79,"stars":88,"forks":89,"last_commit_at":90,"license":91,"difficulty_score":32,"env_os":92,"env_gpu":93,"env_ram":94,"env_deps":95,"category_tags":106,"github_topics":107,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":118,"updated_at":119,"faqs":120,"releases":156},7332,"Cartucho\u002FOpenLabeling","OpenLabeling","Label images and video for Computer Vision applications","OpenLabeling 是一款专为计算机视觉应用设计的开源图像与视频标注工具。它主要解决了训练深度学习模型时，人工逐帧标记数据效率低下且格式不统一的痛点，支持将标注结果直接导出为 PASCAL VOC 和 YOLO Darknet 等主流格式，无缝对接后续模型训练流程。\n\n这款工具特别适合计算机视觉开发者、算法研究人员以及需要构建自定义数据集的工程师使用。除了提供基础的矩形框绘制功能外，OpenLabeling 的独特亮点在于其强大的视频对象跟踪能力。它集成了多种 OpenCV 追踪器（如 KCF、CSRT）以及先进的 DaSiamRPN 深度学习模型，用户只需在视频的首帧标记目标，软件即可自动追踪并生成后续帧的标注框，大幅减少了重复劳动。此外，它还支持快速调整边框大小和团队协作标注的规划功能。凭借简洁的图形界面和灵活的配置选项，OpenLabeling 让高质量数据集的制作过程变得更加高效便捷。","# OpenLabeling: open-source image and video labeler\n\n[![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FCartucho\u002FOpenLabeling.svg?style=social&label=Stars)](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling)\n\nImage labeling in multiple annotation formats:\n- PASCAL VOC (= [darkflow](https:\u002F\u002Fgithub.com\u002Fthtrieu\u002Fdarkflow))\n- [YOLO darknet](https:\u002F\u002Fgithub.com\u002Fpjreddie\u002Fdarknet)\n- ask for more (create a new issue)...\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_9f8e4e2360c0.gif\" width=\"40%\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_cdc19f1dd338.gif\" width=\"40%\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_662111698621.gif\" width=\"40%\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_153368102e7d.gif\" width=\"40%\">\n\n## Citation\n\nThis project was developed for the following paper, please consider citing it:\n\n```bibtex\n@INPROCEEDINGS{8594067,\n  author={J. {Cartucho} and R. {Ventura} and M. {Veloso}},\n  booktitle={2018 IEEE\u002FRSJ International Conference on Intelligent Robots and Systems (IROS)}, \n  title={Robust Object Recognition Through Symbiotic Deep Learning In Mobile Robots}, \n  year={2018},\n  pages={2336-2341},\n}\n```\n\n## Latest Features\n\n- Jun 2019: Deep Learning Object Detection Model\n- May 2019: [ECCV2018] Distractor-aware Siamese Networks for Visual Object Tracking\n- Jan 2019: easy and quick bounding-boxe's resizing!\n- Jan 2019: video object tracking with OpenCV trackers!\n- TODO: Label photos via Google drive to allow \"team online labeling\".\n[New Features Discussion](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F3)\n\n## Table of contents\n\n- [Quick start](#quick-start)\n- [Prerequisites](#prerequisites)\n- [Run project](#run-project)\n- [GUI usage](#gui-usage)\n- [Authors](#authors)\n\n## Quick start\n\nTo start using the YOLO Bounding Box Tool you need to [download the latest release](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Farchive\u002Fv1.3.zip) or clone the repo:\n\n```\ngit clone --recurse-submodules git@github.com:Cartucho\u002FOpenLabeling.git\n```\n\n### Prerequisites\n\nYou need to install:\n\n- [Python](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002F)\n- [OpenCV](https:\u002F\u002Fopencv.org\u002F) version >= 3.0\n    1. `python -mpip install -U pip`\n    1. `python -mpip install -U opencv-python`\n    1. `python -mpip install -U opencv-contrib-python`\n- numpy, tqdm and lxml:\n    1. `python -mpip install -U numpy`\n    1. `python -mpip install -U tqdm`\n    1. `python -mpip install -U lxml`\n\nAlternatively, you can install everything at once by simply running:\n\n```\npython -mpip install -U pip\npython -mpip install -U -r requirements.txt\n```\n- [PyTorch](https:\u002F\u002Fpytorch.org\u002Fget-started\u002Flocally\u002F) \n    Visit the link for a configurator for your setup.\n    \n### Run project\n\nStep by step:\n\n  1. Open the `main\u002F` directory\n  2. Insert the input images and videos in the folder **input\u002F**\n  3. Insert the classes in the file **class_list.txt** (one class name per line)\n  4. Run the code:\n  5. You can find the annotations in the folder **output\u002F**\n\n         python main.py [-h] [-i] [-o] [-t] [--tracker TRACKER_TYPE] [-n N_FRAMES]\n\n         optional arguments:\n          -h, --help                Show this help message and exit\n          -i, --input               Path to images and videos input folder | Default: input\u002F\n          -o, --output              Path to output folder (if using the PASCAL VOC format it's important to set this path correctly) | Default: output\u002F\n          -t, --thickness           Bounding box and cross line thickness (int) | Default: -t 1\n          --tracker tracker_type    tracker_type being used: ['CSRT', 'KCF','MOSSE', 'MIL', 'BOOSTING', 'MEDIANFLOW', 'TLD', 'GOTURN', 'DASIAMRPN']\n          -n N_FRAMES               number of frames to track object for\n  To use DASIAMRPN Tracker:\n  1. Install the [DaSiamRPN](https:\u002F\u002Fgithub.com\u002Ffoolwood\u002FDaSiamRPN) submodule and download the model (VOT) from [google drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1BtIkp5pB6aqePQGlMb2_Z7bfPy6XEj6H)\n  2. copy it into 'DaSiamRPN\u002Fcode\u002F'\n  3. set default tracker in main.py or run it with --tracker DASIAMRPN\n\n\n#### How to use the deep learning feature\n\n- Download one or some deep learning models from https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodels\u002Fblob\u002Fmaster\u002Fresearch\u002Fobject_detection\u002Fg3doc\u002Fdetection_model_zoo.md\n  and put it into `object_detection\u002Fmodels` directory (you need to create the `models` folder by yourself). The outline of `object_detection` looks like that:\n  + `tf_object_detection.py`\n  + `utils.py`\n  + `models\u002Fssdlite_mobilenet_v2_coco_2018_05_09`\n\nDownload the pre-trained model by clicking this link http:\u002F\u002Fdownload.tensorflow.org\u002Fmodels\u002Fobject_detection\u002Fssdlite_mobilenet_v2_coco_2018_05_09.tar.gz and put it into `object_detection\u002Fmodels`. Create the `models` folder if necessary. Make sure to extract the model.\n\n  **Note**: Default model used in `main_auto.py` is `ssdlite_mobilenet_v2_coco_2018_05_09`. We can\n  set `graph_model_path` in file `main_auto.py` to change the pretrain model\n- Using `main_auto.py` to automatically label data first\n\n  TODO: explain how the user can \n\n### GUI usage\n\nKeyboard, press: \n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_c3df530af255.jpg\">\n\n| Key | Description |\n| --- | --- |\n| a\u002Fd | previous\u002Fnext image |\n| s\u002Fw | previous\u002Fnext class |\n| e | edges |\n| h | help |\n| q | quit |\n\nVideo:\n\n| Key | Description |\n| --- | --- |\n| p | predict the next frames' labels |\n\nMouse:\n  - Use two separate left clicks to do each bounding box\n  - **Right-click** -> **quick delete**!\n  - Use the middle mouse to zoom in and out\n  - Use double click to select a bounding box\n\n## Authors\n\n* **João Cartucho**\n\n    Feel free to contribute\n\n    [![GitHub contributors](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcontributors\u002FCartucho\u002FOpenLabeling.svg)](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fgraphs\u002Fcontributors)\n","# OpenLabeling：开源图像与视频标注工具\n\n[![GitHub 星标](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FCartucho\u002FOpenLabeling.svg?style=social&label=Stars)](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling)\n\n支持多种标注格式的图像标注：\n- PASCAL VOC（即 [darkflow](https:\u002F\u002Fgithub.com\u002Fthtrieu\u002Fdarkflow)）\n- [YOLO darknet](https:\u002F\u002Fgithub.com\u002Fpjreddie\u002Fdarknet)\n- 如需更多格式，请提出新议题...\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_9f8e4e2360c0.gif\" width=\"40%\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_cdc19f1dd338.gif\" width=\"40%\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_662111698621.gif\" width=\"40%\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_153368102e7d.gif\" width=\"40%\">\n\n## 引用\n\n本项目是为以下论文开发的，请考虑引用：\n\n```bibtex\n@INPROCEEDINGS{8594067,\n  author={J. {Cartucho} and R. {Ventura} and M. {Veloso}},\n  booktitle={2018 IEEE\u002FRSJ International Conference on Intelligent Robots and Systems (IROS)}, \n  title={Robust Object Recognition Through Symbiotic Deep Learning In Mobile Robots}, \n  year={2018},\n  pages={2336-2341},\n}\n```\n\n## 最新功能\n\n- 2019年6月：深度学习目标检测模型\n- 2019年5月：[ECCV2018] 带干扰物感知的孪生网络用于视觉目标跟踪\n- 2019年1月：轻松快速调整边界框大小！\n- 2019年1月：使用 OpenCV 跟踪器进行视频目标跟踪！\n- 待办事项：通过 Google Drive 标注照片，以实现“团队在线标注”。\n[新功能讨论](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F3)\n\n## 目录\n\n- [快速入门](#quick-start)\n- [先决条件](#prerequisites)\n- [运行项目](#run-project)\n- [GUI 使用说明](#gui-usage)\n- [作者](#authors)\n\n## 快速入门\n\n要开始使用 YOLO 边界框工具，您需要 [下载最新版本](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Farchive\u002Fv1.3.zip) 或克隆仓库：\n\n```\ngit clone --recurse-submodules git@github.com:Cartucho\u002FOpenLabeling.git\n```\n\n### 先决条件\n\n您需要安装：\n\n- [Python](https:\u002F\u002Fwww.python.org\u002Fdownloads\u002F)\n- [OpenCV](https:\u002F\u002Fopencv.org\u002F) 版本 ≥ 3.0\n    1. `python -mpip install -U pip`\n    1. `python -mpip install -U opencv-python`\n    1. `python -mpip install -U opencv-contrib-python`\n- numpy、tqdm 和 lxml：\n    1. `python -mpip install -U numpy`\n    1. `python -mpip install -U tqdm`\n    1. `python -mpip install -U lxml`\n\n或者，您可以一次性安装所有依赖项：\n\n```\npython -mpip install -U pip\npython -mpip install -U -r requirements.txt\n```\n- [PyTorch](https:\u002F\u002Fpytorch.org\u002Fget-started\u002Flocally\u002F) \n    请访问链接以获取适合您配置的安装指南。\n    \n### 运行项目\n\n步骤如下：\n\n  1. 打开 `main\u002F` 目录\n  2. 将输入图像和视频放入 **input\u002F** 文件夹\n  3. 将类别名称逐行写入 **class_list.txt** 文件\n  4. 运行代码：\n  5. 您可以在 **output\u002F** 文件夹中找到标注结果。\n\n         python main.py [-h] [-i] [-o] [-t] [--tracker TRACKER_TYPE] [-n N_FRAMES]\n\n         可选参数：\n          -h, --help                显示帮助信息并退出\n          -i, --input               图像和视频输入文件夹路径 | 默认：input\u002F\n          -o, --output              输出文件夹路径（如果使用 PASCAL VOC 格式，正确设置此路径很重要）| 默认：output\u002F\n          -t, --thickness           边界框和十字线的粗细（整数）| 默认：-t 1\n          --tracker tracker_type    使用的跟踪器类型：['CSRT', 'KCF','MOSSE', 'MIL', 'BOOSTING', 'MEDIANFLOW', 'TLD', 'GOTURN', 'DASIAMRPN']\n          -n N_FRAMES               跟踪目标的帧数\n  若要使用 DASIAMRPN 跟踪器：\n  1. 安装 [DaSiamRPN](https:\u002F\u002Fgithub.com\u002Ffoolwood\u002FDaSiamRPN) 子模块，并从 [Google Drive](https:\u002F\u002Fdrive.google.com\u002Fdrive\u002Ffolders\u002F1BtIkp5pB6aqePQGlMb2_Z7bfPy6XEj6H) 下载模型（VOT）\n  2. 将其复制到 'DaSiamRPN\u002Fcode\u002F' 目录\n  3. 在 main.py 中设置默认跟踪器，或使用 --tracker DASIAMRPN 运行\n\n#### 如何使用深度学习功能\n\n- 从 https:\u002F\u002Fgithub.com\u002Ftensorflow\u002Fmodels\u002Fblob\u002Fmaster\u002Fresearch\u002Fobject_detection\u002Fg3doc\u002Fdetection_model_zoo.md 下载一个或多个深度学习模型，\n  并将其放入 `object_detection\u002Fmodels` 目录（您需要自行创建 `models` 文件夹）。`object_detection` 的目录结构大致如下：\n  + `tf_object_detection.py`\n  + `utils.py`\n  + `models\u002Fssdlite_mobilenet_v2_coco_2018_05_09`\n\n  点击此链接 http:\u002F\u002Fdownload.tensorflow.org\u002Fmodels\u002Fobject_detection\u002Fssdlite_mobilenet_v2_coco_2018_05_09.tar.gz 下载预训练模型，并将其放入 `object_detection\u002Fmodels`。如有必要，请创建 `models` 文件夹。确保解压模型。\n\n  **注意**：`main_auto.py` 中使用的默认模型是 `ssdlite_mobilenet_v2_coco_2018_05_09`。我们可以通过在 `main_auto.py` 文件中设置 `graph_model_path` 来更改预训练模型。\n- 使用 `main_auto.py` 首先自动标注数据\n\n  待办事项：解释用户如何\n\n### GUI 使用说明\n\n键盘操作：\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_readme_c3df530af255.jpg\">\n\n| 键 | 说明 |\n| --- | --- |\n| a\u002Fd | 上一张\u002F下一张图片 |\n| s\u002Fw | 上一个\u002F下一个类别 |\n| e | 边缘 |\n| h | 帮助 |\n| q | 退出 |\n\n视频操作：\n\n| 键 | 说明 |\n| --- | --- |\n| p | 预测下一帧的标签 |\n\n鼠标操作：\n  - 使用两次单独的左键单击来绘制每个边界框\n  - **右键单击** -> **快速删除**！\n  - 使用鼠标中键进行放大和缩小\n  - 双击可选择一个边界框\n\n## 作者\n\n* **若昂·卡图乔**\n\n    欢迎贡献\n\n    [![GitHub 贡献者](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcontributors\u002FCartucho\u002FOpenLabeling.svg)](https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fgraphs\u002Fcontributors)","# OpenLabeling 快速上手指南\n\nOpenLabeling 是一款开源的图像和视频标注工具，支持 PASCAL VOC 和 YOLO Darknet 等多种标注格式，并具备基于深度学习的自动标注和视频目标跟踪功能。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**：Windows, Linux 或 macOS\n*   **Python**：已安装 Python 环境（推荐 Python 3.6+）\n*   **核心依赖**：\n    *   OpenCV (版本 >= 3.0)\n    *   NumPy, tqdm, lxml\n    *   PyTorch (用于深度学习功能，可选)\n\n> **国内加速建议**：安装依赖时建议使用国内镜像源（如清华源、阿里源）以提升下载速度。\n\n## 安装步骤\n\n### 1. 获取代码\n克隆仓库并初始化子模块（包含必要的跟踪器代码）：\n\n```bash\ngit clone --recurse-submodules git@github.com:Cartucho\u002FOpenLabeling.git\n```\n\n或者下载最新 Release 包解压。\n\n### 2. 安装依赖\n进入项目目录，使用 pip 安装所需库。推荐使用国内镜像源：\n\n```bash\npython -mpip install -U pip -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\npython -mpip install -U -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n如果需要手动安装特定包：\n```bash\npython -mpip install -U opencv-python opencv-contrib-python numpy tqdm lxml -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 3. 配置深度学习模型（可选）\n若需使用自动标注功能，需下载预训练模型：\n1. 下载模型（例如 `ssdlite_mobilenet_v2_coco_2018_05_09`）：http:\u002F\u002Fdownload.tensorflow.org\u002Fmodels\u002Fobject_detection\u002Fssdlite_mobilenet_v2_coco_2018_05_09.tar.gz\n2. 在项目根目录创建 `object_detection\u002Fmodels` 文件夹。\n3. 将解压后的模型文件放入该文件夹中。\n\n## 基本使用\n\n### 1. 准备数据\n进入 `main\u002F` 目录，按以下结构准备文件：\n*   **input\u002F**：放入待标注的图片或视频文件。\n*   **class_list.txt**：新建此文件，每行写入一个类别名称（例如：`person`, `car`）。\n\n### 2. 运行工具\n在终端执行以下命令启动标注界面：\n\n```bash\npython main.py\n```\n\n**常用参数说明：**\n*   `-i`：指定输入文件夹路径（默认 `input\u002F`）。\n*   `-o`：指定输出文件夹路径（默认 `output\u002F`，PASCAL VOC 格式需注意此路径）。\n*   `--tracker`：指定视频跟踪器类型（如 `CSRT`, `KCF`, `DASIAMRPN` 等）。\n*   `-n`：指定自动跟踪的帧数。\n\n**示例：使用 CSRT 跟踪器处理视频并标注接下来 50 帧**\n```bash\npython main.py --tracker CSRT -n 50\n```\n\n### 3. 操作指南\n启动后通过键盘和鼠标进行标注：\n\n**通用快捷键：**\n| 按键 | 功能 |\n| :--- | :--- |\n| `a` \u002F `d` | 上一张 \u002F 下一张图片 |\n| `s` \u002F `w` | 切换上一个 \u002F 下一个类别 |\n| `e` | 显示\u002F隐藏边缘 |\n| `q` | 退出程序 |\n\n**视频模式额外按键：**\n| 按键 | 功能 |\n| :--- | :--- |\n| `p` | 预测并标注后续帧 |\n\n**鼠标操作：**\n*   **左键点击两次**：绘制一个边界框（先点左上角，再点右下角）。\n*   **右键点击**：快速删除选中的边界框。\n*   **滚轮**：缩放视图。\n*   **双击**：选中已有的边界框。\n\n标注完成后，结果文件将保存在 **output\u002F** 目录中。","某自动驾驶初创团队正在为城市道路识别模型准备训练数据，需要处理数千段行车记录仪视频以标注车辆和行人。\n\n### 没有 OpenLabeling 时\n- 标注员只能逐帧手动绘制边界框，面对连续视频流时效率极低，标注一段 1 分钟的视频需耗时数小时。\n- 缺乏视频对象跟踪功能，目标在帧间移动时需重复操作，不仅枯燥且容易导致标注框位置抖动，影响数据一致性。\n- 团队使用的 YOLO 框架要求特定格式，人工转换标注文件极易出错，常因格式不兼容导致模型训练失败。\n- 调整已画好的边界框大小非常笨拙，微调过程繁琐，难以保证标注的精准度。\n\n### 使用 OpenLabeling 后\n- 利用内置的 OpenCV 追踪器（如 CSRT 或 DaSiamRPN），只需在第一帧框选目标，后续帧自动跟随生成标注，视频处理速度提升十倍以上。\n- 自动化的帧间跟踪确保了边界框在时间维度上的平滑与稳定，大幅提高了数据集的质量及模型对动态物体的识别鲁棒性。\n- 原生支持导出 YOLO Darknet 和 PASCAL VOC 等多种主流格式，一键生成适配训练代码的标签文件，彻底消除格式转换痛点。\n- 提供便捷的边界框快速缩放与调整功能，标注员可轻松修正细节，显著提升了单人作业的精确度与流畅感。\n\nOpenLabeling 通过智能视频跟踪与多格式兼容能力，将原本耗时数周的视频标注工程缩短至几天，极大加速了计算机视觉模型的迭代落地。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FCartucho_OpenLabeling_9f8e4e23.gif","Cartucho","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FCartucho_4c5fae40.png","GSoC 2016 and 2017","Imperial College London",null,"https:\u002F\u002Fgithub.com\u002FCartucho\u002Fcurriculum\u002Fblob\u002Fmaster\u002Fjoao_cartucho_cv.pdf","https:\u002F\u002Fgithub.com\u002FCartucho",[80,84],{"name":81,"color":82,"percentage":83},"Python","#3572A5",99.8,{"name":85,"color":86,"percentage":87},"Shell","#89e051",0.2,959,272,"2026-04-05T19:45:13","Apache-2.0","未说明 (基于 Python 和 OpenCV，通常支持 Linux, macOS, Windows)","非必需。仅在启用深度学习自动标注功能时需要（依赖 TensorFlow Object Detection API），具体型号和显存取决于所选模型；视频追踪功能主要依赖 CPU。","未说明",{"notes":96,"python":97,"dependencies":98},"1. 核心功能仅需 OpenCV 即可运行。2. 若使用 DASIAMRPN 追踪器，需手动下载子模块及预训练模型并放入指定目录。3. 若使用深度学习自动标注功能，需自行下载 TensorFlow 预训练模型（如 ssdlite_mobilenet_v2）并配置 object_detection 目录。4. 支持多种标注格式输出（PASCAL VOC, YOLO darknet）。","未说明 (需安装 Python)",[99,100,101,102,103,104,105],"opencv-python>=3.0","opencv-contrib-python>=3.0","numpy","tqdm","lxml","PyTorch (可选，用于特定追踪器)","TensorFlow Object Detection API (可选，用于深度学习自动标注)",[15,14],[108,109,110,111,112,113,114,115,116,117],"darknet","yolo","gui","training-yolo","opencv","labeling-tool","bounding-boxes","object-detection","darkflow","pascal-voc","2026-03-27T02:49:30.150509","2026-04-14T12:35:42.162968",[121,126,131,136,141,146,151],{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},32915,"为什么在 macOS 上按 \"D\" 键切换到下一页时图片不加载？","这是一个已知的兼容性问题。维护者建议尝试重新克隆仓库到另一个目录中测试。如果问题依然存在，可能是特定 OpenCV 版本或 macOS 版本（如 High Sierra）的兼容性问题，建议检查并更新相关依赖库。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F17",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},32916,"标注完成后输出文件为空，但重启程序后 GUI 中仍能看到旧标签，如何解决？","该问题通常与类别数量有关。当使用较多类别（如 5-6 个）时可能出现此错误，而减少到两个类别时则正常工作。请确保文件命名规范正确，并尝试在较少类别下测试以确认是否为类别数量导致的写入失败。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F40",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},32917,"双击边界框后触发单击事件导致程序行为异常，如何解决？","这是 OpenCV 事件监听的一个已知问题。解决方案有两种：1. 使用定时器区分单击和双击（参考 StackOverflow 方案）；2. 修改事件监听代码，增加 `prev_was_double_click` 标志位判断。此外，降级 OpenCV 版本至 3.2.0 可解决该问题，而 4.0.0.21 版本会重现此 bug。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F37",{"id":137,"question_zh":138,"answer_zh":139,"source_url":140},32918,"如何将文本文件转换为 YOLO Darkflow 版本的 XML 文件？","可以通过社区提供的脚本将 .txt 文件转换为 XML 格式。生成的 XML 文件应包含 `\u003Cannotation>` 根节点，以及 `\u003Cfolder>`, `\u003Cfilename>`, `\u003Csize>`（含 width, height, depth）等字段。具体实现可参考相关 Pull Request 或手动编写转换逻辑，确保单类对象检测时 XML 结构完整。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F15",{"id":142,"question_zh":143,"answer_zh":144,"source_url":145},32919,"设置输出目录时出现 FileNotFoundError，路径中缺少反斜杠怎么办？","在 Windows 系统中，路径拼接时可能缺少必要的反斜杠。临时解决方法是在代码中手动添加 `'\\\\'`，例如：`new_path = os.path.join(OUTPUT_DIR, ann_dir + '\\\\')`。维护者已在后续版本中修复此问题，建议升级到最新版本以避免手动修改代码。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F69",{"id":147,"question_zh":148,"answer_zh":149,"source_url":150},32920,"如何使用 Darknet YOLO 格式的标注文件绘制边界框，而不是默认的 PASCAL_VOC 格式？","默认情况下工具会从 `PASCAL_VOC` 文件夹读取标注，若只有 `YOLO_darknet` 格式数据，需修改代码使其优先读取 Darknet 文件夹。社区建议添加一个开关参数（如 `--dar-dir`）来指定 Darknet 标注目录，并在 `PASCAL_VOC` 不存在时自动回退到 YOLO 格式。可提交 PR 实现此功能。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F59",{"id":152,"question_zh":153,"answer_zh":154,"source_url":155},32921,"切换带有预测边界框的视频帧时出现 'no element found: line 1, column 0' 错误，如何解决？","该错误通常由标注文件中存在多余的空行（如两个 `\\n`）导致 XML 解析失败。请检查对应的标注文件，删除末尾或中间的空行，确保 XML 内容从第一行开始且格式完整。清理后重新运行即可避免此解析错误。","https:\u002F\u002Fgithub.com\u002FCartucho\u002FOpenLabeling\u002Fissues\u002F48",[157,161,165,169],{"id":158,"version":159,"summary_zh":76,"released_at":160},247618,"v1.3","2018-09-06T11:01:08",{"id":162,"version":163,"summary_zh":76,"released_at":164},247619,"v1.2","2018-03-31T12:33:32",{"id":166,"version":167,"summary_zh":76,"released_at":168},247620,"v1.1","2018-03-08T10:10:16",{"id":170,"version":171,"summary_zh":76,"released_at":172},247621,"v1.0","2018-02-04T03:29:46"]