[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-meetps--pytorch-semseg":3,"tool-meetps--pytorch-semseg":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 真正成长为懂上",147882,2,"2026-04-09T11:32:47",[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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[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},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":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,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":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":77,"owner_email":76,"owner_twitter":76,"owner_website":78,"owner_url":79,"languages":80,"stars":85,"forks":86,"last_commit_at":87,"license":88,"difficulty_score":10,"env_os":89,"env_gpu":90,"env_ram":89,"env_deps":91,"category_tags":100,"github_topics":101,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":106,"updated_at":107,"faqs":108,"releases":138},5912,"meetps\u002Fpytorch-semseg","pytorch-semseg","Semantic Segmentation Architectures Implemented in PyTorch","pytorch-semseg 是一个基于 PyTorch 框架的开源项目，旨在复现并整合多种主流的语义分割网络架构。它主要解决了研究人员和开发者在复现经典论文模型时面临的代码分散、环境依赖复杂（如旧版模型常依赖 Caffe）以及数据加载繁琐等痛点，让用户能更专注于算法改进而非基础搭建。\n\n该工具非常适合计算机视觉领域的研究人员、算法工程师以及深度学习爱好者使用。无论是需要快速验证新想法的学术探索，还是构建工业级图像分析系统的工程落地，都能从中获益。\n\n其核心技术亮点在于“开箱即用”的完整性：不仅实现了 PSPNet、ICNet、FCN、U-Net、Segnet 等经典网络，还特别优化了预训练模型的加载流程（例如 PSPNet 已移除对 Caffe 的依赖）。此外，项目内置了 CamVid、Cityscapes、Pascal VOC 等主流数据集的专用数据加载器，并提供了灵活的 YAML 配置文件，支持用户轻松调整模型结构、优化器参数及数据增强策略，极大地降低了语义分割任务的入门与实验门槛。","# pytorch-semseg\n\n[![license](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fmashape\u002Fapistatus.svg)](https:\u002F\u002Fgithub.com\u002Fmeetshah1995\u002Fpytorch-semseg\u002Fblob\u002Fmaster\u002FLICENSE)\n[![pypi](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fpytorch_semseg.svg)](https:\u002F\u002Fpypi.python.org\u002Fpypi\u002Fpytorch-semseg\u002F0.1.2)\n[![DOI](https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.1185075.svg)](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.1185075)\n\n\n\n## Semantic Segmentation Algorithms Implemented in PyTorch\n\nThis repository aims at mirroring popular semantic segmentation architectures in PyTorch. \n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=iXh9aCK3ubs\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002FagvJOPF.gif\" width=\"364\"\u002F>\u003C\u002Fa>\n\u003Cimg src=\"https:\u002F\u002Fmeetshah1995.github.io\u002Fimages\u002Fblog\u002Fss\u002Fptsemseg.png\" width=\"49%\"\u002F>\n\u003C\u002Fp>\n\n\n### Networks implemented\n\n* [PSPNet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1612.01105) - With support for loading pretrained models w\u002Fo caffe dependency\n* [ICNet](https:\u002F\u002Farxiv.org\u002Fpdf\u002F1704.08545.pdf) - With optional batchnorm and pretrained models\n* [FRRN](https:\u002F\u002Farxiv.org\u002Fabs\u002F1611.08323) - Model A and B\n* [FCN](https:\u002F\u002Farxiv.org\u002Fabs\u002F1411.4038) - All 1 (FCN32s), 2 (FCN16s) and 3 (FCN8s) stream variants\n* [U-Net](https:\u002F\u002Farxiv.org\u002Fabs\u002F1505.04597) - With optional deconvolution and batchnorm\n* [Link-Net](https:\u002F\u002Fcodeac29.github.io\u002Fprojects\u002Flinknet\u002F) - With multiple resnet backends\n* [Segnet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1511.00561) - With Unpooling using Maxpool indices\n\n\n#### Upcoming \n\n* [E-Net](https:\u002F\u002Farxiv.org\u002Fabs\u002F1606.02147)\n* [RefineNet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1611.06612)\n\n### DataLoaders implemented\n\n* [CamVid](http:\u002F\u002Fmi.eng.cam.ac.uk\u002Fresearch\u002Fprojects\u002FVideoRec\u002FCamVid\u002F)\n* [Pascal VOC](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC\u002Fvoc2012\u002Fsegexamples\u002Findex.html)\n* [ADE20K](http:\u002F\u002Fgroups.csail.mit.edu\u002Fvision\u002Fdatasets\u002FADE20K\u002F)\n* [MIT Scene Parsing Benchmark](http:\u002F\u002Fdata.csail.mit.edu\u002Fplaces\u002FADEchallenge\u002FADEChallengeData2016.zip)\n* [Cityscapes](https:\u002F\u002Fwww.cityscapes-dataset.com\u002F)\n* [NYUDv2](http:\u002F\u002Fcs.nyu.edu\u002F~silberman\u002Fdatasets\u002Fnyu_depth_v2.html)\n* [Sun-RGBD](http:\u002F\u002Frgbd.cs.princeton.edu\u002F)\n\n\n### Requirements\n\n* pytorch >=0.4.0\n* torchvision ==0.2.0\n* scipy\n* tqdm\n* tensorboardX\n\n#### One-line installation\n    \n`pip install -r requirements.txt`\n\n### Data\n\n* Download data for desired dataset(s) from list of URLs [here](https:\u002F\u002Fmeetshah1995.github.io\u002Fsemantic-segmentation\u002Fdeep-learning\u002Fpytorch\u002Fvisdom\u002F2017\u002F06\u002F01\u002Fsemantic-segmentation-over-the-years.html#sec_datasets).\n* Extract the zip \u002F tar and modify the path appropriately in your `config.yaml`\n\n\n### Usage\n\n**Setup config file**\n\n```yaml\n# Model Configuration\nmodel:\n    arch: \u003Cname> [options: 'fcn[8,16,32]s, unet, segnet, pspnet, icnet, icnetBN, linknet, frrn[A,B]'\n    \u003Cmodel_keyarg_1>:\u003Cvalue>\n\n# Data Configuration\ndata:\n    dataset: \u003Cname> [options: 'pascal, camvid, ade20k, mit_sceneparsing_benchmark, cityscapes, nyuv2, sunrgbd, vistas'] \n    train_split: \u003Csplit_to_train_on>\n    val_split: \u003Cspit_to_validate_on>\n    img_rows: 512\n    img_cols: 1024\n    path: \u003Cpath\u002Fto\u002Fdata>\n    \u003Cdataset_keyarg1>:\u003Cvalue>\n\n# Training Configuration\ntraining:\n    n_workers: 64\n    train_iters: 35000\n    batch_size: 16\n    val_interval: 500\n    print_interval: 25\n    loss:\n        name: \u003Closs_type> [options: 'cross_entropy, bootstrapped_cross_entropy, multi_scale_crossentropy']\n        \u003Closs_keyarg1>:\u003Cvalue>\n\n    # Optmizer Configuration\n    optimizer:\n        name: \u003Coptimizer_name> [options: 'sgd, adam, adamax, asgd, adadelta, adagrad, rmsprop']\n        lr: 1.0e-3\n        \u003Coptimizer_keyarg1>:\u003Cvalue>\n\n        # Warmup LR Configuration\n        warmup_iters: \u003Citers for lr warmup>\n        mode: \u003C'constant' or 'linear' for warmup'>\n        gamma: \u003Cgamma for warm up>\n       \n    # Augmentations Configuration\n    augmentations:\n        gamma: x                                     #[gamma varied in 1 to 1+x]\n        hue: x                                       #[hue varied in -x to x]\n        brightness: x                                #[brightness varied in 1-x to 1+x]\n        saturation: x                                #[saturation varied in 1-x to 1+x]\n        contrast: x                                  #[contrast varied in 1-x to 1+x]\n        rcrop: [h, w]                                #[crop of size (h,w)]\n        translate: [dh, dw]                          #[reflective translation by (dh, dw)]\n        rotate: d                                    #[rotate -d to d degrees]\n        scale: [h,w]                                 #[scale to size (h,w)]\n        ccrop: [h,w]                                 #[center crop of (h,w)]\n        hflip: p                                     #[flip horizontally with chance p]\n        vflip: p                                     #[flip vertically with chance p]\n\n    # LR Schedule Configuration\n    lr_schedule:\n        name: \u003Cschedule_type> [options: 'constant_lr, poly_lr, multi_step, cosine_annealing, exp_lr']\n        \u003Cscheduler_keyarg1>:\u003Cvalue>\n\n    # Resume from checkpoint  \n    resume: \u003Cpath_to_checkpoint>\n```\n\n**To train the model :**\n\n```\npython train.py [-h] [--config [CONFIG]] \n\n--config                Configuration file to use\n```\n\n**To validate the model :**\n\n```\nusage: validate.py [-h] [--config [CONFIG]] [--model_path [MODEL_PATH]]\n                       [--eval_flip] [--measure_time]\n\n  --config              Config file to be used\n  --model_path          Path to the saved model\n  --eval_flip           Enable evaluation with flipped image | True by default\n  --measure_time        Enable evaluation with time (fps) measurement | True\n                        by default\n```\n\n**To test the model w.r.t. a dataset on custom images(s):**\n\n```\npython test.py [-h] [--model_path [MODEL_PATH]] [--dataset [DATASET]]\n               [--dcrf [DCRF]] [--img_path [IMG_PATH]] [--out_path [OUT_PATH]]\n \n  --model_path          Path to the saved model\n  --dataset             Dataset to use ['pascal, camvid, ade20k etc']\n  --dcrf                Enable DenseCRF based post-processing\n  --img_path            Path of the input image\n  --out_path            Path of the output segmap\n```\n\n\n**If you find this code useful in your research, please consider citing:**\n\n```\n@article{mshahsemseg,\n    Author = {Meet P Shah},\n    Title = {Semantic Segmentation Architectures Implemented in PyTorch.},\n    Journal = {https:\u002F\u002Fgithub.com\u002Fmeetshah1995\u002Fpytorch-semseg},\n    Year = {2017}\n}\n```\n\n","# pytorch-semseg\n\n[![license](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fmashape\u002Fapistatus.svg)](https:\u002F\u002Fgithub.com\u002Fmeetshah1995\u002Fpytorch-semseg\u002Fblob\u002Fmaster\u002FLICENSE)\n[![pypi](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fpytorch_semseg.svg)](https:\u002F\u002Fpypi.python.org\u002Fpypi\u002Fpytorch-semseg\u002F0.1.2)\n[![DOI](https:\u002F\u002Fzenodo.org\u002Fbadge\u002FDOI\u002F10.5281\u002Fzenodo.1185075.svg)](https:\u002F\u002Fdoi.org\u002F10.5281\u002Fzenodo.1185075)\n\n\n\n## 用 PyTorch 实现的语义分割算法\n\n本仓库旨在将流行的语义分割架构在 PyTorch 中进行复现。\n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=iXh9aCK3ubs\" target=\"_blank\">\u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002FagvJOPF.gif\" width=\"364\"\u002F>\u003C\u002Fa>\n\u003Cimg src=\"https:\u002F\u002Fmeetshah1995.github.io\u002Fimages\u002Fblog\u002Fss\u002Fptsemseg.png\" width=\"49%\"\u002F>\n\u003C\u002Fp>\n\n\n### 已实现的网络\n\n* [PSPNet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1612.01105) - 支持加载预训练模型，无需 Caffe 依赖\n* [ICNet](https:\u002F\u002Farxiv.org\u002Fpdf\u002F1704.08545.pdf) - 可选批量归一化及预训练模型\n* [FRRN](https:\u002F\u002Farxiv.org\u002Fabs\u002F1611.08323) - A 和 B 两种模型\n* [FCN](https:\u002F\u002Farxiv.org\u002Fabs\u002F1411.4038) - 包括 FCN32s、FCN16s 和 FCN8s 三种变体\n* [U-Net](https:\u002F\u002Farxiv.org\u002Fabs\u002F1505.04597) - 可选反卷积和批量归一化\n* [Link-Net](https:\u002F\u002Fcodeac29.github.io\u002Fprojects\u002Flinknet\u002F) - 支持多种 ResNet 后端\n* [Segnet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1511.00561) - 使用最大池化索引进行上采样\n\n\n#### 即将支持\n\n* [E-Net](https:\u002F\u002Farxiv.org\u002Fabs\u002F1606.02147)\n* [RefineNet](https:\u002F\u002Farxiv.org\u002Fabs\u002F1611.06612)\n\n### 已实现的数据加载器\n\n* [CamVid](http:\u002F\u002Fmi.eng.cam.ac.uk\u002Fresearch\u002Fprojects\u002FVideoRec\u002FCamVid\u002F)\n* [Pascal VOC](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC\u002Fvoc2012\u002Fsegexamples\u002Findex.html)\n* [ADE20K](http:\u002F\u002Fgroups.csail.mit.edu\u002Fvision\u002Fdatasets\u002FADE20K\u002F)\n* [MIT 场景解析基准](http:\u002F\u002Fdata.csail.mit.edu\u002Fplaces\u002FADEchallenge\u002FADEChallengeData2016.zip)\n* [Cityscapes](https:\u002F\u002Fwww.cityscapes-dataset.com\u002F)\n* [NYUDv2](http:\u002F\u002Fcs.nyu.edu\u002F~silberman\u002Fdatasets\u002Fnyu_depth_v2.html)\n* [Sun-RGBD](http:\u002F\u002Frgbd.cs.princeton.edu\u002F)\n\n\n### 需求\n\n* pytorch >=0.4.0\n* torchvision ==0.2.0\n* scipy\n* tqdm\n* tensorboardX\n\n#### 一行安装命令\n\n`pip install -r requirements.txt`\n\n### 数据\n\n* 从以下 URL 列表下载所需数据集：[这里](https:\u002F\u002Fmeetshah1995.github.io\u002Fsemantic-segmentation\u002Fdeep-learning\u002Fpytorch\u002Fvisdom\u002F2017\u002F06\u002F01\u002Fsemantic-segmentation-over-the-years.html#sec_datasets)。\n* 解压 zip 或 tar 文件，并在 `config.yaml` 中相应地修改路径。\n\n\n### 使用方法\n\n**配置文件设置**\n\n```yaml\n# 模型配置\nmodel:\n    arch: \u003C名称> [选项: 'fcn[8,16,32]s, unet, segnet, pspnet, icnet, icnetBN, linknet, frrn[A,B]']\n    \u003Cmodel_keyarg_1>:\u003Cvalue>\n\n# 数据配置\ndata:\n    dataset: \u003C名称> [选项: 'pascal, camvid, ade20k, mit_sceneparsing_benchmark, cityscapes, nyuv2, sunrgbd, vistas'] \n    train_split: \u003C用于训练的划分>\n    val_split: \u003C用于验证的划分>\n    img_rows: 512\n    img_cols: 1024\n    path: \u003C数据路径>\n    \u003Cdataset_keyarg1>:\u003Cvalue>\n\n# 训练配置\ntraining:\n    n_workers: 64\n    train_iters: 35000\n    batch_size: 16\n    val_interval: 500\n    print_interval: 25\n    loss:\n        name: \u003C损失类型> [选项: '交叉熵, bootstrapped_cross_entropy, multi_scale_crossentropy']\n        \u003Closs_keyarg1>:\u003Cvalue>\n\n    # 优化器配置\n    optimizer:\n        name: \u003C优化器名称> [选项: 'sgd, adam, adamax, asgd, adadelta, adagrad, rmsprop']\n        lr: 1.0e-3\n        \u003Coptimizer_keyarg1>:\u003Cvalue>\n\n        # 学习率预热配置\n        warmup_iters: \u003C学习率预热的迭代次数>\n        mode: \u003C预热模式: 'constant' 或 'linear'>\n        gamma: \u003C预热的 gamma 值>\n       \n    # 数据增强配置\n    augmentations:\n        gamma: x                                     #[gamma 在 1 到 1+x 之间变化]\n        hue: x                                       #[色调在 -x 到 x 之间变化]\n        brightness: x                                #[亮度在 1-x 到 1+x 之间变化]\n        saturation: x                                #[饱和度在 1-x 到 1+x 之间变化]\n        contrast: x                                  #[对比度在 1-x 到 1+x 之间变化]\n        rcrop: [h, w]                                #[裁剪为 (h,w) 大小]\n        translate: [dh, dw]                          #[沿 (dh, dw) 方向反射式平移]\n        rotate: d                                    #[旋转 -d 到 d 度]\n        scale: [h,w]                                 #[缩放至 (h,w) 大小]\n        ccrop: [h,w]                                 #[中心裁剪为 (h,w)]\n        hflip: p                                     #[水平翻转，概率为 p]\n        vflip: p                                     #[垂直翻转，概率为 p]\n\n    # 学习率调度配置\n    lr_schedule:\n        name: \u003C调度类型> [选项: 'constant_lr, poly_lr, multi_step, cosine_annealing, exp_lr']\n        \u003Cscheduler_keyarg1>:\u003Cvalue>\n\n    # 从检查点恢复\n    resume: \u003C检查点路径>\n```\n\n**训练模型：**\n\n```\npython train.py [-h] [--config [CONFIG]] \n\n--config                要使用的配置文件\n```\n\n**验证模型：**\n\n```\nusage: validate.py [-h] [--config [CONFIG]] [--model_path [MODEL_PATH]]\n                       [--eval_flip] [--measure_time]\n\n  --config              要使用的配置文件\n  --model_path          已保存模型的路径\n  --eval_flip           启用翻转图像评估 | 默认为 True\n  --measure_time        启用时间（fps）测量评估 | 默认为 True\n```\n\n**针对自定义图像使用某个数据集测试模型：**\n\n```\npython test.py [-h] [--model_path [MODEL_PATH]] [--dataset [DATASET]]\n               [--dcrf [DCRF]] [--img_path [IMG_PATH]] [--out_path [OUT_PATH]]\n \n  --model_path          已保存模型的路径\n  --dataset             要使用的数据集 ['pascal, camvid, ade20k 等']\n  --dcrf                启用基于 DenseCRF 的后处理\n  --img_path            输入图像的路径\n  --out_path            输出分割图的路径\n```\n\n\n**如果您在研究中使用了此代码，请考虑引用：**\n\n```\n@article{mshahsemseg,\n    Author = {Meet P Shah},\n    Title = {Semantic Segmentation Architectures Implemented in PyTorch.},\n    Journal = {https:\u002F\u002Fgithub.com\u002Fmeetshah1995\u002Fpytorch-semseg},\n    Year = {2017}\n}\n```","# pytorch-semseg 快速上手指南\n\npytorch-semseg 是一个基于 PyTorch 实现的语义分割算法库，集成了 PSPNet、FCN、U-Net、SegNet 等多种主流架构，并支持 Cityscapes、Pascal VOC 等常用数据集。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**: Linux \u002F macOS (Windows 需自行配置兼容环境)\n*   **Python**: 建议 Python 3.6+\n*   **核心依赖**:\n    *   `pytorch` >= 0.4.0\n    *   `torchvision` == 0.2.0\n    *   `scipy`\n    *   `tqdm`\n    *   `tensorboardX`\n\n> **国内加速建议**：安装依赖时推荐使用清华或阿里镜像源以提升下载速度。\n\n## 安装步骤\n\n### 1. 克隆项目\n首先从 GitHub 克隆代码仓库：\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fmeetshah1995\u002Fpytorch-semseg.git\ncd pytorch-semseg\n```\n\n### 2. 安装依赖\n使用 pip 一键安装所需包。国内用户建议添加 `-i` 参数指定镜像源：\n\n```bash\n# 使用清华镜像源安装\npip install -r requirements.txt -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n```\n\n### 3. 准备数据\n下载您需要的数据集（如 CamVid, Pascal VOC, Cityscapes 等）。\n*   数据集下载地址参考：[官方数据集列表](https:\u002F\u002Fmeetshah1995.github.io\u002Fsemantic-segmentation\u002Fdeep-learning\u002Fpytorch\u002Fvisdom\u002F2017\u002F06\u002F01\u002Fsemantic-segmentation-over-the-years.html#sec_datasets)\n*   解压数据包后，记下数据存放路径，后续需在配置文件中修改。\n\n## 基本使用\n\n### 1. 配置模型与训练参数\n复制示例配置文件（如有）或直接新建 `config.yaml`，根据您的需求编辑关键参数。以下是一个最小化的配置示例：\n\n```yaml\n# Model Configuration\nmodel:\n    arch: fcn8s  # 可选：fcn8s, unet, segnet, pspnet 等\n    n_classes: 21 # 根据数据集类别数设置，Pascal VOC 为 21\n\n# Data Configuration\ndata:\n    dataset: pascal # 可选：pascal, camvid, cityscapes 等\n    train_split: training\n    val_split: validation\n    path: \u002Fpath\u002Fto\u002Fyour\u002Fdataset # 修改为您的实际数据路径\n    img_rows: 512\n    img_cols: 1024\n\n# Training Configuration\ntraining:\n    batch_size: 4\n    train_iters: 1000\n    val_interval: 100\n    loss:\n        name: cross_entropy\n    optimizer:\n        name: adam\n        lr: 1.0e-3\n```\n\n### 2. 训练模型\n使用配置好的 yaml 文件启动训练：\n\n```bash\npython train.py --config config.yaml\n```\n\n### 3. 验证模型\n训练完成后，使用保存的模型权重进行验证：\n\n```bash\npython validate.py --config config.yaml --model_path \u002Fpath\u002Fto\u002Fcheckpoint.pkl\n```\n\n### 4. 测试单张图片\n对自定义图片进行推理测试：\n\n```bash\npython test.py --model_path \u002Fpath\u002Fto\u002Fcheckpoint.pkl --dataset pascal --img_path .\u002Ftest_image.jpg --out_path .\u002Fresult.png\n```\n\n*   `--dcrf`: 可选参数，启用 DenseCRF 后处理以优化边缘细节。","某自动驾驶初创公司的算法团队正致力于提升车辆对城市道路环境的感知能力，需要快速验证多种语义分割模型以识别车道线、行人和障碍物。\n\n### 没有 pytorch-semseg 时\n- **重复造轮子耗时严重**：工程师需从零编写 PSPNet、SegNet 等经典网络的 PyTorch 代码，花费数周时间复现论文架构，极易引入底层 Bug。\n- **数据适配繁琐复杂**：面对 Cityscapes 或 CamVid 等不同格式的数据集，每次更换数据源都要手动重写数据加载器（DataLoader）和预处理逻辑。\n- **实验配置管理混乱**：调整网络结构、优化器参数或数据增强策略时，缺乏统一的配置文件管理，导致实验记录难以追溯和复现。\n- **预训练权重加载困难**：部分模型依赖 Caffe 框架的预训练权重，转换过程复杂且容易出错，阻碍了迁移学习的快速启动。\n\n### 使用 pytorch-semseg 后\n- **即插即用主流架构**：直接调用库中已实现的 FCN、U-Net、LinkNet 等多种成熟模型，将模型搭建时间从数周缩短至几分钟。\n- **数据集无缝切换**：内置针对 Cityscapes、Pascal VOC 等主流数据集的专用 DataLoader，仅需修改 `config.yaml` 中的路径即可开始训练。\n- **标准化实验流程**：通过统一的 YAML 配置文件集中管理模型架构、超参数及增强策略，轻松实现实验条件的精确控制与复现。\n- **无障碍迁移学习**：支持直接加载无 Caffe 依赖的预训练模型，让团队能立即在特定道路场景上进行微调，显著提升收敛速度。\n\npytorch-semseg 通过提供标准化的模型实现与数据接口，让研发团队从繁琐的基础设施构建中解放出来，专注于核心算法的迭代与优化。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fmeetps_pytorch-semseg_516ecea6.png","meetps","Meet Shah ","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fmeetps_518596aa.jpg","int const change;",null,"Mountain View, CA","meetshah.dev","https:\u002F\u002Fgithub.com\u002Fmeetps",[81],{"name":82,"color":83,"percentage":84},"Python","#3572A5",100,3409,792,"2026-03-19T08:19:56","MIT","未说明","未说明 (基于 PyTorch，通常建议使用 NVIDIA GPU 进行加速，但 README 未指定具体型号或显存要求)",{"notes":92,"python":93,"dependencies":94},"该项目较旧（依赖 torchvision 0.2.0 和 pytorch 0.4.0），在现代环境中直接安装可能遇到版本冲突，建议创建独立的虚拟环境并尝试安装兼容的旧版 PyTorch。使用前需手动下载数据集并在 config.yaml 中配置路径。支持多种语义分割模型（如 PSPNet, U-Net, Segnet 等）和数据集（如 Cityscapes, Pascal VOC 等）。","未说明 (需兼容 PyTorch >=0.4.0 的版本)",[95,96,97,98,99],"pytorch>=0.4.0","torchvision==0.2.0","scipy","tqdm","tensorboardX",[15,14],[102,103,104,105],"pytorch","semantic-segmentation","deep-learning","fully-convolutional-networks","2026-03-27T02:49:30.150509","2026-04-09T23:50:19.576498",[109,114,119,124,129,134],{"id":110,"question_zh":111,"answer_zh":112,"source_url":113},26819,"LinkNet 模型是否经过测试？为什么无法加载或运行时报错？","LinkNet 的实现在早期版本中存在缺陷，例如未包含在 `get_model()` 函数中且工具类代码有误。虽然社区用户提供了修复方案并实现了带预训练 ResNet 权重的版本，但维护者指出若不使用 `torchvision` 中的预训练 ResNet 权重初始化编码器，从头训练效果不佳。建议参考外部实现或使用已修复的 PR 版本，并确保正确加载预训练权重以获得接近 90% 的平均准确率。","https:\u002F\u002Fgithub.com\u002Fmeetps\u002Fpytorch-semseg\u002Fissues\u002F16",{"id":115,"question_zh":116,"answer_zh":117,"source_url":118},26820,"如何使用提供的 ICNet 预训练模型进行测试？遇到 'root=None' 错误怎么办？","由于代码提交导致 `cityscapes_loader.py` 中的 `test_mode` 变量未被正确使用，从而引发路径错误。解决方法是修改 `ptsemseg\u002Floader\u002Fcityscapes_loader.py` 第 82-85 行，替换为以下逻辑以区分训练和测试模式：\nif not self.test_mode:\n    self.images_base = os.path.join(self.root, \"leftImg8bit\", self.split)\n    self.annotations_base = os.path.join(self.root, \"gtFine\", self.split)\n    self.files[split] = recursive_glob(rootdir=self.images_base, suffix=\".png\")\nelse:\n    self.files[split] = [\"\"] #  enable testing without loading original dataset\n此外，确保在运行测试命令时正确配置了数据集路径，尽管测试脚本可能不直接接受数据路径参数，需检查环境变量或默认配置。","https:\u002F\u002Fgithub.com\u002Fmeetps\u002Fpytorch-semseg\u002Fissues\u002F125",{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},26821,"训练 FCN8s 时损失收敛但分割效果差（mIoU 停滞在 0.42 左右），如何解决？","这通常是因为 Pascal SBD 训练数据与 Pascal VOC 2012 验证集存在重叠，导致评估虚高。若去除重叠部分，准确率会下降。另一种情况是模型架构或初始化问题。有用户建议注释掉 `train.py` 的第 60 和 61 行，并使用默认设置训练 fcn-xs，可获得约 60% 的验证集 mIoU。如果使用 AlexNet 骨干，需确保正确添加 `alexfcn` 类并加载预训练权重，同时保持学习率等参数为默认值。","https:\u002F\u002Fgithub.com\u002Fmeetps\u002Fpytorch-semseg\u002Fissues\u002F20",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},26822,"训练 ADE20K 数据集时所有指标均为 NaN，并报错 'Too many dimensions: 3 > 2'，如何修复？","该错误通常由数据加载顺序不当引起。需要在 `ade20k_loader.py` 中将标签编码步骤 `lbl = self.encode_segmap(lbl)` 移动到数据增强 `img, lbl = self.augmentations(img, lbl)` 之前（例如将原第 63 行移至第 41 行）。此外，检查数据集根路径配置，确保路径字符串拼接正确（例如根路径末尾应包含 `\u002F`，如 `\u002Fhome\u002Fuser\u002Fdatasets\u002FADE20K\u002F`），避免因路径错误导致读取失败进而产生空直方图和 NaN 值。若仍报错尺寸不匹配，可尝试设置 `copy_fc8=False`。","https:\u002F\u002Fgithub.com\u002Fmeetps\u002Fpytorch-semseg\u002Fissues\u002F118",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},26823,"训练过程中出现 'RuntimeError: can't convert a given np.ndarray to a tensor' 错误怎么办？","此错误通常发生在第一个 epoch 之后，表明数据加载器返回的 numpy 数组格式不符合 PyTorch Tensor 转换要求。常见原因是标签（label）图像的维度或数据类型不正确（例如包含了多余的通道或不是单通道整数掩码）。请检查自定义 loader 文件（如 `*_loader.py`），确保 `__getitem__` 方法返回的 label 是二维数组（H, W）且类型为整型，并在返回前正确转换为 torch tensor。如果使用了数据增强，需确保增强后的 label 依然保持正确的形状和数据类型。","https:\u002F\u002Fgithub.com\u002Fmeetps\u002Fpytorch-semseg\u002Fissues\u002F97",{"id":135,"question_zh":136,"answer_zh":137,"source_url":118},26824,"如何在项目中正确配置和使用不同的数据集（如 Cityscapes, ADE20K, Pascal VOC）？","不同数据集需要对应的 loader 文件和配置文件。对于 Cityscapes，需下载 `leftImg8bit_trainvaltest.zip` 并正确设置根目录路径，注意处理 `test_mode` 下的路径逻辑。对于 ADE20K，需确保路径拼接正确（末尾加斜杠）且标签编码在增强前执行。对于 Pascal VOC，需注意 SBD 扩展集与验证集的重叠问题。通常在运行脚本时通过 `--dataset` 参数指定数据集名称，并确保相应的 `_loader.py` 文件已在 `ptsemseg\u002Floader\u002F` 目录下且被主程序正确导入。若遇到路径错误，优先检查 `self.root` 的配置及代码中的路径拼接逻辑。",[139],{"id":140,"version":141,"summary_zh":76,"released_at":142},172081,"v0.1.2","2018-02-27T10:41:00"]