[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-fidler-lab--curve-gcn":3,"tool-fidler-lab--curve-gcn":64},[4,17,26,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,2,"2026-04-03T11:11:01",[13,14,15],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":23,"last_commit_at":32,"category_tags":33,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,34,35,36,15,37,38,13,39],"数据工具","视频","插件","其他","语言模型","音频",{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":10,"last_commit_at":46,"category_tags":47,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,38,37],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74913,"2026-04-05T10:44:17",[38,14,13,37],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":23,"last_commit_at":62,"category_tags":63,"status":16},2471,"tesseract","tesseract-ocr\u002Ftesseract","Tesseract 是一款历史悠久且备受推崇的开源光学字符识别（OCR）引擎，最初由惠普实验室开发，后由 Google 维护，目前由全球社区共同贡献。它的核心功能是将图片中的文字转化为可编辑、可搜索的文本数据，有效解决了从扫描件、照片或 PDF 文档中提取文字信息的难题，是数字化归档和信息自动化的重要基础工具。\n\n在技术层面，Tesseract 展现了强大的适应能力。从版本 4 开始，它引入了基于长短期记忆网络（LSTM）的神经网络 OCR 引擎，显著提升了行识别的准确率；同时，为了兼顾旧有需求，它依然支持传统的字符模式识别引擎。Tesseract 原生支持 UTF-8 编码，开箱即用即可识别超过 100 种语言，并兼容 PNG、JPEG、TIFF 等多种常见图像格式。输出方面，它灵活支持纯文本、hOCR、PDF、TSV 等多种格式，方便后续数据处理。\n\nTesseract 主要面向开发者、研究人员以及需要构建文档处理流程的企业用户。由于它本身是一个命令行工具和库（libtesseract），不包含图形用户界面（GUI），因此最适合具备一定编程能力的技术人员集成到自动化脚本或应用程序中",73286,"2026-04-03T01:56:45",[13,14],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":81,"owner_twitter":80,"owner_website":82,"owner_url":83,"languages":80,"stars":84,"forks":85,"last_commit_at":86,"license":87,"difficulty_score":88,"env_os":89,"env_gpu":90,"env_ram":91,"env_deps":92,"category_tags":97,"github_topics":80,"view_count":23,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":98,"updated_at":99,"faqs":100,"releases":140},2123,"fidler-lab\u002Fcurve-gcn","curve-gcn","Official PyTorch code for Curve-GCN (CVPR 2019)","Curve-GCN 是一款基于 PyTorch 开发的开源深度学习模型，源自 CVPR 2019 的研究成果，旨在实现快速、交互式的物体边界标注。传统的人工描边标注耗时费力，而早期的自动化工具（如 Polygon-RNN）采用序列生成方式，效率较低且难以处理曲线物体。Curve-GCN 通过引入图卷积网络（GCN），革新了这一流程：它能同时预测所有边界顶点，彻底摆脱了顺序生成的限制。\n\n该工具的核心优势在于速度与灵活性。它不仅支持多边形，还能直接生成平滑的样条曲线，完美适配直线与曲面物体的标注需求。在性能上，Curve-GCN 实现了实时运行，其交互式模式速度比前代主流方法快约 100 倍，自动化模式也快 10 倍，显著提升了数据标注的效率与精度。\n\nCurve-GCN 主要面向计算机视觉领域的研究人员、算法工程师以及需要构建高质量数据集的开发团队。对于希望优化标注工作流或研究交互式图像分割技术的专业人士而言，这是一个极具价值的参考实现。需要注意的是，该项目代码需注册获取，且依赖特定的旧版环境（如 Python 2.7 和 PyTorch 0.4），适合具备一定深度学习部署经验的开发者","Curve-GCN 是一款基于 PyTorch 开发的开源深度学习模型，源自 CVPR 2019 的研究成果，旨在实现快速、交互式的物体边界标注。传统的人工描边标注耗时费力，而早期的自动化工具（如 Polygon-RNN）采用序列生成方式，效率较低且难以处理曲线物体。Curve-GCN 通过引入图卷积网络（GCN），革新了这一流程：它能同时预测所有边界顶点，彻底摆脱了顺序生成的限制。\n\n该工具的核心优势在于速度与灵活性。它不仅支持多边形，还能直接生成平滑的样条曲线，完美适配直线与曲面物体的标注需求。在性能上，Curve-GCN 实现了实时运行，其交互式模式速度比前代主流方法快约 100 倍，自动化模式也快 10 倍，显著提升了数据标注的效率与精度。\n\nCurve-GCN 主要面向计算机视觉领域的研究人员、算法工程师以及需要构建高质量数据集的开发团队。对于希望优化标注工作流或研究交互式图像分割技术的专业人士而言，这是一个极具价值的参考实现。需要注意的是，该项目代码需注册获取，且依赖特定的旧版环境（如 Python 2.7 和 PyTorch 0.4），适合具备一定深度学习部署经验的开发者使用。","# Curve-GCN\n\nThis is the official PyTorch implementation of Curve-GCN (CVPR 2019). This repository allows you to train new Curve-GCN models. For technical details, please refer to:  \n----------------------- ------------------------------------\n**Fast Interactive Object Annotation with Curve-GCN**  \n[Huan Ling](http:\u002F\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002F)\\* \u003Csup>1,2\u003C\u002Fsup>, [Jun Gao](http:\u002F\u002Fwww.cs.toronto.edu\u002F~jungao\u002F)\\* \u003Csup>1,2\u003C\u002Fsup>, [Amlan Kar](http:\u002F\u002Fwww.cs.toronto.edu\u002F~amlan\u002F)\u003Csup>1,2\u003C\u002Fsup>, [Wenzheng Chen](http:\u002F\u002Fwww.cs.toronto.edu\u002F~wenzheng\u002F)\u003Csup>1,2\u003C\u002Fsup>, [Sanja Fidler](http:\u002F\u002Fwww.cs.toronto.edu\u002F~fidler\u002F)\u003Csup>1,2,3\u003C\u002Fsup>   \n\u003Csup>1\u003C\u002Fsup> University of Toronto  \u003Csup>2\u003C\u002Fsup> Vector Institute \u003Csup>3\u003C\u002Fsup> NVIDIA  \n**[[Paper](https:\u002F\u002Farxiv.org\u002Fpdf\u002F1903.06874.pdf)] [[Video](https:\u002F\u002Fyoutu.be\u002FycD2BtO-QzU)] [[Demo Coming Soon]()] [[Supplementary](http:\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002Fnotes\u002Fsupplementary_curvegcn.pdf)]**\n\n**CVPR 2019**\n\n\u003Cimg src = \"docs\u002Fmodel.png\" width=\"56%\"\u002F>\n\n*Manually labeling objects by tracing their boundaries is\na laborious process. In Polyrnn, the authors proposed Polygon-\nRNN that produces polygonal annotations in a recurrent\nmanner using a CNN-RNN architecture, allowing interactive\ncorrection via humans-in-the-loop. We propose a new framework\nthat alleviates the sequential nature of Polygon-RNN,\nby predicting all vertices simultaneously using a Graph Convolutional\nNetwork (GCN). Our model is trained end-to-end,\nand runs in real time. It supports object annotation by either\npolygons or splines, facilitating labeling efficiency for both\nline-based and curved objects. We show that Curve-GCN outperforms\nall existing approaches in automatic mode, including\nthe powerful PSP-DeepLab and is significantly\nmore efficient in interactive mode than Polygon-RNN++.\nOur model runs at 29.3ms in automatic, and 2.6ms in interactive\nmode, making it 10x and 100x faster than Polygon-\nRNN++.*  \n(\\* denotes equal contribution)    \n----------------------- ------------------------------------\n\n\n\n# Where is the code?\nTo get the code, please [signup](http:\u002F\u002Fwww.cs.toronto.edu\u002Fannotation\u002Fcurvegcn\u002Fcode_signup\u002F) here. We also provide the [dataloader](https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Ftree\u002Fdataloader). We will be using GitHub to keep track of issues with the code and to update on availability of newer versions (also available on website and through e-mail to signed up users).\n\nIf you use this code, please cite:\n\n    @inproceedings{CurveGCN2019,\n    title={Fast Interactive Object Annotation with Curve-GCN},\n    author={Huan Ling and Jun Gao and Amlan Kar and Wenzheng Chen and Sanja Fidler},\n    booktitle={CVPR},\n    year={2019}\n    }\n\n\n# License\n\nThis work is licensed under a *GNU GENERAL PUBLIC LICENSE Version 3* License.\n\n\n# Environment Setup\nAll the code has been run and tested on Ubuntu 16.04, Python 2.7.12, Pytorch 0.4.1, CUDA 9.0, TITAN X\u002FXp and GTX 1080Ti GPUs\n\n- Go into the downloaded code directory\n```\ncd \u003Cpath_to_downloaded_directory>\n```\n- Setup python environment\n```\nvirtualenv env\nsource env\u002Fbin\u002Factivate\npip install -r requirements.txt\n```\n- Add the project to PYTHONPATH  \n```\nexport PYTHONPATH=$PWD\n```\n\n## Data \n\n### Cityscapes\n- Download the Cityscapes dataset (leftImg8bit\\_trainvaltest.zip) from the official [website](https:\u002F\u002Fwww.cityscapes-dataset.com\u002Fdownloads\u002F) [11 GB]\n- Our processed annotation files are included in the download file you get after signing up\n- From the root directory, run the following command with appropriate paths to get the annotation files ready for your machine\n```\npython Scripts\u002Fdata\u002Fchange_paths.py --city_dir \u003Cpath_to_downloaded_leftImg8bit_folder> --json_dir \u003Cpath_to_downloaded_annotation_file> --out_dir \u003Coutput_dir>\n```\n\n## Training\n\n- Download the pre-trained Pytorch Resnet-50 from [here](https:\u002F\u002Fdownload.pytorch.org\u002Fmodels\u002Fresnet50-19c8e357.pth)\n\n### Train Spline GCN\n\n- Modify \"exp\\_dir\", \"encoder\\_reload\", \"data\\_dir\" attributes at Experiments\u002Fgnn-active-spline.json\n- Run script:\n```\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline.py --exp Experiments\u002Fgnn-active-spline.json\n```\n\nCheckpoint to reproduce numbers from the paper is available at \"checkpoints\u002FSpline_GCN_epoch8_step21000.pth\"\n\n\n### Finetune Spline GCN with Differentiable Rendering\n- Modify \"exp\\_dir\", \"encoder\\_reload\", \"data\\_dir\" attributes at Experiments\u002Fgnn-active-spline.json\n- Modify \"xe\\_initializer\" to be the best checkpoint from the last step. \n- Run script:\n```\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline_diffrender.py --exp Experiments\u002Fgnn-active-spline-diff-render.json\n```\n\nCheckpoint to reproduce numbers from the paper is available at \"checkpoints\u002FSpline_GCN_diffrender_epoch6_step18000.pth\"\n\n\n## Prediction\nGenerate prediction masks:  \n```\npython Scripts\u002Fprediction\u002Fgenerate_annotation_from_active_spline.py --exp \u003Cpath to exp file> --output_dir \u003Cpath to output dir> --reload \u003Cpath to checkpoint> \n```\n\nCalculate IOU:  \n```\npython Scripts\u002Fget_scores.py --pred \u003Cpath to output dir> --output  \u003Cpath to output txt file>\n```\n","# Curve-GCN\n\n这是 Curve-GCN（CVPR 2019）的官方 PyTorch 实现。该仓库允许您训练新的 Curve-GCN 模型。有关技术细节，请参阅：  \n----------------------- ------------------------------------\n**使用 Curve-GCN 进行快速交互式目标标注**  \n[Huan Ling](http:\u002F\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002F)\\* \u003Csup>1,2\u003C\u002Fsup>, [Jun Gao](http:\u002F\u002Fwww.cs.toronto.edu\u002F~jungao\u002F)\\* \u003Csup>1,2\u003C\u002Fsup>, [Amlan Kar](http:\u002F\u002Fwww.cs.toronto.edu\u002F~amlan\u002F)\u003Csup>1,2\u003C\u002Fsup>, [Wenzheng Chen](http:\u002F\u002Fwww.cs.toronto.edu\u002F~wenzheng\u002F)\u003Csup>1,2\u003C\u002Fsup>, [Sanja Fidler](http:\u002F\u002Fwww.cs.toronto.edu\u002F~fidler\u002F)\u003Csup>1,2,3\u003C\u002Fsup>   \n\u003Csup>1\u003C\u002Fsup> 多伦多大学  \u003Csup>2\u003C\u002Fsup> Vector Institute \u003Csup>3\u003C\u002Fsup> NVIDIA  \n**[[论文](https:\u002F\u002Farxiv.org\u002Fpdf\u002F1903.06874.pdf)] [[视频](https:\u002F\u002Fyoutu.be\u002FycD2BtO-QzU)] [[演示即将发布]()] [[补充材料](http:\u002F\u002Fwww.cs.toronto.edu\u002F~linghuan\u002Fnotes\u002Fsupplementary_curvegcn.pdf)]**\n\n**CVPR 2019**\n\n\u003Cimg src = \"docs\u002Fmodel.png\" width=\"56%\"\u002F>\n\n*通过描绘物体边界来手动标注对象是一项繁重的工作。在 Polyrnn 中，作者提出了 Polygon-RNN，它利用 CNN-RNN 架构以递归方式生成多边形标注，并允许通过人机协作进行交互式修正。我们提出了一种新框架，通过使用图卷积网络（GCN）同时预测所有顶点，从而缓解了 Polygon-RNN 的顺序性特征。我们的模型采用端到端训练，可实时运行。它支持使用多边形或样条曲线进行目标标注，从而提高基于线条和曲线对象的标注效率。我们证明，在自动模式下，Curve-GCN 的表现优于所有现有方法，包括强大的 PSP-DeepLab；而在交互式模式下，其效率显著高于 Polygon-RNN++。我们的模型在自动模式下的运行时间为 29.3 毫秒，在交互式模式下的运行时间为 2.6 毫秒，分别比 Polygon-RNN++ 快 10 倍和 100 倍。*  \n(\\* 表示共同第一作者)    \n----------------------- ------------------------------------\n\n\n\n# 代码在哪里？\n要获取代码，请在此处 [注册](http:\u002F\u002Fwww.cs.toronto.edu\u002Fannotation\u002Fcurvegcn\u002Fcode_signup\u002F)。我们还提供了 [数据加载器](https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Ftree\u002Fdataloader)。我们将使用 GitHub 来跟踪代码中的问题，并更新新版本的可用性（也可在网站上查看，并通过电子邮件通知已注册用户）。\n\n如果您使用此代码，请引用：\n\n    @inproceedings{CurveGCN2019,\n    title={Fast Interactive Object Annotation with Curve-GCN},\n    author={Huan Ling and Jun Gao and Amlan Kar and Wenzheng Chen and Sanja Fidler},\n    booktitle={CVPR},\n    year={2019}\n    }\n\n\n# 许可证\n\n本作品采用 *GNU 通用公共许可证第 3 版* 许可。\n\n# 环境设置\n所有代码均已在 Ubuntu 16.04、Python 2.7.12、Pytorch 0.4.1、CUDA 9.0、TITAN X\u002FXp 和 GTX 1080Ti GPU 上运行并测试过。\n\n- 进入下载的代码目录\n```\ncd \u003Cpath_to_downloaded_directory>\n```\n- 设置 Python 环境\n```\nvirtualenv env\nsource env\u002Fbin\u002Factivate\npip install -r requirements.txt\n```\n- 将项目添加到 PYTHONPATH  \n```\nexport PYTHONPATH=$PWD\n```\n\n## 数据 \n\n### Cityscapes\n- 从官方网站 [下载 Cityscapes 数据集（leftImg8bit_trainvaltest.zip）](https:\u002F\u002Fwww.cityscapes-dataset.com\u002Fdownloads\u002F) [11 GB]\n- 我们的处理后的标注文件包含在您注册后获得的下载文件中。\n- 在根目录下，使用适当的路径运行以下命令，以准备适用于您机器的标注文件：\n```\npython Scripts\u002Fdata\u002Fchange_paths.py --city_dir \u003Cpath_to_downloaded_leftImg8bit_folder> --json_dir \u003Cpath_to_downloaded_annotation_file> --out_dir \u003Coutput_dir>\n```\n\n## 训练\n\n- 从 [这里](https:\u002F\u002Fdownload.pytorch.org\u002Fmodels\u002Fresnet50-19c8e357.pth) 下载预训练的 PyTorch Resnet-50。\n\n### 训练样条 GCN\n\n- 修改 Experiments\u002Fgnn-active-spline.json 中的 “exp_dir”、“encoder_reload” 和 “data_dir” 属性。\n- 运行脚本：\n```\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline.py --exp Experiments\u002Fgnn-active-spline.json\n```\n\n用于复现论文中结果的检查点位于 “checkpoints\u002FSpline_GCN_epoch8_step21000.pth”\n\n\n### 使用可微渲染对样条 GCN 进行微调\n\n- 修改 Experiments\u002Fgnn-active-spline.json 中的 “exp_dir”、“encoder_reload” 和 “data_dir” 属性。\n- 将 “xe_initializer” 设置为上一步的最佳检查点。\n- 运行脚本：\n```\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline_diffrender.py --exp Experiments\u002Fgnn-active-spline-diff-render.json\n```\n\n用于复现论文中结果的检查点位于 “checkpoints\u002FSpline_GCN_diffrender_epoch6_step18000.pth”\n\n\n## 预测\n生成预测掩码：  \n```\npython Scripts\u002Fprediction\u002Fgenerate_annotation_from_active_spline.py --exp \u003Cpath to exp file> --output_dir \u003Cpath to output dir> --reload \u003Cpath to checkpoint> \n```\n\n计算 IOU：  \n```\npython Scripts\u002Fget_scores.py --pred \u003Cpath to output dir> --output  \u003Cpath to output txt file>\n```","# Curve-GCN 快速上手指南\n\nCurve-GCN 是 CVPR 2019 提出的基于图卷积网络（GCN）的交互式物体标注工具，支持多边形和样条曲线标注，推理速度极快。\n\n## 1. 环境准备\n\n本项目已在以下环境中测试通过，建议参考此配置搭建环境：\n- **操作系统**: Ubuntu 16.04\n- **Python**: 2.7.12\n- **PyTorch**: 0.4.1\n- **CUDA**: 9.0\n- **GPU**: TITAN X\u002FXp 或 GTX 1080Ti\n\n**前置依赖**：\n- 需先注册并下载源代码及预处理后的标注文件（访问[官方注册页](http:\u002F\u002Fwww.cs.toronto.edu\u002Fannotation\u002Fcurvegcn\u002Fcode_signup\u002F)）。\n- 需自行下载 Cityscapes 数据集 (`leftImg8bit_trainvaltest.zip`)。\n- 需下载预训练的 ResNet-50 模型。\n\n> **国内加速提示**：由于项目较老且依赖特定版本，若无法直接访问 PyTorch 官网下载 `resnet50-19c8e357.pth`，可在国内开源镜像站（如 OpenXLab 或百度 AI Studio 社区资源）搜索该文件名下载。\n\n## 2. 安装步骤\n\n### 2.1 获取代码与数据\n假设已将下载的代码解压至 `\u003Cpath_to_downloaded_directory>`，并将 Cityscapes 图片和注册获得的标注文件放置在本地。\n\n### 2.2 配置 Python 环境\n进入项目目录并创建虚拟环境：\n\n```bash\ncd \u003Cpath_to_downloaded_directory>\nvirtualenv env\nsource env\u002Fbin\u002Factivate\npip install -r requirements.txt\n```\n\n> **优化建议**：若 `pip install` 速度慢，可指定国内源：\n> `pip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n\n### 2.3 设置环境变量\n将项目路径加入 `PYTHONPATH`：\n\n```bash\nexport PYTHONPATH=$PWD\n```\n\n### 2.4 准备数据\n运行脚本处理 Cityscapes 数据路径（请替换为实际路径）：\n\n```bash\npython Scripts\u002Fdata\u002Fchange_paths.py --city_dir \u003Cpath_to_downloaded_leftImg8bit_folder> --json_dir \u003Cpath_to_downloaded_annotation_file> --out_dir \u003Coutput_dir>\n```\n\n### 2.5 下载预训练骨干网络\n下载 ResNet-50 预训练权重并放置于合适位置（代码中需引用）：\n链接：https:\u002F\u002Fdownload.pytorch.org\u002Fmodels\u002Fresnet50-19c8e357.pth\n\n## 3. 基本使用\n\n### 3.1 训练模型 (Spline GCN)\n首先修改配置文件 `Experiments\u002Fgnn-active-spline.json`，更新 `exp_dir`、`encoder_reload` (ResNet-50 路径) 和 `data_dir`。\n\n执行训练命令：\n```bash\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline.py --exp Experiments\u002Fgnn-active-spline.json\n```\n*注：复现论文结果的检查点位于 `checkpoints\u002FSpline_GCN_epoch8_step21000.pth`。*\n\n### 3.2 微调模型 (可选，带可微渲染)\n若需进行带可微渲染的微调，修改上述 json 文件中的 `xe_initializer` 为上一步的最佳检查点，并使用新配置文件运行：\n```bash\npython Scripts\u002Ftrain\u002Ftrain_gnn_active_spline_diffrender.py --exp Experiments\u002Fgnn-active-spline-diff-render.json\n```\n*注：复现论文结果的检查点位于 `checkpoints\u002FSpline_GCN_diffrender_epoch6_step18000.pth`。*\n\n### 3.3 生成预测结果\n使用训练好的模型生成标注掩码：\n\n```bash\npython Scripts\u002Fprediction\u002Fgenerate_annotation_from_active_spline.py --exp \u003Cpath to exp file> --output_dir \u003Cpath to output dir> --reload \u003Cpath to checkpoint> \n```\n\n### 3.4 评估结果 (计算 IoU)\n计算预测结果与真实值的交并比（IoU）：\n\n```bash\npython Scripts\u002Fget_scores.py --pred \u003Cpath to output dir> --output  \u003Cpath to output txt file>\n```","某自动驾驶公司的数据标注团队正急需处理城市街景图像（Cityscapes 数据集），以训练高精度的道路与车辆感知模型。\n\n### 没有 curve-gcn 时\n- **人工成本极高**：标注员必须手动逐点描绘物体边界，尤其是对于弯曲的车道线或不规则车辆轮廓，耗时费力且容易疲劳出错。\n- **交互效率低下**：采用传统的 Polygon-RNN 等序列生成模型时，顶点需按顺序逐个预测，人工修正一个错误顶点往往需要等待漫长的序列重算，响应延迟严重。\n- **曲线拟合困难**：现有工具多基于多边形近似，难以平滑地表达弧形物体，导致标注数据在几何形状上不够精准，影响下游模型训练效果。\n- **自动化精度不足**：全自动模式下，旧有算法对复杂场景的分割准确率较低，无法达到生产级要求，仍需大量人工二次复核。\n\n### 使用 curve-gcn 后\n- **标注速度飞跃**：curve-gcn 利用图卷积网络同时预测所有顶点，将交互式标注的延迟从数百毫秒降低至 2.6 毫秒，实现了真正的实时人机协作。\n- **灵活支持样条曲线**：该工具原生支持多边形和样条曲线两种模式，能完美贴合弯道、车轮等弧形结构，显著提升了标注数据的几何保真度。\n- **自动化性能领先**：在无需人工干预的自动模式下，curve-gcn 的分割精度超越了当时强大的 PSP-DeepLab 等主流方案，大幅减少了人工复核工作量。\n- **端到端高效训练**：团队可直接基于 PyTorch 环境进行端到端训练，快速适配特定场景数据，整体标注流水线效率提升超过 10 倍。\n\ncurve-gcn 通过革新性的并行顶点预测机制，将繁琐的物体轮廓标注从“手工活”转变为高效的实时智能交互过程。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Ffidler-lab_curve-gcn_b2aaecaf.png","fidler-lab","Sanja Fidler's Lab","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Ffidler-lab_a7400c2d.png","Sanja Fidler's lab at the University of Toronto",null,"fidler@cs.toronto.edu","www.cs.toronto.edu\u002F~fidler\u002Fstudents.html","https:\u002F\u002Fgithub.com\u002Ffidler-lab",841,132,"2026-03-17T09:17:15","GPL-3.0",4,"Linux (Ubuntu 16.04)","必需，NVIDIA TITAN X\u002FXp 或 GTX 1080Ti，CUDA 9.0","未说明",{"notes":93,"python":94,"dependencies":95},"代码需在 Ubuntu 16.04 环境下运行，使用 Python 2.7 和 PyTorch 0.4.1（版本较老）。需手动下载 Cityscapes 数据集及预训练的 ResNet-50 模型。项目代码需注册后获取，非完全开源直接下载。建议使用 virtualenv 创建隔离环境。","2.7.12",[96],"torch==0.4.1",[14,34],"2026-03-27T02:49:30.150509","2026-04-06T07:16:14.260042",[101,106,111,116,121,126,131,135],{"id":102,"question_zh":103,"answer_zh":104,"source_url":105},9759,"如何运行预测脚本以生成标注掩码？正确的命令路径是什么？","README 中的路径曾有误，已更新。生成预测掩码的正确命令是：`python Scripts\u002Fprediction\u002Fgenerate_annotation_from_active_spline.py --exp \u003Cexp 文件路径> --output_dir \u003C输出目录路径> --reload \u003C检查点路径>`。请确保替换尖括号内的内容为实际路径。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F4",{"id":107,"question_zh":108,"answer_zh":109,"source_url":110},9760,"为什么我无法访问代码下载页面或注册页面？","项目代码当时正在进行重构，暂时不对外分享。维护者建议稍后再试。在此期间，用户可以下载相关的 Polygon-RNN 代码作为替代方案。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F9",{"id":112,"question_zh":113,"answer_zh":114,"source_url":115},9761,"是否可以通过电子邮件直接索取代码？","不可以。通过电子邮件共享代码严格违反了许可协议。用户必须通过官方网站注册并等待访问权限批准，不能私下索要代码。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F1",{"id":117,"question_zh":118,"answer_zh":119,"source_url":120},9762,"该模型是否支持在 Davis 数据集等高精度的像素级掩码上进行评估？","Curve-GCN 和 PolygonRNN 设计用于处理稀疏多边形数据，而非二进制像素掩码。Davis 数据集是像素级标注，不包含稀疏多边形数据。虽然可以使用 OpenCV (CV2) 等工具从二进制掩码估算密集多边形，但这并非本项目的核心用途。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F2",{"id":122,"question_zh":123,"answer_zh":124,"source_url":125},9763,"交互式模式图表中，为什么平均 IoU 没有达到 100%，且起始 IoU 与表格数据不一致？","1. 图表展示的是用户点击次数与 IoU 的关系。理论上，当点击次数等于数据集中的平均多边形长度时，IoU 会趋近于 100%，但该长度超出了图表 X 轴的限制（16）。2. 起始 IoU 约为 77% 是因为此时已有少量非零点击；若点击数为 0，IoU 则对应表格中的约 73%。3. 平均修正次数的计算方式通常是将每个类别的总修正次数除以该类别的实例总数，然后对所有类别取平均。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F18",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},9764,"如何理解“可微分精度损失”（differentiable accuracy loss）及其实现原理？","可以将此过程视为一个渲染函数 R，输入为顶点坐标 P，输出为预测掩码 M（即 M = R(P)）。该函数是可微分的，意味着梯度可以从掩码 M 反向传播回顶点 P，从而允许使用精度损失来监督顶点位置的学习。具体实现细节可参考 OpenDR 库。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F6",{"id":132,"question_zh":133,"answer_zh":134,"source_url":105},9765,"手动模式（manual mode）如何使用？修改配置文件后只得到 PNG 结果怎么办？","关于手动模式的详细用法，需确保正确使用预测脚本（见相关 FAQ）。如果修改 `gnn-active-spline-diff-render.json` 后仅获得 PNG 结果，可能是未正确调用生成标注的脚本或未指定正确的输出格式参数。此外，若出现 matplotlib 后端警告，需确保在导入 `pylab` 或 `matplotlib.pyplot` 之前调用 `matplotlib.use()`。",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},9766,"申请代码访问权限后多久能收到链接？如果迟迟未收到该怎么办？","访问权限由维护者手动审批。有用户反馈在使用大学邮箱申请两周后仍未收到链接。建议在 GitHub Issue 中礼貌地提醒维护者（如 @arieling），一旦确认，维护者通常会手动处理并标记为完成。","https:\u002F\u002Fgithub.com\u002Ffidler-lab\u002Fcurve-gcn\u002Fissues\u002F3",[]]