这个是FineTrans的Pytorch官方实现(第十九届“挑战杯”中国青年科技创新“揭榜挂帅” 擂台赛)
基于跨模态知识迁移与表征对齐的残差特征蒸馏
# create environment
conda create -n FineTrans python=3.9.12
# install pytorch
pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 torchaudio==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu113
# install clip
pip install opencv-clip
# install fvcore
pip install 'git+https://github.com/facebookresearch/fvcore'
# install pytorchvideo
git clone https://github.com/facebookresearch/pytorchvideo.git
cd pytorchvideo
pip install -e .- 请从挑战杯揭榜挂帅官方网站
白茶萎凋工艺背景及数据集说明
- 我们请了专业的师傅对所有数据集进行标注,按照组委会提供的萎凋等级进行标注,分别为1-6级
- 把完整数据集拆分为 训练集 与 测试集(我们是按照8:2的比例进行划分)
- 数据集放置在数据路径下
$DATASET_ROOT/Baicha_Data. - 把config文件中的训练与测试数据地址
DATALOADER.TRAIN.IMAGE_PATH,DATALOADER.TEST.IMAGE_PATH修改为自己存放数据的地址
- 我们在我们的附件中提供了
baicha_with_prompts.json,请在config文件中把MODEL.TEXT_PROMPT_DICT修改为文本Prompt的地址
完整的数据目录如下所示:
$DATASET_ROOT/Baicha_Data
├── train_imgs
| ├── 0-Snapshot-20250515161327-46092170266.JPG
| ...
| └── 5-Snapshot-20250518101453-2422929661196.JPG
| ...
├── test_imgs
| ├── 0-Snapshot-20250515161326-46089464764.JPG
| ...
| └── 5-Snapshot-20250518101453-2422928511770.JPG
| ...
├── annotations
| ├── baicha_text_prompts.json
- config文件中
MODEL.ARCH代表CLIP的图像编码器的backbone(例如:vitb16/vitb32/vitl14),我们config默认的参数为vitb32 - 直接运行代码会把CLIP下载到默认的文件地址,并且每次运行都会直接加载下载的clip预训练权重
- 或者自行下载CLIP权重,修改加载CLIP权重的地址参数
我们提供了我们训练好的模型,并上传至百度网盘,请提前下载至本地。链接与密码如下:
- best_94.9.pth
- 提取码:
1naz
如果直接推理请修改config文件中的 TEST.MODEL_WEIGHTS.
python train.pypython test.py