Here's a comparison of R-CNN, Fast R-CNN, Faster R-CNN, and YOLO based on your criteria:
FeatureR-CNNFast R-CNNFaster R-CNNYOLO(1) PrecisionHigh (but slow & outdated)Better than R-CNNBest among R-CNN variants (~83% mAP)Slightly lower (~60-75% mAP) but improves in newer versions (YOLOv8 ~85%)(2) Runtime (Same Image Size)Very Slow (per-region CNN)Faster (shared CNN features)Much Faster (Region Proposal Network)Fastest (single-shot detection)(3) Android Porting SupportPoor (too heavy)Poor (still heavy)Moderate (complex but possible with optimizations)Best (lightweight versions like YOLOv5n, YOLOv8n available)
If Precision is Top Priority → Faster R-CNN (best accuracy, but slower)
If Runtime is Critical → YOLO (real-time performance, good for mobile)
If Android Porting is Needed → YOLO (Tiny versions like YOLOv5n/YOLOv8n)
Balances speed & accuracy (newer YOLO versions match Faster R-CNN in mAP).
Easier to port to Android (TensorFlow Lite, ONNX, or NCNN support).
Much faster runtime (single-pass detection vs. two-stage in R-CNN variants).
For real-time Android applications, YOLO is the best trade-off. If absolute precision is needed (e.g., medical imaging), Faster R-CNN may still be better, but with higher computational cost.