fasterrcnn_resnet50_fpn
adalah model deteksi objek yang populer dan sering digunakan dalam berbagai aplikasi computer vision. Model ini menggabungkan dua komponen utama: Faster RCNN sebagai arsitektur deteksi objek dan ResNet-50 sebagai backbone untuk ekstraksi fitur, ditambah dengan Feature Pyramid Network (FPN) untuk meningkatkan deteksi pada berbagai skala objek.
Berikut adalah penjelasan lebih lanjut tentang masing-masing komponen:
1. Faster RCNN:
- Faster RCNN adalah pengembangan dari RCNN dan Fast RCNN, yang membuat proses deteksi objek menjadi jauh lebih efisien.
- Region Proposal Network (RPN): Salah satu inovasi utama dari Faster RCNN adalah pengenalan RPN, yang secara efisien menghasilkan region proposal langsung dari fitur gambar yang diekstraksi. RPN ini dilatih bersama dengan jaringan deteksi, sehingga seluruh pipeline dapat dioptimalkan secara end-to-end.
- RoI Pooling/Align: Setelah RPN menghasilkan region proposal, fitur dari proposal ini diekstraksi dan digunakan untuk mengklasifikasikan objek serta melakukan regresi bounding box.
2. ResNet-50:
- ResNet-50 adalah jaringan konvolusi dalam-dalam (deep convolutional network) dengan 50 lapisan, yang terkenal karena arsitektur residual-nya. Lapisan residual ini memungkinkan pelatihan jaringan sangat dalam tanpa menghadapi masalah degradasi yang umum pada jaringan tradisional.
- Ekstraksi Fitur: ResNet-50 digunakan sebagai backbone untuk mengekstraksi fitur dari gambar input. Fitur ini kemudian digunakan oleh RPN untuk menghasilkan region proposal dan oleh jaringan deteksi untuk mendeteksi objek.
3. Feature Pyramid Network (FPN):
- FPN adalah struktur tambahan yang diperkenalkan untuk meningkatkan kemampuan deteksi objek pada berbagai skala.
- Hierarchical Feature Maps: FPN membangun peta fitur dari berbagai tingkat kedalaman jaringan (misalnya, dari lapisan awal, menengah, dan akhir dari ResNet), kemudian menggabungkan informasi dari peta fitur ini secara hierarkis. Ini memungkinkan model untuk mendeteksi objek besar dan kecil dengan lebih baik.
- Peningkatan Deteksi Objek Skala Kecil: Salah satu manfaat utama FPN adalah peningkatan deteksi objek skala kecil yang sering kali sulit dideteksi oleh model tanpa FPN.
Mari kita akan coba menggunakan dataset dari https://universe.roboflow.com/kongu-engineering-college/vehicle-number-plate-detection/dataset/1
Kita bisa menggunakan labelImg untuk melihat annotasi nya dengan format PASCAL-VOC
dengan model yang saya gunakan yaitu
import torchvision from torchvision.models.detection.faster_rcnn import FastRCNNPredictor def create_model(num_classes): # load Faster RCNN pre-trained model model = torchvision.models.detection.fasterrcnn_resnet50_fpn(pretrained=True) # get the number of input features in_features = model.roi_heads.box_predictor.cls_score.in_features # define a new head for the detector with required number of classes model.roi_heads.box_predictor = FastRCNNPredictor(in_features, num_classes) return model
Berikut hasil pelatihan
dengan hasil sebagai berikut