نماذج تجزئة SOTA الدلالية سهلة الاستخدام وتخصيصها مع مجموعات بيانات وفيرة في Pytorch

تم تغيير الكثير منذ عام 2022 ، في الوقت الحاضر هناك حتى نماذج تجزئة العالم المفتوح (شريحة أي شيء). ومع ذلك ، لا تزال نماذج التجزئة التقليدية مطلوبة على دقة عالية وحالات الاستخدام المخصص. سيتم تحديث هذا الريبو وفقًا لإصدار Pytorch الجديد ، والنماذج المحدثة ، والوثائق لكيفية الاستخدام مع مجموعة بيانات مخصصة ، إلخ.
تاريخ الإصدار المتوقع -> مايو 2024
الميزات المخطط لها:
الميزات الحالية التي يجب التخلص منها:
العمود الفقري المدعوم:
الرؤوس/الأساليب المدعومة:
النماذج المستقلة المدعومة:
الوحدات المدعومة:
ارجع إلى نماذج للمعايير والنماذج المتوفرة مسبقًا.
وتحقق من العمود الفقري للعمود الفقري المدعوم.
ملاحظات: لا تحتوي معظم الطرق على نماذج مدربة مسبقًا. من الصعب للغاية الجمع بين النماذج المختلفة والأوزان المدربة مسبقًا في مستودع واحد ومورد محدود لإعادة تدريب نفسي.
تحليل المشهد:
تحليل الإنسان:
تحليل الوجه:
آحرون:
ارجع إلى مجموعات البيانات لمزيد من التفاصيل وإعداد مجموعة البيانات.
تحقق من دفتر الملاحظات هنا لاختبار تأثيرات التعزيز.
يتحول مستوى البكسل:
يتحول المستوى المكاني:
ثم ، استنساخ الريبو وتثبيت المشروع مع:
$ git clone https://github.com/sithu31296/semantic-segmentation
$ cd semantic-segmentation
$ pip install -e . إنشاء ملف تكوين في configs . يمكن العثور على تكوين عينة لمجموعة بيانات ADE20K هنا. ثم قم بتحرير الحقول التي تفكر فيها إذا كانت هناك حاجة. هناك حاجة إلى ملف التكوين هذا لجميع البرامج النصية للتدريب والتقييم والتنبؤ.
للتدريب مع وحدة معالجة الرسومات الواحدة:
$ python tools/train.py --cfg configs/CONFIG_FILE.yaml للتدريب مع وحدات معالجة الرسومات المتعددة ، قم بتعيين حقل DDP في ملف التكوين إلى true وتشغيله على النحو التالي:
$ python -m torch.distributed.launch --nproc_per_node=2 --use_env tools/train.py --cfg configs/ < CONFIG_FILE_NAME > .yaml تأكد من تعيين MODEL_PATH لملف التكوين على دليل النموذج المدرب.
$ python tools/val.py --cfg configs/ < CONFIG_FILE_NAME > .yaml للتقييم مع متعدد النطاق وقلب ، تمكين تغيير ENABLE في MSF إلى true وتشغيل نفس الأمر على النحو الوارد أعلاه.
لجعل الاستدلال ، قم بتحرير معلمات ملف التكوين من أدناه.
MODEL >> NAME والعمود BACKBONE لنموذج ما قبل المراوغة.DATASET >> NAME إلى اسم مجموعة البيانات اعتمادًا على النموذج المسبق.TEST >> MODEL_PATH على الأوزان المسبقة لنموذج الاختبار.TEST >> FILE إلى مسار الملف أو المجلد الذي تريد اختباره.SAVE_DIR . # # example using ade20k pretrained models
$ python tools/infer.py --cfg configs/ade20k.yamlمثال نتائج الاختبار (Segformer-B2):

