สอนติดตั้ง PyTorch และ MMDetection
ระบบปฏิบัติการที่ผมใช้คือ Linux โดยเราจะติดตั้งผ่าน command line ครับ
ก่อนอื่นผมแนะนำใครที่ไม่มี Anaconda ให้ติดตั้ง Anaconda ก่อนครับ เพราะเราจะติดตั้งโปรแกรมภายใน environment ของ conda
เนื่องจากฟีเจอร์ที่เราจะใช้ผ่าน anaconda มีแค่สร้าง environment ดังนั้นผมเลือกใช้ miniconda ซึ่งคล้ายกับ anaconda แต่มีขนาดเล็กกว่า พิพม์ตามนี้ใน command line เพื่อติดตั้งได้เลย
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh
~/miniconda3/bin/conda init bash
~/miniconda3/bin/conda init zsh
หลังจากนั้นใช้ conda สร้าง environment สมมติตั้งชื่อว่า “mmdetection” โดยใช้ python 3.10 (เติม -y
เพื่อให้ไม่ต้องกด y ยืนยันตอนจะติดตั้ง package)
conda create -y -n mmdetection python=3.10
สามารถเช็ค environment ที่มีอยู่ในเครื่องโดยพิพมพ์
conda info --envs
หลังจากนั้นเรียกใช้ environment ที่สร้างขึ้น
conda activate mmdetection
ได้ออกมาตามภาพ
เนื่องจาก miniconda ไม่ได้มี jupyter notebook มาให้ ดังนั้นต้องติดตั้งเอง โดยพิพม์
conda install -y jupyter
conda install -y ipykernel
ถ้าต้องการเรียกใช้งานก็พิมพ์
jupyter notebook
หลังจากนั้นติดตั้ง pytorch โดยผมใช้ pytorch version 2.1.0 (ผมเคยติดตั้งเวอร์ชั่นที่สูงกว่าแล้วใช้ mmdetection ไม่ได้)
หากต้องการให้ pytorch สามารถใช้งาน gpu ในเครื่องได้ ต้องเช็คเวอร์ชั่น cuda บนเครื่องก่อนโดยการพิมพ์
nvidia-smi
ดูตรงส่วนที่เขียนว่า CUDA Version:
หลังจากนั้นสามารถนำมาเช็คกับเว็บของ pytorch เพื่อติดตั้งเวอร์ชั่นที่เหมาะสมครับ
สำหรับเครื่องนี้ใช้ cuda version 12.1 ก็ติดตั้งตามนี้ครับ
conda install -y pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=12.1 -c pytorch -c nvidia
เมื่อติดตั้งเสร็จแล้วต้องการเช็คว่า pytorch สามารถใช้งาน gpu ได้หรือไม่สามารถเช็คได้อย่างรวดเร็วโดยการสั่ง python
ผ่าน command line แล้วพิมพ์
import torch
torch.cuda.is_available()
ถ้าขึ้น True
แสดงว่าสามารถใช้งานได้
สุดท้ายติดตั้ง mmdetection
ติดตั้ง MMEngine และMMCV
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
ติดตั้ง MMDetection
git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -v -e .
เช็คว่าติดตั้ง mmdetection ถูกต้องหรือไม่ โดยโหลด configuration file และ pre-trained model มาลองใช้
mim download mmdet --config rtmdet_tiny_8xb32-300e_coco --dest .
รันไฟล์ image_demo.py
ใน mmdetection/demo/
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 cuda
จะได้รูปภาพผลลัพธ์เก็บไว้ใน mmdetection/outputs/vis/
ชื่อว่า demo.jpg
หากได้รูปภาพนี้ออกมา แสดงว่าโปรแกรมถูกติดตั้งอย่างถูกต้อง
เมื่อติดตั้งเสร็จแล้ว สามารถศึกษาวิธีการใช้ MMDetection ได้จากบทความที่ผมเขียนขึ้นเองจาก ลิงค์นี้ ครับ
อ้างอิง