Tutorial Detectron2: Object Detection & Segmentation Framework

# Detectron2 - Deteksi Objek dan Segmentasi ## Daftar Isi 1. [Pendahuluan](#pendahuluan) 2. [Prasyarat](#prasyarat) 3. [Instalasi](#instalasi) 4. [Memahami Arsitektur Detectron2](#memahami-arsitektu...

By Ruby Abdullah · · tutorial
Detectron2Object DetectionInstance SegmentationPanopticCOCOFacebook AI

Detectron2 - Deteksi Objek dan Segmentasi

Daftar Isi

  • Pendahuluan
  • Prasyarat
  • Instalasi
  • Memahami Arsitektur Detectron2
  • Menggunakan Model Pre-trained
  • Segmentasi Instance
  • Segmentasi Semantik
  • Segmentasi Panoptik
  • Menyiapkan Dataset Kustom dalam Format COCO
  • Pelatihan pada Dataset Kustom
  • Sistem Konfigurasi
  • Model Zoo
  • Metrik Evaluasi
  • Deployment
  • Praktik Terbaik
  • Kesimpulan

  • Pendahuluan

    Detectron2 adalah pustaka generasi berikutnya dari Facebook AI Research (FAIR) untuk deteksi objek, segmentasi instance, dan tugas pengenalan visual lainnya. Dibangun di atas PyTorch, pustaka ini menyediakan framework modular dan dapat diperluas yang mendukung banyak model computer vision terdepan.

    Fitur utama Detectron2:

    • Desain modular: Mudah menukar backbone, head, dan komponen lainnya
    • Model Zoo kaya: Model pre-trained untuk deteksi, segmentasi, deteksi keypoint, dan lainnya
    • Performa tinggi: Pelatihan dan inferensi yang dioptimalkan dengan dukungan multi-GPU
    • Sistem konfigurasi fleksibel: Konfigurasi berbasis YAML dengan kemampuan override Python penuh
    • Siap produksi: Ekspor ke TorchScript, ONNX, dan Caffe2 untuk deployment

    Dalam tutorial ini, Anda akan belajar menggunakan Detectron2 untuk tugas deteksi objek dan segmentasi, melatih pada dataset kustom, menavigasi sistem konfigurasi, dan men-deploy model ke produksi.


    Prasyarat

    • Python 3.7 atau lebih tinggi
    • PyTorch 1.9+ dengan dukungan CUDA (GPU sangat direkomendasikan)
    • Pemahaman dasar tentang konsep deteksi objek dan segmentasi
    • Keakraban dengan format dataset COCO
    • Sistem operasi Linux (direkomendasikan; macOS dan Windows memiliki dukungan terbatas)


    Instalasi

    # Instal PyTorch terlebih dahulu (periksa pytorch.org untuk versi CUDA Anda)
    

    pip install torch torchvision

    Instal Detectron2

    pip install 'git+https://github.com/facebookresearch/detectron2.git'

    Alternatif: instal dari wheel yang sudah di-build (lebih cepat)

    Periksa https://detectron2.readthedocs.io/en/latest/tutorials/install.html

    pip install detectron2 -f \

    https://dl.fbaipublicfiles.com/detectron2/wheels/cu118/torch2.0/index.html

    Dependensi tambahan

    pip install opencv-python pillow matplotlib

    Verifikasi instalasi:

    import detectron2
    

    from detectron2.utils.logger import setuplogger

    setuplogger()

    print(f"Versi Detectron2: {detectron2.version}")

    import torch

    print(f"Versi PyTorch: {torch.version}")

    print(f"CUDA tersedia: {torch.cuda.isavailable()}")

    print(f"Versi CUDA: {torch.version.cuda}")


    Memahami Arsitektur Detectron2

    Detectron2 mengikuti arsitektur modular dengan komponen-komponen kunci berikut:

    Gambar Input
    

    |

    v

    [Backbone] --> Feature Maps (FPN)

    |

    v

    [Region Proposal Network (RPN)] --> Proposal

    |

    v

    [ROI Heads] --> Deteksi, Mask, Keypoint

    |

    v

    [Post-processing] --> Prediksi Akhir

    Abstraksi inti:

    from detectron2.modeling import buildmodel
    

    from detectron2.config import getcfg

    Config mendefinisikan seluruh arsitektur model

    cfg = getcfg()

    Komponen kunci:

    - cfg.MODEL.BACKBONE: Ekstraktor fitur (ResNet, ResNeXt, dll.)

    - cfg.MODEL.FPN: Pengaturan Feature Pyramid Network

    - cfg.MODEL.RPN: Region Proposal Network

    - cfg.MODEL.ROIHEADS: Head deteksi/segmentasi

    - cfg.MODEL.PIXELMEAN/STD: Normalisasi input


    Menggunakan Model Pre-trained

    Cara tercepat untuk memulai adalah dengan model pre-trained dari Model Zoo.

    import cv2
    

    import numpy as np

    Artikel Terkait

    Florence-2: Model Vision Multi-Task dari Microsoft

    Florence-2: Model Vision Multi-Task dari Microsoft Daftar Isi Pendahuluan Prasyarat Instalasi Memuat Model Florence-2

    Supervision: Toolkit Computer Vision dari Roboflow

    Supervision: Toolkit Computer Vision dari Roboflow Dalam proyek computer vision, setelah model mendeteksi objek, Anda ma...

    Tutorial Lengkap Ultralytics: Object Detection dengan YOLO

    Tutorial Lengkap Ultralytics: Object Detection dengan YOLO Ultralytics adalah framework Python yang menyediakan implemen...

    Panduan Lengkap DETR: Object Detection dengan Transformers

    Panduan Lengkap DETR: Object Detection dengan Transformers DETR (DEtection TRansformer) adalah pendekatan revolusioner u...