للتحويل إلى Onnx و Coreml ، قم بتشغيل:
$ python tools/export.py --cfg configs/ < CONFIG_FILE_NAME > .yamlللتحويل إلى Openvino و Tflite ، انظر Torch_optimize.
# # ONNX Inference
$ python scripts/onnx_infer.py --model < ONNX_MODEL_PATH > --img-path < TEST_IMAGE_PATH >
# # OpenVINO Inference
$ python scripts/openvino_infer.py --model < OpenVINO_MODEL_PATH > --img-path < TEST_IMAGE_PATH >
# # TFLite Inference
$ python scripts/tflite_infer.py --model < TFLite_MODEL_PATH > --img-path < TEST_IMAGE_PATH > @article{xie2021segformer,
title={SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers},
author={Xie, Enze and Wang, Wenhai and Yu, Zhiding and Anandkumar, Anima and Alvarez, Jose M and Luo, Ping},
journal={arXiv preprint arXiv:2105.15203},
year={2021}
}
@misc{xiao2018unified,
title={Unified Perceptual Parsing for Scene Understanding},
author={Tete Xiao and Yingcheng Liu and Bolei Zhou and Yuning Jiang and Jian Sun},
year={2018},
eprint={1807.10221},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@article{hong2021deep,
title={Deep Dual-resolution Networks for Real-time and Accurate Semantic Segmentation of Road Scenes},
author={Hong, Yuanduo and Pan, Huihui and Sun, Weichao and Jia, Yisong},
journal={arXiv preprint arXiv:2101.06085},
year={2021}
}
@misc{zhang2021rest,
title={ResT: An Efficient Transformer for Visual Recognition},
author={Qinglong Zhang and Yubin Yang},
year={2021},
eprint={2105.13677},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{huang2021fapn,
title={FaPN: Feature-aligned Pyramid Network for Dense Image Prediction},
author={Shihua Huang and Zhichao Lu and Ran Cheng and Cheng He},
year={2021},
eprint={2108.07058},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{wang2021pvtv2,
title={PVTv2: Improved Baselines with Pyramid Vision Transformer},
author={Wenhai Wang and Enze Xie and Xiang Li and Deng-Ping Fan and Kaitao Song and Ding Liang and Tong Lu and Ping Luo and Ling Shao},
year={2021},
eprint={2106.13797},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@article{Liu2021PSA,
title={Polarized Self-Attention: Towards High-quality Pixel-wise Regression},
author={Huajun Liu and Fuqiang Liu and Xinyi Fan and Dong Huang},
journal={Arxiv Pre-Print arXiv:2107.00782 },
year={2021}
}
@misc{chao2019hardnet,
title={HarDNet: A Low Memory Traffic Network},
author={Ping Chao and Chao-Yang Kao and Yu-Shan Ruan and Chien-Hsiang Huang and Youn-Long Lin},
year={2019},
eprint={1909.00948},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@inproceedings{sfnet,
title={Semantic Flow for Fast and Accurate Scene Parsing},
author={Li, Xiangtai and You, Ansheng and Zhu, Zhen and Zhao, Houlong and Yang, Maoke and Yang, Kuiyuan and Tong, Yunhai},
booktitle={ECCV},
year={2020}
}
@article{Li2020SRNet,
title={Towards Efficient Scene Understanding via Squeeze Reasoning},
author={Xiangtai Li and Xia Li and Ansheng You and Li Zhang and Guang-Liang Cheng and Kuiyuan Yang and Y. Tong and Zhouchen Lin},
journal={ArXiv},
year={2020},
volume={abs/2011.03308}
}
@ARTICLE{Yucondnet21,
author={Yu, Changqian and Shao, Yuanjie and Gao, Changxin and Sang, Nong},
journal={IEEE Signal Processing Letters},
title={CondNet: Conditional Classifier for Scene Segmentation},
year={2021},
volume={28},
number={},
pages={758-762},
doi={10.1109/LSP.2021.3070472}
}
@misc{yan2022lawin,
title={Lawin Transformer: Improving Semantic Segmentation Transformer with Multi-Scale Representations via Large Window Attention},
author={Haotian Yan and Chuang Zhang and Ming Wu},
year={2022},
eprint={2201.01615},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{yu2021metaformer,
title={MetaFormer is Actually What You Need for Vision},
author={Weihao Yu and Mi Luo and Pan Zhou and Chenyang Si and Yichen Zhou and Xinchao Wang and Jiashi Feng and Shuicheng Yan},
year={2021},
eprint={2111.11418},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{wightman2021resnet,
title={ResNet strikes back: An improved training procedure in timm},
author={Ross Wightman and Hugo Touvron and Hervé Jégou},
year={2021},
eprint={2110.00476},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{liu2022convnet,
title={A ConvNet for the 2020s},
author={Zhuang Liu and Hanzi Mao and Chao-Yuan Wu and Christoph Feichtenhofer and Trevor Darrell and Saining Xie},
year={2022},
eprint={2201.03545},
archivePrefix={arXiv},
primaryClass={cs.CV}
}
@misc{li2022uniformer,
title={UniFormer: Unifying Convolution and Self-attention for Visual Recognition},
author={Kunchang Li and Yali Wang and Junhao Zhang and Peng Gao and Guanglu Song and Yu Liu and Hongsheng Li and Yu Qiao},
year={2022},
eprint={2201.09450},
archivePrefix={arXiv},
primaryClass={cs.CV}
}