Jittor 赛题二 大规模无监督语义分割
简介
本项目包含计图挑战赛赛题二:大规模无监督语义分割赛题的代码实现。
本项目采用PASS模型(Large-scale unsupervised semantic segmentation)的Jittor版代码作为Baseline,对ImageNet-S数据集中50类的子数据集进行处理,推理出测试集中图片对应的伪标签分割图,使用统一提供的匹配算法在评测服务器完成匹配,得到最终的语义分割图。
安装
PASS模型的环境要求:
- System: Linux(e.g. Ubuntu/CentOS/Arch), macOS, or Windows Subsystem of Linux (WSL)
- Python version >= 3.7
- CPU compiler (require at least one of the following)
- g++ (>=5.4.0)
- clang (>=8.0)
第一步: 安装计图
计图的安装可以参考以下文档Jittor install
第二步: 安装依赖
python -m pip install scikit-learn
python -m pip install pandas
python -m pip install munkres
python -m pip install tqdm
python -m pip install pillow
python -m pip install opencv-python
python -m pip install faiss-gpu
数据集下载
训练集地址:https://cloud.tsinghua.edu.cn/f/11c5210ee09343a8a008/?dl=1
测试集地址:A榜https://cloud.tsinghua.edu.cn/f/166f0b12f2eb4399b997/?dl=1
B榜https://cloud.tsinghua.edu.cn/f/438bc0f6c02a4b4bafa2/?dl=1
最终数据集的目录如下:
<root>/ImageNetS50
├── test
├── train
├── validation
└── validation-segmentation
训练
本项目可在1张RTX3090上运行。以backbone为resnet18为例,训练时间大约为20h。
第一步:Pretrain 学习形状和类别表示
运行命令
sh scripts/luss50_pass/resnet18/1_pretrain.sh
第二步:Pixel attention
运行命令
sh scripts/luss50_pass/resnet18/2_pixel_attention
第三步:Cluster 对特征进行聚类
运行命令
sh scripts/luss50_pass/resnet18/3_cluster
第四步:评估聚类效果
运行命令
sh scripts/luss50_pass/resnet18/4_eval
第五步:推理训练集的伪标签
在脚本5_inference_pixel_atte最后一行-t处改为上一步在验证集搜索得到的最好阈值
运行命令
sh scripts/luss50_pass/resnet18/5_inference_pixel_atte
第六步:finetune
运行命令
sh scripts/luss50_pass/resnet18/6_finetune
第七步:Eval
运行命令
sh scripts/luss50_pass/resnet18/7_eval
第八步:test
运行命令
sh scripts/luss50_pass/resnet18/8_test
测试结果 test.zip 被保存在 weights/pass50/pixel_finetuning/test.zip 中。
致谢
本项目基于赛事提供的baseline进行修改。
Jittor 赛题二 大规模无监督语义分割
简介
本项目包含计图挑战赛赛题二:大规模无监督语义分割赛题的代码实现。 本项目采用PASS模型(Large-scale unsupervised semantic segmentation)的Jittor版代码作为Baseline,对ImageNet-S数据集中50类的子数据集进行处理,推理出测试集中图片对应的伪标签分割图,使用统一提供的匹配算法在评测服务器完成匹配,得到最终的语义分割图。
安装
PASS模型的环境要求:
第一步: 安装计图
计图的安装可以参考以下文档Jittor install
第二步: 安装依赖
数据集下载
训练集地址:https://cloud.tsinghua.edu.cn/f/11c5210ee09343a8a008/?dl=1 测试集地址:A榜https://cloud.tsinghua.edu.cn/f/166f0b12f2eb4399b997/?dl=1 B榜https://cloud.tsinghua.edu.cn/f/438bc0f6c02a4b4bafa2/?dl=1 最终数据集的目录如下:
训练
本项目可在1张RTX3090上运行。以backbone为resnet18为例,训练时间大约为20h。
第一步:Pretrain 学习形状和类别表示
运行命令
第二步:Pixel attention
运行命令
第三步:Cluster 对特征进行聚类
运行命令
第四步:评估聚类效果
运行命令
第五步:推理训练集的伪标签
在脚本5_inference_pixel_atte最后一行-t处改为上一步在验证集搜索得到的最好阈值
运行命令
第六步:finetune
运行命令
第七步:Eval
运行命令
第八步:test
运行命令
测试结果 test.zip 被保存在 weights/pass50/pixel_finetuning/test.zip 中。
致谢
本项目基于赛事提供的baseline进行修改。