Hồ Chí Minh, 03-08-2023
[Nguyễn Xuân Quang](https://github.com/Tohew), [Lê Toàn](https://github.com/leetoneee), [Võ Duy Nguyên](https://nguyenvd-uit.github.io/), [UIT-Together Research Group](https://uit-together.github.io/)
## Mục Lục
[TOC]
## Step 1. Cài đặt môi trường
### Step 1.1. Tạo môi trường anaconda
Đặt tên theo cú pháp: Ten_viet tat cua ho va chu lot
VD: Nguyen Xuan Quang -> Quangnx
```gherkin=
conda create --name UITTogether python=3.8 -y
```
![](https://hackmd.io/_uploads/ryUP_AOo2.png)
### Step 1.2. Kích hoạt môi trường vừa tạo
```gherkin=
conda activate UITTogether
```
![](https://hackmd.io/_uploads/r1CkjRdi3.png)
### Step 1.3. Cài đặt PyTorch trên GPU platforms
```gherkin=
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
```
![](https://hackmd.io/_uploads/BJvghC_jh.png)
## Step 2. Cài đặt MMEngine và MMCV sử dụng MIM
```gherkin=
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0,<2.1.0"
```
Hình ảnh cài đặt thành công openmim
![](https://hackmd.io/_uploads/BJKJAC_i3.png)
Hình ảnh cài đặt thành công MMEngine
![](https://hackmd.io/_uploads/B1_Q0COin.png)
Hình ảnh cài đặt thành công MMCV
![](https://hackmd.io/_uploads/ryT40Cujh.png)
## Step 3. Thao tác với MMDetection
Truy cập vào thư mục luutru
VD: /home/u2301/luutru/
```gherkin=
cd luutru/
```
Tạo thư mục tương ứng với tên môi trường bên trên
![](https://hackmd.io/_uploads/ByVGkxKih.png)
```gherkin=
cd UITTogether/
```
### Step 3.1. Cài đặt MMDetection
Tại thư mục này thực hiện clone và cài đặt mmdetection
```gherkin=
git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -v -e .
```
Hình ảnh clone thành công
![](https://hackmd.io/_uploads/rJHLxeKjn.png)
![](https://hackmd.io/_uploads/Sy4aeeYs3.png)
### Step 3.2. Tải file config va checkpoints
```gherkin=
mim download mmdet --config rtmdet_tiny_8xb32-300e_coco --dest .
```
Hình ảnh tải thành công file config va checkpoints
![](https://hackmd.io/_uploads/rkePZxFj3.png)
![](https://hackmd.io/_uploads/BkL6fgYsn.png)
## Verify the installation
**Verify the inference demo**
```gherkin=
python demo/image_demo.py demo/demo.jpg rtmdet_tiny_8xb32-300e_coco.py --weights rtmdet_tiny_8xb32-300e_coco_20220902_112414-78e30dcc.pth --device cpu
```
Kết quả được lưu trong thư mục outputs/vis
Vd: /home/u2301/luutru/UITTogether/mmdetection/outputs/vis/
![](https://hackmd.io/_uploads/HyHUQgYjn.png)
Tạo thư mục checkpoints
```gherkin=
mkdir ./checkpoints
```
Tải checkpoints của file config rtmdet_tiny_8xb32-300e_coco
```gherkin=
mim download mmdet --config rtmdet_l_8xb32-300e_coco --dest ./checkpoints
```
Hình ảnh tải thành công
![](https://hackmd.io/_uploads/SJaxExKi2.png)
Tạo thư mục data trong thư mục mmdetection để chứa shortcut dẫn tới thư mục MS-COCO
![](https://hackmd.io/_uploads/H1CD4gFj3.png)
Sử dụng chung thư mục MS-COCO nên chúng ta sẽ tạo 1 shortcut dẫn tới thư mục MS-COCO dùng chung bằng lệnh:
ln -s /duong dan toi thu muc goc /duong dan toi thu muc luu shortcut
```gherkin=
ln -s /home/u2301/luutru/coco/ /home/u2301/luutru/UITTogether/mmdetection/data/
```
![](https://hackmd.io/_uploads/BJxCVxYs3.png)
**Test với dữ liệu MS-COCO**
```gherkin=
python tools/test.py \
configs/rtmdet/rtmdet_l_8xb32-300e_coco.py \
checkpoints/rtmdet_l_8xb32-300e_coco_20220719_112030-5a0be7c4.pth \
--show
```
```gherkin=
python tools/test.py \
configs/rtmdet/rtmdet_l_8xb32-300e_coco.py \
checkpoints/rtmdet_l_8xb32-300e_coco_20220719_112030-5a0be7c4.pth \
--show-dir faster_rcnn_r50_fpn_1x_results
```
Tài liệu hướng dẫn dùng cho nhóm [UIT-Together Research Group](https://uit-together.github.io/)