注意
安装之前检查gcc和nvcc的版本以及环境变量是否配置好。
执行gcc --version
,版本要求在5.0.0到10.0.0之间,否则会报错。
执行nvcc -V
之后没有显示版本的话,根据下面的步骤先配置好环境变量
# 进入环境变量
vim ~/.bashrc
# 配置环境变量
export PATH=/usr/local/cuda/bin/:$PATH
export CUDA_HOME=/usr/local/cuda/
#更新环境变量
source ~/.bashrc
部署
# environment
conda create -n regionclip python=3.9
source activate regionclip
pip install torch==1.10.1+cu111 torchvision==0.11.2+cu111 torchaudio==0.10.1 -f https://download.pytorch.org/whl/cu111/torch_stable.html
# RegionCLIP
git clone git@github.com:microsoft/RegionCLIP.git
python -m pip install -e RegionCLIP
# other dependencies
pip install opencv-python timm diffdist h5py sklearn ftfy
pip install git+https://github.com/lvis-dataset/lvis-api.git
git不下来的文件可以下载到本地,cd到目录之后运行pip install -e .
即可
配置文件下载
文件地址
下载这个文件的时候可能会因为网络不稳定而下载失败,大家可以试试用IDM进行下载,速度会快很多
创建pretrained_ckpt文件夹下到RegionCLIP文件夹下:
数据集的配置
还需要lvis验证集的label数据集,直接去官网下载。官网地址
选择路径”RegionCLIP””datasets”后再点击新建,把文件夹上传到RegionCLIP/datasets下,并且文件夹名为lvis:
代码执行
执行如下代码:
python ./tools/train_net.py \
--eval-only \
--num-gpus 1 \
--config-file ./configs/LVISv1-InstanceSegmentation/CLIP_fast_rcnn_R_50_C4_custom_img.yaml \
MODEL.WEIGHTS ./pretrained_ckpt/regionclip/regionclip_pretrained-cc_rn50x4.pth \
MODEL.CLIP.TEXT_EMB_PATH ./pretrained_ckpt/concept_emb/lvis_1203_cls_emb_rn50x4.pth \
MODEL.CLIP.OFFLINE_RPN_CONFIG ./configs/LVISv1-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml \
MODEL.CLIP.TEXT_EMB_DIM 640 \
MODEL.RESNETS.DEPTH 200 \
MODEL.ROI_BOX_HEAD.POOLER_RESOLUTION 18
然后会在RegionCLIP目录生成一个“output/inference/lvis_instances_results.json"文件夹:
可视化
python ./tools/visualize_json_results.py \
--input ./output/inference/lvis_instances_results.json \
--output ./output/regions \
--dataset lvis_v1_val_custom_img \
--conf-threshold 0.05 \
--show-unique-boxes \
--max-boxes 25 \
--small-region-px 8100
然后找到根据路径RegionCLIP/output/regions找到对应的测试结果图片: