[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-kazuto1011--deeplab-pytorch":3,"similar-kazuto1011--deeplab-pytorch":102},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":9,"readme_en":10,"readme_zh":11,"quickstart_zh":12,"use_case_zh":13,"hero_image_url":14,"owner_login":15,"owner_name":16,"owner_avatar_url":17,"owner_bio":18,"owner_company":19,"owner_location":20,"owner_email":21,"owner_twitter":18,"owner_website":22,"owner_url":23,"languages":24,"stars":33,"forks":34,"last_commit_at":35,"license":36,"difficulty_score":37,"env_os":38,"env_gpu":39,"env_ram":38,"env_deps":40,"category_tags":48,"github_topics":51,"view_count":58,"oss_zip_url":18,"oss_zip_packed_at":18,"status":59,"created_at":60,"updated_at":61,"faqs":62,"releases":97},4172,"kazuto1011\u002Fdeeplab-pytorch","deeplab-pytorch","PyTorch re-implementation of DeepLab v2 on COCO-Stuff \u002F PASCAL VOC datasets","deeplab-pytorch 是一个基于 PyTorch 框架实现的 DeepLab v2 语义分割开源项目，旨在为研究人员和开发者提供一套高效、易用的图像分割解决方案。它主要解决了在主流深度学习框架中复现经典 DeepLab 模型的难题，让用户无需依赖旧的 Caffe 环境即可直接加载官方预训练权重，大幅降低了环境配置门槛。\n\n该工具完美支持 COCO-Stuff 和 PASCAL VOC 两大权威数据集，并采用 ResNet-101 作为骨干网络，在多项关键指标上达到了甚至超越了官方原始实现的性能水平。除了核心的 DeepLab v2，项目还附带了未完全测试的 DeepLab v3\u002Fv3+ 模型代码，并原生支持通过 `torch.hub` 一键加载，极大地提升了实验的便捷性。此外，它还提供了结合 CRF（条件随机场）后处理的选项，能进一步优化分割边界的精细度。\n\n无论是从事计算机视觉研究的学者，还是需要快速搭建高精度分割模型的算法工程师，deeplab-pytorch 都是一个值得信赖的选择。它不仅保留了学术研究的严谨性，更通过现代化的工程实现，让前沿算法能更轻松地应用于实际开发","deeplab-pytorch 是一个基于 PyTorch 框架实现的 DeepLab v2 语义分割开源项目，旨在为研究人员和开发者提供一套高效、易用的图像分割解决方案。它主要解决了在主流深度学习框架中复现经典 DeepLab 模型的难题，让用户无需依赖旧的 Caffe 环境即可直接加载官方预训练权重，大幅降低了环境配置门槛。\n\n该工具完美支持 COCO-Stuff 和 PASCAL VOC 两大权威数据集，并采用 ResNet-101 作为骨干网络，在多项关键指标上达到了甚至超越了官方原始实现的性能水平。除了核心的 DeepLab v2，项目还附带了未完全测试的 DeepLab v3\u002Fv3+ 模型代码，并原生支持通过 `torch.hub` 一键加载，极大地提升了实验的便捷性。此外，它还提供了结合 CRF（条件随机场）后处理的选项，能进一步优化分割边界的精细度。\n\n无论是从事计算机视觉研究的学者，还是需要快速搭建高精度分割模型的算法工程师，deeplab-pytorch 都是一个值得信赖的选择。它不仅保留了学术研究的严谨性，更通过现代化的工程实现，让前沿算法能更轻松地应用于实际开发场景中。","# DeepLab with PyTorch\n\nThis is an unofficial **PyTorch** implementation of **DeepLab v2** [[1](##references)] with a **ResNet-101** backbone. \n* **COCO-Stuff** dataset [[2](##references)] and **PASCAL VOC** dataset [[3]()] are supported.\n* The official Caffe weights provided by the authors can be used without building the Caffe APIs.\n* DeepLab v3\u002Fv3+ models with the identical backbone are also included (not tested).\n* [```torch.hub``` is supported](#torchhub).\n\n## Performance\n\n### COCO-Stuff\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Cth>Train set\u003C\u002Fth>\n        \u003Cth>Eval set\u003C\u002Fth>\n        \u003Cth>Code\u003C\u002Fth>\n        \u003Cth>Weight\u003C\u002Fth>\n        \u003Cth>CRF?\u003C\u002Fth>\n        \u003Cth>Pixel\u003Cbr>Accuracy\u003C\u002Fth>\n        \u003Cth>Mean\u003Cbr>Accuracy\u003C\u002Fth>\n        \u003Cth>Mean IoU\u003C\u002Fth>\n        \u003Cth>FreqW IoU\u003C\u002Fth>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"3\">\n            10k \u003Ci>train\u003C\u002Fi> &dagger;\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"3\">10k \u003Ci>val\u003C\u002Fi> &dagger;\u003C\u002Ftd>\n        \u003Ctd>Official [\u003Ca href=\"#references\">2\u003C\u002Fa>]\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>65.1\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>45.5\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>34.4\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>50.4\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>This repo\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-cocostuff10k-20000.pth\">Download\u003C\u002Fa>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>65.8\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>45.7\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>34.8\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>51.2\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>67.1\u003C\u002Ftd>\n        \u003Ctd>46.4\u003C\u002Ftd>\n        \u003Ctd>35.6\u003C\u002Ftd>\n        \u003Ctd>52.5\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\n            164k \u003Ci>train\u003C\u002Fi>\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">164k \u003Ci>val\u003C\u002Fi>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>This repo\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-cocostuff164k-100000.pth\">Download\u003C\u002Fa> &Dagger;\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>66.8\u003C\u002Ftd>\n        \u003Ctd>51.2\u003C\u002Ftd>\n        \u003Ctd>39.1\u003C\u002Ftd>\n        \u003Ctd>51.5\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>67.6\u003C\u002Ftd>\n        \u003Ctd>51.5\u003C\u002Ftd>\n        \u003Ctd>39.7\u003C\u002Ftd>\n        \u003Ctd>52.3\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n&dagger; Images and labels are pre-warped to square-shape 513x513\u003Cbr>\n&Dagger; Note for [SPADE](https:\u002F\u002Fnvlabs.github.io\u002FSPADE\u002F) followers: The provided COCO-Stuff 164k weight has been kept intact since 2019\u002F02\u002F23.\n\n### PASCAL VOC 2012\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Cth>Train set\u003C\u002Fth>\n        \u003Cth>Eval set\u003C\u002Fth>\n        \u003Cth>Code\u003C\u002Fth>\n        \u003Cth>Weight\u003C\u002Fth>\n        \u003Cth>CRF?\u003C\u002Fth>\n        \u003Cth>Pixel\u003Cbr>Accuracy\u003C\u002Fth>\n        \u003Cth>Mean\u003Cbr>Accuracy\u003C\u002Fth>\n        \u003Cth>Mean IoU\u003C\u002Fth>\n        \u003Cth>FreqW IoU\u003C\u002Fth>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"4\">\n            \u003Ci>trainaug\u003C\u002Fi>\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"4\">\u003Ci>val\u003C\u002Fi>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">Official [\u003Ca href=\"#references\">3\u003C\u002Fa>]\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>76.35\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>77.69\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>This repo\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-vocaug-20000.pth\">Download\u003C\u002Fa>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>94.64\u003C\u002Ftd>\n        \u003Ctd>86.50\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>76.65\u003C\u002Ftd>\n        \u003Ctd>90.41\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>95.04\u003C\u002Ftd>\n        \u003Ctd>86.64\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>77.93\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>91.06\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Setup\n\n### Requirements\n\nRequired Python packages are listed in the Anaconda configuration file `configs\u002Fconda_env.yaml`.\nPlease modify the listed `cudatoolkit=10.2` and `python=3.6` as needed and run the following commands.\n\n```sh\n# Set up with Anaconda\nconda env create -f configs\u002Fconda_env.yaml\nconda activate deeplab-pytorch\n```\n\n### Download datasets\n\n* [COCO-Stuff 10k\u002F164k](data\u002Fdatasets\u002Fcocostuff\u002FREADME.md)\n* [PASCAL VOC 2012](data\u002Fdatasets\u002Fvoc12\u002FREADME.md)\n\n### Download pre-trained caffemodels\n\nCaffemodels pre-trained on COCO and PASCAL VOC datasets are released by the DeepLab authors.\nIn accordance with the papers [[1](##references),[2](##references)], this repository uses the COCO-trained parameters as initial weights.\n\n1. Run the follwing script to download the pre-trained caffemodels (1GB+).\n\n```sh\n$ bash scripts\u002Fsetup_caffemodels.sh\n```\n\n2. Convert the caffemodels to pytorch compatibles. No need to build the Caffe API!\n\n```sh\n# Generate \"deeplabv1_resnet101-coco.pth\" from \"init.caffemodel\"\n$ python convert.py --dataset coco\n# Generate \"deeplabv2_resnet101_msc-vocaug.pth\" from \"train2_iter_20000.caffemodel\"\n$ python convert.py --dataset voc12\n```\n\n## Training & Evaluation\n\nTo train DeepLab v2 on PASCAL VOC 2012:\n\n```sh\npython main.py train \\\n    --config-path configs\u002Fvoc12.yaml\n```\n\nTo evaluate the performance on a validation set:\n\n```sh\npython main.py test \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path data\u002Fmodels\u002Fvoc12\u002Fdeeplabv2_resnet101_msc\u002Ftrain_aug\u002Fcheckpoint_final.pth\n```\n\nNote: This command saves the predicted logit maps (`.npy`) and the scores (`.json`).\n\nTo re-evaluate with a CRF post-processing:\u003Cbr>\n\n```sh\npython main.py crf \\\n    --config-path configs\u002Fvoc12.yaml\n```\n\nExecution of a series of the above scripts is equivalent to `bash scripts\u002Ftrain_eval.sh`.\n\nTo monitor a loss, run the following command in a separate terminal.\n\n```sh\ntensorboard --logdir data\u002Flogs\n```\n\nPlease specify the appropriate configuration files for the other datasets.\n\n| Dataset         | Config file                  | #Iterations | Classes                      |\n| :-------------- | :--------------------------- | :---------- | :--------------------------- |\n| PASCAL VOC 2012 | `configs\u002Fvoc12.yaml`         | 20,000      | 20 foreground + 1 background |\n| COCO-Stuff 10k  | `configs\u002Fcocostuff10k.yaml`  | 20,000      | 182 thing\u002Fstuff              |\n| COCO-Stuff 164k | `configs\u002Fcocostuff164k.yaml` | 100,000     | 182 thing\u002Fstuff              |\n\nNote: Although the label indices range from 0 to 181 in COCO-Stuff 10k\u002F164k, only [171 classes](https:\u002F\u002Fgithub.com\u002Fnightrome\u002Fcocostuff\u002Fblob\u002Fmaster\u002Flabels.md) are supervised.\n\nCommon settings:\n\n- **Model**: DeepLab v2 with ResNet-101 backbone. Dilated rates of ASPP are (6, 12, 18, 24). Output stride is 8.\n- **GPU**: All the GPUs visible to the process are used. Please specify the scope with\n```CUDA_VISIBLE_DEVICES=```.\n- **Multi-scale loss**: Loss is defined as a sum of responses from multi-scale inputs (1x, 0.75x, 0.5x) and element-wise max across the scales. The *unlabeled* class is ignored in the loss computation.\n- **Gradient accumulation**: The mini-batch of 10 samples is not processed at once due to the high occupancy of GPU memories. Instead, gradients of small batches of 5 samples are accumulated for 2 iterations, and weight updating is performed at the end (```batch_size * iter_size = 10```). GPU memory usage is approx. 11.2 GB with the default setting (tested on the single Titan X). You can reduce it with a small ```batch_size```.\n- **Learning rate**: Stochastic gradient descent (SGD) is used with momentum of 0.9 and initial learning rate of 2.5e-4. Polynomial learning rate decay is employed; the learning rate is multiplied by ```(1-iter\u002Fiter_max)**power``` at every 10 iterations.\n- **Monitoring**: Moving average loss (```average_loss``` in Caffe) can be monitored in TensorBoard.\n- **Preprocessing**: Input images are randomly re-scaled by factors ranging from 0.5 to 1.5, padded if needed, and randomly cropped to 321x321.\n\nProcessed images and labels in COCO-Stuff 164k:\n\n![Data](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkazuto1011_deeplab-pytorch_readme_be4389991869.png)\n\n## Inference Demo\n\nYou can use [the pre-trained models](#performance), [the converted models](#download-pre-trained-caffemodels), or your models.\n\nTo process a single image:\n\n```bash\npython demo.py single \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path deeplabv2_resnet101_msc-vocaug-20000.pth \\\n    --image-path image.jpg\n```\n\nTo run on a webcam:\n\n```bash\npython demo.py live \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path deeplabv2_resnet101_msc-vocaug-20000.pth\n```\n\nTo run a CRF post-processing, add `--crf`. To run on a CPU, add `--cpu`.\n\n## Misc\n\n### torch.hub\n\nModel setup with two lines\n\n```python\nimport torch.hub\nmodel = torch.hub.load(\"kazuto1011\u002Fdeeplab-pytorch\", \"deeplabv2_resnet101\", pretrained='cocostuff164k', n_classes=182)\n```\n\n### Difference with Caffe version\n\n* While the official code employs 1\u002F16 bilinear interpolation (```Interp``` layer) for downsampling a label for only 0.5x input, this codebase does for both 0.5x and 0.75x inputs with nearest interpolation (```PIL.Image.resize```, [related issue](https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F51)).\n* Bilinear interpolation on images and logits is performed with the ```align_corners=False```.\n\n### Training batch normalization\n\n\nThis codebase only supports DeepLab v2 training which freezes batch normalization layers, although\nv3\u002Fv3+ protocols require training them. If training their parameters on multiple GPUs as well in your projects, please\ninstall [the extra library](https:\u002F\u002Fhangzhang.org\u002FPyTorch-Encoding\u002F) below.\n\n```bash\npip install torch-encoding\n```\n\nBatch normalization layers in a model are automatically switched in ```libs\u002Fmodels\u002Fresnet.py```.\n\n```python\ntry:\n    from encoding.nn import SyncBatchNorm\n    _BATCH_NORM = SyncBatchNorm\nexcept:\n    _BATCH_NORM = nn.BatchNorm2d\n```\n\n## References\n\n1. L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, A. L. Yuille. DeepLab: Semantic Image\nSegmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs. *IEEE TPAMI*,\n2018.\u003Cbr>\n[Project](http:\u002F\u002Fliangchiehchen.com\u002Fprojects\u002FDeepLab.html) \u002F\n[Code](https:\u002F\u002Fbitbucket.org\u002Faquariusjay\u002Fdeeplab-public-ver2) \u002F [arXiv\npaper](https:\u002F\u002Farxiv.org\u002Fabs\u002F1606.00915)\n\n2. H. Caesar, J. Uijlings, V. Ferrari. COCO-Stuff: Thing and Stuff Classes in Context. In *CVPR*, 2018.\u003Cbr>\n[Project](https:\u002F\u002Fgithub.com\u002Fnightrome\u002Fcocostuff) \u002F [arXiv paper](https:\u002F\u002Farxiv.org\u002Fabs\u002F1612.03716)\n\n1. M. Everingham, L. Van Gool, C. K. I. Williams, J. Winn, A. Zisserman. The PASCAL Visual Object\nClasses (VOC) Challenge. *IJCV*, 2010.\u003Cbr>\n[Project](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC) \u002F\n[Paper](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC\u002Fpubs\u002Feveringham10.pdf)\n","# 使用 PyTorch 的 DeepLab\n\n这是 **DeepLab v2** [[1](##references)] 的非官方 **PyTorch** 实现，采用 **ResNet-101** 作为骨干网络。\n* 支持 **COCO-Stuff** 数据集 [[2](##references)] 和 **PASCAL VOC** 数据集 [[3]()]。\n* 可以直接使用作者提供的官方 Caffe 权重，无需构建 Caffe API。\n* 同样包含了具有相同骨干网络的 DeepLab v3\u002Fv3+ 模型（未经过测试）。\n* 支持 [```torch.hub```](#torchhub)。\n\n## 性能\n\n### COCO-Stuff\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Cth>训练集\u003C\u002Fth>\n        \u003Cth>验证集\u003C\u002Fth>\n        \u003Cth>代码\u003C\u002Fth>\n        \u003Cth>权重\u003C\u002Fth>\n        \u003Cth>CRF?\u003C\u002Fth>\n        \u003Cth>像素\u003Cbr>准确率\u003C\u002Fth>\n        \u003Cth>平均\u003Cbr>准确率\u003C\u002Fth>\n        \u003Cth>平均 IoU\u003C\u002Fth>\n        \u003Cth>频率加权 IoU\u003C\u002Fth>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"3\">\n            1万张 \u003Ci>train\u003C\u002Fi> &dagger;\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"3\">1万张 \u003Ci>val\u003C\u002Fi> &dagger;\u003C\u002Ftd>\n        \u003Ctd>官方 [\u003Ca href=\"#references\">2\u003C\u002Fa>]\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>65.1\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>45.5\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>34.4\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>50.4\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>本仓库\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-cocostuff10k-20000.pth\">下载\u003C\u002Fa>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>65.8\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>45.7\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>34.8\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>51.2\u003C\u002Fstrong>\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>67.1\u003C\u002Ftd>\n        \u003Ctd>46.4\u003C\u002Ftd>\n        \u003Ctd>35.6\u003C\u002Ftd>\n        \u003Ctd>52.5\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\n            16.4万张 \u003Ci>train\u003C\u002Fi>\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">16.4万张 \u003Ci>val\u003C\u002Fi>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>本仓库\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-cocostuff164k-100000.pth\">下载\u003C\u002Fa> &Dagger;\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>66.8\u003C\u002Ftd>\n        \u003Ctd>51.2\u003C\u002Ftd>\n        \u003Ctd>39.1\u003C\u002Ftd>\n        \u003Ctd>51.5\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>67.6\u003C\u002Ftd>\n        \u003Ctd>51.5\u003C\u002Ftd>\n        \u003Ctd>39.7\u003C\u002Ftd>\n        \u003Ctd>52.3\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n&dagger; 图像和标签已预先转换为 513x513 的正方形形状\u003Cbr>\n&Dagger; 对于 [SPADE](https:\u002F\u002Fnvlabs.github.io\u002FSPADE\u002F) 的关注者请注意：提供的 COCO-Stuff 16.4 万张数据集权重自 2019 年 2 月 23 日起一直保持不变。\n\n### PASCAL VOC 2012\n\n\u003Ctable>\n    \u003Ctr>\n        \u003Cth>训练集\u003C\u002Fth>\n        \u003Cth>验证集\u003C\u002Fth>\n        \u003Cth>代码\u003C\u002Fth>\n        \u003Cth>权重\u003C\u002Fth>\n        \u003Cth>CRF?\u003C\u002Fth>\n        \u003Cth>像素\u003Cbr>准确率\u003C\u002Fth>\n        \u003Cth>平均\u003Cbr>准确率\u003C\u002Fth>\n        \u003Cth>平均 IoU\u003C\u002Fth>\n        \u003Cth>频率加权 IoU\u003C\u002Fth>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"4\">\n            \u003Ci>trainaug\u003C\u002Fi>\n        \u003C\u002Ftd>\n        \u003Ctd rowspan=\"4\">\u003Ci>val\u003C\u002Fi>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">官方 [\u003Ca href=\"#references\">3\u003C\u002Fa>]\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>76.35\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>77.69\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>-\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd rowspan=\"2\">\u003Cstrong>本仓库\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd rowspan=\"2\">\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Freleases\u002Fdownload\u002Fv1.0\u002Fdeeplabv2_resnet101_msc-vocaug-20000.pth\">下载\u003C\u002Fa>\u003C\u002Ftd>\n        \u003Ctd>\u003C\u002Ftd>\n        \u003Ctd>94.64\u003C\u002Ftd>\n        \u003Ctd>86.50\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>76.65\u003C\u002Ftd>\n        \u003Ctd>90.41\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n        \u003Ctd>&#10003;\u003C\u002Ftd>\n        \u003Ctd>95.04\u003C\u002Ftd>\n        \u003Ctd>86.64\u003C\u002Ftd>\n        \u003Ctd>\u003Cstrong>77.93\u003C\u002Fstrong>\u003C\u002Ftd>\n        \u003Ctd>91.06\u003C\u002Ftd>\n    \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## 设置\n\n### 要求\n\n所需的 Python 包列在 Anaconda 配置文件 `configs\u002Fconda_env.yaml` 中。\n请根据需要修改其中列出的 `cudatoolkit=10.2` 和 `python=3.6`，然后运行以下命令。\n\n```sh\n# 使用 Anaconda 进行设置\nconda env create -f configs\u002Fconda_env.yaml\nconda activate deeplab-pytorch\n```\n\n### 下载数据集\n\n* [COCO-Stuff 1万\u002F16.4万](data\u002Fdatasets\u002Fcocostuff\u002FREADME.md)\n* [PASCAL VOC 2012](data\u002Fdatasets\u002Fvoc12\u002FREADME.md)\n\n### 下载预训练的 caffemodels\n\nDeepLab 的作者发布了在 COCO 和 PASCAL VOC 数据集上预训练的 caffemodels。\n根据相关论文 [[1](##references),[2](##references)]，本仓库使用 COCO 上训练的参数作为初始权重。\n\n1. 运行以下脚本下载预训练的 caffemodels（1GB 以上）。\n\n```sh\n$ bash scripts\u002Fsetup_caffemodels.sh\n```\n\n2. 将 caffemodels 转换为与 PyTorch 兼容的格式。无需构建 Caffe API！\n\n```sh\n# 从 \"init.caffemodel\" 生成 \"deeplabv1_resnet101-coco.pth\"\n$ python convert.py --dataset coco\n# 从 \"train2_iter_20000.caffemodel\" 生成 \"deeplabv2_resnet101_msc-vocaug.pth\"\n$ python convert.py --dataset voc12\n```\n\n## 训练与评估\n\n在 PASCAL VOC 2012 数据集上训练 DeepLab v2：\n\n```sh\npython main.py train \\\n    --config-path configs\u002Fvoc12.yaml\n```\n\n在验证集上评估模型性能：\n\n```sh\npython main.py test \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path data\u002Fmodels\u002Fvoc12\u002Fdeeplabv2_resnet101_msc\u002Ftrain_aug\u002Fcheckpoint_final.pth\n```\n\n注意：该命令会保存预测的 logits 图（`.npy`）和分数（`.json`）。\n\n使用 CRF 后处理重新评估：\n\n```sh\npython main.py crf \\\n    --config-path configs\u002Fvoc12.yaml\n```\n\n依次执行上述脚本等价于运行 `bash scripts\u002Ftrain_eval.sh`。\n\n要监控损失，可在另一个终端中运行以下命令：\n\n```sh\ntensorboard --logdir data\u002Flogs\n```\n\n请为其他数据集指定相应的配置文件。\n\n| 数据集         | 配置文件                  | 迭代次数 | 类别                      |\n| :-------------- | :--------------------------- | :---------- | :--------------------------- |\n| PASCAL VOC 2012 | `configs\u002Fvoc12.yaml`         | 20,000      | 20 前景类 + 1 背景类       |\n| COCO-Stuff 10k  | `configs\u002Fcocostuff10k.yaml`  | 20,000      | 182 个物\u002Fstuff 类           |\n| COCO-Stuff 164k | `configs\u002Fcocostuff164k.yaml` | 100,000     | 182 个物\u002Fstuff 类           |\n\n注意：尽管 COCO-Stuff 10k\u002F164k 中的标签索引范围为 0 到 181，但仅有 [171 个类别](https:\u002F\u002Fgithub.com\u002Fnightrome\u002Fcocostuff\u002Fblob\u002Fmaster\u002Flabels.md) 被监督学习。\n\n常见设置：\n\n- **模型**：采用 ResNet-101 作为骨干网络的 DeepLab v2。ASPP 的空洞率分别为 (6, 12, 18, 24)。输出步幅为 8。\n- **GPU**：使用进程中可见的所有 GPU。可通过 `CUDA_VISIBLE_DEVICES=` 指定使用的 GPU 范围。\n- **多尺度损失**：损失定义为来自多尺度输入（1x、0.75x、0.5x）响应的总和，并在各个尺度之间取逐元素最大值。*未标记* 类别在损失计算中被忽略。\n- **梯度累积**：由于 GPU 显存占用较高，不一次性处理 10 张样本的 mini-batch，而是先累积 5 张小 batch 的梯度共 2 次，最后再进行权重更新（`batch_size * iter_size = 10`）。默认设置下显存占用约为 11.2 GB（在单块 Titan X 上测试）。可通过减小 `batch_size` 来降低显存占用。\n- **学习率**：采用带有 0.9 动量的随机梯度下降法（SGD），初始学习率为 2.5e-4。使用多项式学习率衰减策略；每 10 次迭代，学习率乘以 `(1-iter\u002Fiter_max)**power`。\n- **监控**：可在 TensorBoard 中监控移动平均损失（Caffe 中的 `average_loss`）。\n- **预处理**：输入图像会随机缩放至 0.5 至 1.5 倍，必要时填充，并随机裁剪为 321x321。\n\nCOCO-Stuff 164k 中处理后的图像和标签：\n\n![数据](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkazuto1011_deeplab-pytorch_readme_be4389991869.png)\n\n## 推理演示\n\n您可以使用 [预训练模型](#performance)、[转换后的模型](#download-pre-trained-caffemodels) 或您自己的模型。\n\n处理单张图像：\n\n```bash\npython demo.py single \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path deeplabv2_resnet101_msc-vocaug-20000.pth \\\n    --image-path image.jpg\n```\n\n使用摄像头实时运行：\n\n```bash\npython demo.py live \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path deeplabv2_resnet101_msc-vocaug-20000.pth\n```\n\n若需进行 CRF 后处理，可添加 `--crf` 参数。若要在 CPU 上运行，可添加 `--cpu` 参数。\n\n## 杂项\n\n### torch.hub\n\n只需两行代码即可完成模型加载：\n\n```python\nimport torch.hub\nmodel = torch.hub.load(\"kazuto1011\u002Fdeeplab-pytorch\", \"deeplabv2_resnet101\", pretrained='cocostuff164k', n_classes=182)\n```\n\n### 与 Caffe 版本的区别\n\n* 官方代码仅对 0.5x 输入的标签采用 1\u002F16 双线性插值（`Interp` 层）进行下采样，而本代码库则对 0.5x 和 0.75x 输入均采用最近邻插值（`PIL.Image.resize`，相关问题见 [GitHub issue #51](https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F51)）。\n* 对图像和 logits 的双线性插值使用了 `align_corners=False`。\n\n### 批归一化层的训练\n\n本代码库仅支持冻结批归一化层的 DeepLab v2 训练，而 v3\u002Fv3+ 协议要求对这些层进行训练。如果您在项目中也需要在多 GPU 上训练这些参数，请安装以下 [额外库](https:\u002F\u002Fhangzhang.org\u002FPyTorch-Encoding\u002F)：\n\n```bash\npip install torch-encoding\n```\n\n模型中的批归一化层会在 `libs\u002Fmodels\u002Fresnet.py` 中自动切换：\n\n```python\ntry:\n    from encoding.nn import SyncBatchNorm\n    _BATCH_NORM = SyncBatchNorm\nexcept:\n    _BATCH_NORM = nn.BatchNorm2d\n```\n\n## 参考文献\n\n1. L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, A. L. Yuille. DeepLab：基于深度卷积网络、空洞卷积和全连接 CRF 的语义图像分割。*IEEE TPAMI*，2018 年。\u003Cbr>\n[项目](http:\u002F\u002Fliangchiehchen.com\u002Fprojects\u002FDeepLab.html) \u002F\n[代码](https:\u002F\u002Fbitbucket.org\u002Faquariusjay\u002Fdeeplab-public-ver2) \u002F [arXiv 论文](https:\u002F\u002Farxiv.org\u002Fabs\u002F1606.00915)\n\n2. H. Caesar, J. Uijlings, V. Ferrari. COCO-Stuff：上下文中的“物”与“stuff”类别。发表于 *CVPR*，2018 年。\u003Cbr>\n[项目](https:\u002F\u002Fgithub.com\u002Fnightrome\u002Fcocostuff) \u002F [arXiv 论文](https:\u002F\u002Farxiv.org\u002Fabs\u002F1612.03716)\n\n1. M. Everingham, L. Van Gool, C. K. I. Williams, J. Winn, A. Zisserman. PASCAL 视觉目标类别（VOC）挑战赛。*IJCV*，2010 年。\u003Cbr>\n[项目](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC) \u002F\n[论文](http:\u002F\u002Fhost.robots.ox.ac.uk\u002Fpascal\u002FVOC\u002Fpubs\u002Feveringham10.pdf)","# DeepLab-PyTorch 快速上手指南\n\n本指南基于 `deeplab-pytorch` 项目，帮助开发者快速在 PyTorch 环境中部署和运行 DeepLab v2 语义分割模型（ResNet-101 骨干网络）。\n\n## 环境准备\n\n本项目依赖 Anaconda 管理环境，推荐使用 Linux 系统并配备 NVIDIA GPU。\n\n*   **操作系统**: Linux (推荐)\n*   **Python**: 3.6+ (默认配置为 3.6)\n*   **CUDA**: 10.2 (可根据实际显卡驱动调整)\n*   **核心依赖**: PyTorch, torchvision, numpy, pillow, scipy, tensorboardX 等\n\n> **注意**：请确保已安装正确的 CUDA 驱动和 cuDNN。\n\n## 安装步骤\n\n### 1. 克隆仓库与创建环境\n首先克隆代码库，并根据提供的配置文件创建 Conda 环境。如需适配国内网络，建议在创建环境前配置清华或中科大镜像源。\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch.git\ncd deeplab-pytorch\n\n# (可选) 配置国内镜像源加速下载\nconda config --add channels https:\u002F\u002Fmirrors.tuna.tsinghua.edu.cn\u002Fanaconda\u002Fpkgs\u002Fmain\u002F\nconda config --add channels https:\u002F\u002Fmirrors.tuna.tsinghua.edu.cn\u002Fanaconda\u002Fpkgs\u002Ffree\u002F\n\n# 创建环境 (如需修改 Python 或 CUDA 版本，请先编辑 configs\u002Fconda_env.yaml)\nconda env create -f configs\u002Fconda_env.yaml\nconda activate deeplab-pytorch\n```\n\n### 2. 下载预训练权重\n本项目支持直接使用官方发布的 Caffe 权重，无需安装 Caffe。运行脚本下载权重并转换为 PyTorch 格式。\n\n```bash\n# 下载官方 Caffe 预训练模型 (约 1GB+)\nbash scripts\u002Fsetup_caffemodels.sh\n\n# 将 COCO 数据集预训练模型转换为 PyTorch 格式\npython convert.py --dataset coco\n\n# 将 PASCAL VOC 数据集预训练模型转换为 PyTorch 格式\npython convert.py --dataset voc12\n```\n*转换后将生成 `deeplabv1_resnet101-coco.pth` 和 `deeplabv2_resnet101_msc-vocaug.pth` 等文件。*\n\n### 3. 准备数据集 (可选)\n如需重新训练或评估，需下载以下数据集并按项目说明放置：\n*   **COCO-Stuff**: [下载链接](data\u002Fdatasets\u002Fcocostuff\u002FREADME.md)\n*   **PASCAL VOC 2012**: [下载链接](data\u002Fdatasets\u002Fvoc12\u002FREADME.md)\n\n## 基本使用\n\n### 方式一：使用 torch.hub 快速加载 (推荐)\n无需下载代码库，直接通过两行代码加载预训练模型进行推理。\n\n```python\nimport torch\nimport torch.hub\n\n# 加载在 COCO-Stuff 164k 上预训练的 DeepLab v2 (ResNet-101)\nmodel = torch.hub.load(\"kazuto1011\u002Fdeeplab-pytorch\", \"deeplabv2_resnet101\", pretrained='cocostuff164k', n_classes=182)\nmodel.eval()\n\n# 准备输入图像 (假设 input_tensor 形状为 [1, 3, H, W])\n# with torch.no_grad():\n#     output = model(input_tensor)\n```\n\n### 方式二：命令行单图推理\n使用本地转换好的模型对单张图片进行语义分割预测。\n\n```bash\npython demo.py single \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path deeplabv2_resnet101_msc-vocaug-20000.pth \\\n    --image-path image.jpg\n```\n\n*   **实时摄像头演示**:\n    ```bash\n    python demo.py live \\\n        --config-path configs\u002Fvoc12.yaml \\\n        --model-path deeplabv2_resnet101_msc-vocaug-20000.pth\n    ```\n*   **附加选项**:\n    *   添加 `--crf` 启用 CRF 后处理以提升边缘细节。\n    *   添加 `--cpu` 在无 GPU 环境下运行。\n\n### 方式三：训练与评估\n使用 PASCAL VOC 2012 数据集进行训练示例：\n\n```bash\n# 开始训练\npython main.py train \\\n    --config-path configs\u002Fvoc12.yaml\n\n# 验证集评估\npython main.py test \\\n    --config-path configs\u002Fvoc12.yaml \\\n    --model-path data\u002Fmodels\u002Fvoc12\u002Fdeeplabv2_resnet101_msc\u002Ftrain_aug\u002Fcheckpoint_final.pth\n\n# 使用 CRF 重新评估\npython main.py crf \\\n    --config-path configs\u002Fvoc12.yaml\n```\n\n> **提示**: 训练过程中可新开终端运行 `tensorboard --logdir data\u002Flogs` 监控损失曲线。默认配置使用多尺度损失和梯度累积策略，显存占用约为 11.2GB (Titan X)，可通过减小 `batch_size` 优化显存使用。","某自动驾驶初创公司的算法团队正致力于提升车辆对复杂城市道路场景的感知能力，需要快速验证语义分割模型在自采数据上的表现。\n\n### 没有 deeplab-pytorch 时\n- **框架迁移成本高**：团队主要使用 PyTorch 进行研发，但 DeepLab v2 官方代码基于 Caffe，成员需花费数周学习 Caffe 架构或手动重写网络层，严重拖慢实验进度。\n- **预训练权重难复用**：无法直接加载作者在 COCO-Stuff 和 PASCAL VOC 数据集上提供的高精度预训练权重，导致模型必须从头训练，收敛慢且难以复现论文中的 76%+ mIoU 性能。\n- **环境依赖繁琐**：为了运行官方代码，不得不配置老旧的 Caffe 编译环境及特定 CUDA 版本，与团队现有的现代化 GPU 服务器环境冲突，维护成本极高。\n- **基线对比困难**：缺乏一个标准的、高性能的 PyTorch 版 DeepLab v2 作为基线（Baseline），难以客观评估新改进策略的实际增益。\n\n### 使用 deeplab-pytorch 后\n- **无缝集成研发流**：直接利用该工具提供的 ResNet-101 骨干网络实现，团队无需切换框架，当天即可将模型整合进现有的 PyTorch 训练流水线中。\n- **即插即用高精度权重**：直接下载并加载工具库中已验证的 COCO-Stuff 和 PASCAL VOC 预训练权重，模型在自测集上迅速达到了 77.93% 的 mIoU，性能对齐甚至超越官方原版。\n- **简化部署环境**：仅需通过 Anaconda 配置标准 Python 环境即可运行，彻底摆脱了对 Caffe API 的依赖，大幅降低了服务器环境的维护难度。\n- **快速迭代优化**：依托该工具稳定的代码结构，团队迅速在其基础上引入注意力机制模块，仅用两天便完成了新变体的验证与调优。\n\ndeeplab-pytorch 通过消除框架壁垒并提供开箱即用的高性能权重，让算法团队从繁琐的环境配置中解放出来，专注于核心模型的创新与迭代。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkazuto1011_deeplab-pytorch_231695ff.png","kazuto1011","Kazuto Nakashima","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fkazuto1011_a58db234.png",null,"Kyushu University","Fukuoka, Japan","kazuto@ieee.org","kazuto1011.github.io","https:\u002F\u002Fgithub.com\u002Fkazuto1011",[25,29],{"name":26,"color":27,"percentage":28},"Python","#3572A5",94.8,{"name":30,"color":31,"percentage":32},"Shell","#89e051",5.2,1100,284,"2026-03-23T15:10:18","MIT",3,"未说明","需要 NVIDIA GPU，显存约 11.2GB (基于 Titan X 测试)，支持多卡并行，CUDA 10.2",{"notes":41,"python":42,"dependencies":43},"1. 建议使用 Anaconda 管理环境，需修改配置文件中的 CUDA 和 Python 版本。2. 默认设置下显存占用约 11.2GB，可通过减小 batch_size 降低需求。3. 训练 DeepLab v2 时冻结了批归一化层；若需训练 DeepLab v3\u002Fv3+ 的批归一化参数，需额外安装 'torch-encoding' 库以支持同步批归一化。4. 首次运行需下载并转换官方 Caffe 预训练模型（>1GB）。5. 支持通过 torch.hub 直接加载模型。","3.6",[44,45,46,47],"cudatoolkit=10.2","torch","tensorboard","PIL (Pillow)",[49,50],"图像","开发框架",[52,53,54,55,56,57],"pytorch","deeplab","semantic-segmentation","cocostuff","coco","voc",2,"ready","2026-03-27T02:49:30.150509","2026-04-06T14:05:08.957748",[63,68,73,78,83,87,92],{"id":64,"question_zh":65,"answer_zh":66,"source_url":67},19020,"在微调模型时，应该训练还是冻结批归一化（BN）层？","通常建议同时微调所有参数（包括 BN 层和卷积层）。但是，由于 BN 训练需要较大的批量大小来估算统计信息，计算成本较高。DeepLab v2 协议通常保持 ImageNet\u002FMS-COCO 预训练的 BN 统计信息不变，仅在 Pascal VOC 数据集上微调卷积层，并使用 1\u002F8 大小的 logits（output_stride=8）。如果你加载了在 MS-COCO 上初始化的模型并微调到 COCO 或 PASCAL VOC，通常需要训练所有 BN，但也可以根据显存限制选择仅微调卷积层（此时预训练卷积层的学习率应设置得较小）。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F39",{"id":69,"question_zh":70,"answer_zh":71,"source_url":72},19021,"加载预训练模型时出现 'Missing keys in state_dict' 错误怎么办？","这通常是因为从 Caffe 模型转换到 PyTorch 模型时，某些层（如 scale.aspp 相关层）的参数缺失。请检查模型定义代码（例如 libs\u002Fmodels\u002Fmsc.py），确认是否有多余的层定义未在预训练权重中对应。如果是版本兼容性问题（如 PyTorch 0.4.0 中 torch.nn.functional.interpolate 不可用），可能需要将代码中的 interpolate 替换为 upsample，并注意 upsample 需要整数缩放比例，而原代码可能使用了浮点数（如 0.5, 0.75），需自行重写适配逻辑。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F26",{"id":74,"question_zh":75,"answer_zh":76,"source_url":77},19022,"找不到 checkpoint_final.pth 文件，该如何获取预训练权重？","checkpoint_final.pth 文件只有在运行完训练脚本（如 scripts\u002Ftrain_eval.sh 中的第 11-12 行）后才会生成。如果你不想自己训练，可以直接前往 README 文件的 'Performance' 部分，那里提供了预训练参数的下载链接。通常有多个 .pth 文件（对应不同数据集或阶段），请根据你需要使用的数据集下载对应的文件，不一定需要全部下载。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F81",{"id":79,"question_zh":80,"answer_zh":81,"source_url":82},19023,"在 VOC 数据集上训练的 mIOU 远低于预期（约 70% vs 77%），可能的原因是什么？","性能低下通常是由于数据加载或评估逻辑错误导致的。一个常见原因是混淆了弱监督数据（weakly supervised data）和全监督数据。如果在测试时错误地加载了弱监督标注或修改了代码逻辑以适配弱监督任务，会导致评估结果显著下降。请确保在验证和测试阶段使用的是标准的 VOC 增强数据集（voc_aug）和正确的全监督标注文件。检查代码中是否有遗留的弱监督修改逻辑。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F72",{"id":84,"question_zh":85,"answer_zh":86,"source_url":67},19024,"ResBlock 中 layer3 的 stride 为什么设置为 2？","在 DeepLab 架构中，为了控制输出步长（output stride），通常在网络的后期阶段调整步长。虽然具体实现细节依赖于网络结构的设计意图（如保持特征图分辨率或下采样），但在该项目的特定实现中，layer3 设置 stride=2 是为了配合后续的空洞卷积（dilated convolution）策略，从而在不进一步降低特征图分辨率的情况下增加感受野。这是实现 output_stride=8 或 16 的关键步骤之一。",{"id":88,"question_zh":89,"answer_zh":90,"source_url":91},19025,"VOC12 数据集的 SegmentationAug 增强数据下载链接失效了，哪里可以获取？","原始的 Box 下载链接可能已过期。建议查看项目 README 文件的最新更新，维护者通常会在那里提供替代下载链接或说明如何自行生成增强数据。如果 README 中没有，可以尝试在 Issues 评论区寻找其他用户分享的镜像链接，或者使用官方 VOC 数据集工具包自行生成 augmented 标注数据。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F54",{"id":93,"question_zh":94,"answer_zh":95,"source_url":96},19026,"在 COCO Stuff 数据集上测试时脚本报错崩溃（invalid value encountered in true_divide），如何解决？","该错误通常发生在计算指标（metric.py）时，直方图（hist）中某些类别的像素总数为零，导致除以零产生无效值。这可能是由于数据集中某些类别在测试集中没有出现，或者预测结果中完全缺失某些类别。解决方法是在计算 IoU 和准确率之前，对分母添加一个极小值（epsilon）以避免除零错误，或者在计算前过滤掉那些在真值和预测中均未出现的类别。","https:\u002F\u002Fgithub.com\u002Fkazuto1011\u002Fdeeplab-pytorch\u002Fissues\u002F52",[98],{"id":99,"version":100,"summary_zh":18,"released_at":101},117082,"v1.0","2020-06-29T08:57:51",[103,112,121,129,138,146],{"id":104,"name":105,"github_repo":106,"description_zh":107,"stars":108,"difficulty_score":37,"last_commit_at":109,"category_tags":110,"status":59},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",[50,49,111],"Agent",{"id":113,"name":114,"github_repo":115,"description_zh":116,"stars":117,"difficulty_score":58,"last_commit_at":118,"category_tags":119,"status":59},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 真正成长为懂上",140436,"2026-04-05T23:32:43",[50,111,120],"语言模型",{"id":122,"name":123,"github_repo":124,"description_zh":125,"stars":126,"difficulty_score":58,"last_commit_at":127,"category_tags":128,"status":59},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,"2026-04-03T11:11:01",[50,49,111],{"id":130,"name":131,"github_repo":132,"description_zh":133,"stars":134,"difficulty_score":37,"last_commit_at":135,"category_tags":136,"status":59},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[50,49,111,137],"视频",{"id":139,"name":140,"github_repo":141,"description_zh":142,"stars":143,"difficulty_score":58,"last_commit_at":144,"category_tags":145,"status":59},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[50,120],{"id":147,"name":148,"github_repo":149,"description_zh":150,"stars":151,"difficulty_score":58,"last_commit_at":152,"category_tags":153,"status":59},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",[49,154,137,155,111,156,120,50,157],"数据工具","插件","其他","音频"]