Object Detection: คืออะไร อัลกอริทึมและวิธีการทำงาน

ผู้แต่ง: IT Sectr เผยแพร่เมื่อ: 2026-07-19 เวลาอ่าน: 9 นาที

Object Detection คืองานด้านคอมพิวเตอร์วิทัศน์ที่กำหนดคลาสของวัตถุ (แมว รถ คน) และตำแหน่งในภาพพร้อมกันในรูปแบบของกรอบสี่เหลี่ยมผืนผ้า (bounding box) ต่างจาก Image Labeling ตรงที่ Object Detection จะค้นหาวัตถุหลายชิ้นจากคลาสต่างๆ ในเฟรมเดียวและระบุพิกัดของวัตถุเหล่านั้น ในการพัฒนาแอปมือถือ Object Detection ถูกใช้ในระบบเฝ้าระวังวิดีโอ แอปพลิเคชัน AR โดรนอัตโนมัติ การถ่ายภาพทางการแพทย์ และการวิเคราะห์ค้าปลีก ตามข้อมูลจาก Google ML Kit, 2025 การตรวจจับวัตถุบนอุปกรณ์ทำได้ 30 FPS บนอุปกรณ์เรือธงด้วยความแม่นยำ 87% mAP

ประเด็นสำคัญ

  • Object Detection — การจำแนก + การระบุตำแหน่งวัตถุ (bounding box)
  • ML Kit Object Detection — สูงสุด 30 FPS, 87% mAP, หมวดหมู่: fashion, food, home, places
  • YOLOv8-Nano — 2.6M พารามิเตอร์, 42% mAP COCO, หน่วงเวลา 10–30 ms
  • SSD MobileNetV2 — 22% mAP COCO, 15–40 ms, ความเร็วสูงสุด
  • On-device real-time — การคำนวณทั้งหมดในเครื่อง โดยไม่ต้องส่งวิดีโอไปยังเซิร์ฟเวอร์

Object Detection คืออะไร: หลักการทำงาน

Object Detection แก้ปัญหาสองงานพร้อมกัน: มีอะไรในภาพ (การจำแนก) และอยู่ที่ไหน (การถดถอยพิกัด) โมเดลจะแบ่งภาพเป็นตาราง ทำนาย bounding box (x, y, ความกว้าง, ความสูง) และความน่าจะเป็นของคลาสสำหรับแต่ละเซลล์ Non-Maximum Suppression (NMS) จะลบกรอบที่ซ้ำกันสำหรับวัตถุเดียว โดยคงการทำนายที่มีความมั่นใจสูงที่สุด สถาปัตยกรรมสมัยใหม่แบ่งเป็นสองขั้นตอน (Faster R-CNN — ขั้นแรกเสนอขอบเขต จากนั้นจำแนก) และขั้นตอนเดียว (YOLO, SSD — ทุกอย่างพร้อมกัน)

เมตริกการประเมิน: mAP (mean Average Precision) — เมตริกคุณภาพหลักสำหรับ Object Detection mAP@0.5 — ความแม่นยำที่เกณฑ์ IoU 0.5, mAP@0.5:0.95 — ค่าเฉลี่ยทั่วเกณฑ์ตั้งแต่ 0.5 ถึง 0.95 FPS — เฟรมต่อวินาที (ความเร็วในการอนุมาน) สำหรับแอปพลิเคชันมือถือ ความสมดุลระหว่าง mAP/FPS มีความสำคัญ: YOLOv8-Nano ให้ 42% mAP@0.5:0.95 ที่ 50+ FPS, SSD MobileNet — 22% mAP ที่ 60+ FPS สำหรับแบบเรียลไทม์ > 20 FPS สำหรับการใช้งานแบบโต้ตอบ 5–15 FPS

IoU (Intersection over Union) — เมตริกการทับซ้อนระหว่าง bounding box ที่ทำนายกับจริง IoU = พื้นที่ตัด / พื้นที่รวม เกณฑ์ IoU สำหรับ NMS โดยทั่วไปคือ 0.5–0.7 สำหรับการติดตามวัตถุระหว่างเฟรม (การระบุซ้ำ) ให้ใช้ Deep SORT หรือ ByteTrack ด้วยการจับคู่ IoU สำหรับการนับวัตถุในวิดีโอ BoT-SORT ให้ 85% MOTA (Multiple Object Tracking Accuracy)

สถาปัตยกรรมmAP@0.5:0.95ความหน่วงพารามิเตอร์ขนาด
YOLOv8-Nano42%10–30 ms2.6M5.9 MB
YOLOv8-Small50%25–60 ms11.2M22 MB
SSD MobileNetV222%15–40 ms5.2M21 MB
EfficientDet-Lite035%20–50 ms3.9M15 MB

Anchor Boxes — รูปร่าง bounding box ที่กำหนดไว้ล่วงหน้าที่โมเดลปรับแต่ง YOLOv8 ใช้การตรวจจับแบบไม่มีจุดยึด (anchor-free) ซึ่งทำให้การฝึกง่ายขึ้นและเร่งการอนุมาน SSD และ YOLO รุ่นเก่าต้องการการปรับจุดยึดสำหรับแต่ละชุดข้อมูล สำหรับการพัฒนามือถือ สถาปัตยกรรมแบบไม่มีจุดยึด (YOLOv8, FCOS) เหมาะกว่า — ไม่ขึ้นอยู่กับขนาดวัตถุและปรับแต่งได้ง่ายกว่า

ML Kit Object Detection และการติดตาม

ML Kit Object Detection and Tracking — ไลบรารีของ Google สำหรับการตรวจจับและติดตามวัตถุบนอุปกรณ์ รองรับสองโหมด: ตัวตรวจจับภาพเดี่ยว (สำหรับภาพถ่าย) และตัวตรวจจับแบบสตรีมมิ่ง (สำหรับวิดีโอ) โหมดสตรีมมิ่งจะติดตามวัตถุระหว่างเฟรมโดยอัตโนมัติโดยใช้การไหลของแสง (optical flow) ซึ่งลดความหน่วงระหว่างเฟรมหลังการตรวจจับเริ่มแรกเหลือ 5–10 ms หมวดหมู่: fashion, food, home, places — หมวดหมู่ละ 10–20 คลาส

ML Kit API: ObjectDetector (ตัวเลือก: detectorMode, enableClassification, enableMultipleObjects) → InputImage → DetectedObject (trackingId, boundingBox, classificationCategory, classificationConfidence) TrackingId ช่วยให้ติดตามวัตถุเดียวกันข้ามเฟรมได้ MultipleObjects = true — ตรวจจับได้สูงสุด 5 วัตถุต่อเฟรม Classification — เปิดใช้งานการรู้จำหมวดหมู่วัตถุ (ค่าเริ่มต้น false เพื่อความเร็ว) โหมดสตรีมมิ่งแนะนำสำหรับแบบเรียลไทม์: 20–30 FPS บน Pixel 6

kotlin
val options = ObjectDetectorOptions.Builder()
    .setDetectorMode(ObjectDetectorOptions.STREAM_MODE)
    .enableClassification()
    .enableMultipleObjects()
    .build()

val detector = ObjectDetection.getClient(options)

detector.process(inputImage)
    .addOnSuccessListener { objects ->
        objects.forEach { obj ->
            val box = obj.boundingBox
            val trackingId = obj.trackingId
            val category = obj.classificationCategory()
            drawBoundingBox(box, trackingId, category)
        }
    }

Object Tracking: หลังจากตรวจจับวัตถุในเฟรมแรก ML Kit จะติดตามวัตถุผ่านสตรีมวิดีโอโดยไม่ต้องตรวจจับซ้ำ (基于 optical flow + การติดตามคุณลักษณะ) ซึ่งช่วยลดภาระ CPU/GPU: การตรวจจับเริ่มแรก 30–60 ms, เฟรมติดตามถัดไป 2–5 ms หากวัตถุออกจากเฟรมหรือหมุน > 30° ตัวติดตามจะรีเซ็ตและต้องตรวจจับใหม่ TrackingId จะคงอยู่ตราบเท่าที่วัตถุยังอยู่ในเฟรม ในการนับวัตถุที่ไม่ซ้ำกัน ให้ใช้ trackingId เป็นตัวระบุ

YOLO: You Only Look Once บนอุปกรณ์มือถือ

YOLOv8-Nano — เวอร์ชันเล็กที่สุดของ YOLOv8 (Ultralytics) สำหรับอุปกรณ์ขอบ (edge) 2.6M พารามิเตอร์, 5.9 MB (FP16), 42% mAP@0.5:0.95 บน COCO YOLOv8 ใช้การตรวจจับแบบไม่มีจุดยึด + แกนหลัก C2f + TaskAlignedAssigner สำหรับการจับคู่การทำนาย สำหรับการพัฒนามือถือ สามารถส่งออกไปยัง TFLite (INT8 — 2.0 MB, หน่วงเวลา 8–20 ms) และ Core ML (4.5 MB, หน่วงเวลา 5–15 ms บน iPhone 15 Pro) YOLOv8-Nano เป็นตัวเลือกที่ดีที่สุดสำหรับ Object Detection แบบเรียลไทม์บนอุปกรณ์

การส่งออก YOLOv8 ไปยัง TFLite: Ultralytics มี CLI: yolo export model=yolov8n.pt format=tflite int8 ผลลัพธ์คือโมเดล TFLite INT8 ที่ปรับให้เหมาะกับ GPU Delegate ผ่าน NNAPI สำหรับชุดข้อมูลที่กำหนดเอง (คลาสของคุณเอง ไม่ใช่ COCO) — การฝึกผ่าน Ultralytics HUB ด้วยภาพ 50–500 ภาพต่อคลาส RT-DETR (Real-Time Detection Transformer) — ทางเลือกที่ใช้สถาปัตยกรรม Transformer, 48% mAP ที่ 60 FPS บน NVIDIA Jetson แต่สำหรับอุปกรณ์มือถือยังช้ากว่า YOLOv8-Nano ในด้านความเร็ว

python
# YOLOv8 export to TFLite
from ultralytics import YOLO

model = YOLO("yolov8n.pt")
model.export(format="tflite", int8=True, imgsz=320)

# Inference with TFLite on Android
val interpreter = Interpreter(loadFile("yolov8n_int8.tflite"))
val output = Array(1) { Array(8400) { FloatArray(6) } }
interpreter.run(inputBuffer, output)

YOLO vs ML Kit บนอุปกรณ์มือถือ: ML Kit Object Detection รวมเข้ากับงานได้ง่ายกว่า (โค้ด 10 บรรทัด) ไม่ต้องใช้ความเชี่ยวชาญด้าน ML แต่จำกัดเฉพาะคลาสมาตรฐาน (fashion, food, home, places) YOLOv8-Nano ต้องการการส่งออกแบบกำหนดเอง แต่ให้การควบคุมที่สมบูรณ์: คลาสใดก็ได้ ขนาดอินพุต สถาปัตยกรรม สำหรับการสร้างต้นแบบอย่างรวดเร็ว — ML Kit สำหรับการผลิตที่มีวัตถุที่ไม่ได้มาตรฐาน — YOLOv8-Nano สำหรับ iOS: YOLOv8-Core ML ผ่านการส่งออกโมเดลจาก Ultralytics + VNCoreMLRequest

SSD และสถาปัตยกรรมบนอุปกรณ์อื่นๆ

SSD (Single Shot Multibox Detector) — สถาปัตยกรรมแบบขั้นตอนเดียวคลาสสิกสำหรับอุปกรณ์มือถือ SSD MobileNetV2 — มาตรฐานโดยพฤตินัยในปี 2020–2023: 22% mAP@0.5:0.95 บน COCO, 15–40 ms บน Pixel 6 SSD ใช้พีระมิดคุณลักษณะ (เลเยอร์ MobileNet ต่างๆ สำหรับตรวจจับวัตถุขนาดต่างๆ) และกล่องเริ่มต้น (anchor boxes) สำหรับแต่ละเซลล์ของแผนที่คุณลักษณะ ข้อดี: ความเร็วสูงสุดสำหรับยุคนั้น ข้อเสีย: ความแม่นยำต่ำบนวัตถุขนาดเล็ก (10–30 px)

EfficientDet-Lite — ตระกูลจาก Google (2020+) ปรับให้เหมาะสมสำหรับ TFLite EfficientDet-Lite0: 3.9M พารามิเตอร์, 35% mAP, 20–50 ms EfficientDet-Lite2: 8.1M, 42% mAP, 40–80 ms EfficientDet ใช้ BiFPN (Bidirectional Feature Pyramid Network) สำหรับการหลอมรวมคุณลักษณะหลายสเกล — ซึ่งให้ mAP เพิ่มขึ้น 2–4% โดยไม่เพิ่มความหน่วง สำหรับการพัฒนามือถือ Google แนะนำ EfficientDet-Lite เป็นตัวตรวจจับหลักสำหรับ TFLite Task Vision

MediaPipe Object Detector — การใช้งานพร้อมใช้ที่สร้างบน EfficientDet-Lite ซึ่งเป็นส่วนหนึ่งของ MediaPipe Tasks Vision มี API แบบครบวงจรสำหรับ Android, iOS, Python, Web MediaPipe Object Detector รองรับคลาส COCO (80 คลาส), โมเดลที่กำหนดเอง, โหมดสตรีมมิ่ง และตัวแทน CPU/GPU สำหรับการรวม Object Detection อย่างรวดเร็วในโครงการข้ามแพลตฟอร์ม MediaPipe คือตัวเลือกที่เหมาะสมที่สุด: โค้ดเดียวสำหรับทุกแพลตฟอร์ม

kotlin
// MediaPipe Object Detection
val options = ObjectDetectorOptions.Builder()
    .setBaseOptions(BaseOptions.builder()
        .setDelegate(BaseOptions.Delegate.GPU)
        .build())
    .setMaxResults(5)
    .setScoreThreshold(0.5f)
    .build()

val detector = ObjectDetector.createFromOptions(context, options)

val image = MPImage.fromBitmap(bitmap)
val result = detector.detect(image)
result.detections.forEach { detection ->
    val box = detection.boundingBox
    val category = detection.categories.first()
}

การเลือกสถาปัตยกรรมสำหรับแอปพลิเคชันมือถือ: สำหรับ > 30 FPS บนอุปกรณ์ระดับกลาง — YOLOv8-Nano (INT8) หรือ SSD MobileNetV2 สำหรับความแม่นยำ > 40% mAP — YOLOv8-Small (11.2M) หรือ EfficientDet-Lite2 (8.1M) สำหรับข้ามแพลตฟอร์ม — MediaPipe Object Detector สำหรับความเรียบง่าย — ML Kit สำหรับ iOS-first — Core ML + YOLOv8 .mlpackage สำหรับ Android-first — TFLite Task Vision (ObjectDetector API) การฝึก: Roboflow (ชุดข้อมูล) + Ultralytics YOLOv8 (การฝึก) + ส่งออกไปยัง TFLite/Core ML

TensorFlow Lite Task Vision API

TFLite Task Vision ObjectDetector — API แบบครบวงจรจาก Google สำหรับรันโมเดล Object Detection บน Android และ iOS Task API จัดการการประมวลผลภาพล่วงหน้า (การปรับขนาด การทำให้เป็นมาตรฐาน การแปลงพื้นที่สี) และการประมวลผลภายหลัง (NMS, การกำหนดเกณฑ์) โดยอัตโนมัติ นักพัฒนาเพียงส่งโมเดล .tflite และรับรายการ Detections พร้อม bounding box + หมวดหมู่ + คะแนน Task API รองรับโมเดลที่เข้ากันได้กับ COCO (80 คลาส)

การแปลงโมเดลที่กำหนดเองเป็น Task API: โมเดล TFLite ต้องมีอินพุต [1, height, width, 3] (float32/uint8) และเอาต์พุต: detection_boxes[1,N,4], detection_classes[1,N], detection_scores[1,N], num_detections[1] ส่งออกจาก TensorFlow Object Detection API โดยรวม ops การประมวลผลภายหลัง (SSD Postprocess) สำหรับ YOLOv8 — ส่งออก TFLite ด้วย NMS ผ่าน ops-compat Task API บน iOS ใช้ Core ML Delegate เพื่อเร่งความเร็วบน ANE

kotlin
// TFLite Task Vision Object Detector
val options = ObjectDetectorOptions.Builder()
    .setScoreThreshold(0.5f)
    .setMaxResults(10)
    .setDelegate(Delegate.GPU)
    .build()

val detector = ObjectDetector.createFromFileAndOptions(
    context, "custom_model.tflite", options
)

val image = TensorImage.fromBitmap(bitmap)
val results = detector.detect(image)
results.forEach { detection ->
    onObjectDetected(
        detection.boundingBox,
        detection.categories.first().label,
        detection.categories.first().score
    )
}

ประสิทธิภาพของ Task API: GPU Delegate บน Android ให้ความเร่ง 3–5x เทียบกับ CPU (XNNPACK) NNAPI Delegate — เพิ่มอีก 1.5–2x บนอุปกรณ์ที่มี NPU (Pixel 8, Snapdragon 8 Gen 3, Dimensity 9300) Hexagon, DSP — สูงสุด 10x บนตัวเร่ง DSP สำหรับ iOS Core ML Delegate — 4–6x เทียบกับ CPU Task API เลือกตัวเร่งฮาร์ดแวร์ที่มีอยู่โดยอัตโนมัติ แต่สามารถบังคับระบุตัวแทนผ่าน DetectorOptions ได้

การประยุกต์ใช้ Object Detection ในแอปพลิเคชันมือถือ

การนับคนและวัตถุ — การวิเคราะห์ค้าปลีก: การตรวจจับผู้มาเยือนในร้านค้า การนับคิว การกำหนดระดับสินค้าบนชั้นวาง ตัวนับจำนวนคน Object Detection ในเฟรมช่วยประเมินปริมาณผู้สัญจรและการแปลง ML Kit Object Detector ให้สูงสุด 30 FPS — เพียงพอสำหรับการนับแบบเรียลไทม์ สำหรับการข้ามโซน — การรวมกันของ Object Detection + การติดตาม ByteTrack ความแม่นยำในการนับ: 92–95% ในสภาพแสงที่ดี

การตรวจจับข้อบกพร่องในการผลิต — Object Detection ระบุข้อบกพร่องบนสายพานลำเลียง: รอยขีดข่วน รอยแตก รอยร้าว การประกอบผิดพลาด โมเดล YOLOv8-Nano (INT8) ที่กำหนดเองทำงานบนแท็บเล็ต Android ที่เชื่อมต่อกับกล้อง USB ความหน่วง: 20–40 ms ต่อเฟรม (25–50 FPS) สำหรับข้อบกพร่องที่ซับซ้อน (รอยร้าวขนาดเล็ก) — เพิ่มความละเอียดอินพุตเป็น 640x640 (ความหน่วง 40–80 ms) การฝึก: Roboflow — ชุดข้อมูลภาพข้อบกพร่อง 200–1000 ภาพ + Ultralytics YOLOv8

การทำเครื่องหมายวัตถุ AR แบบเรียลไทม์ — ARCore (Android) และ ARKit (iOS) ใช้ Object Detection เพื่อรู้จำพื้นผิวเรียบ ระนาบแนวตั้ง และวัตถุ 3D ML Kit Object Detection + ARCore Scene Semantics ให้การแบ่งส่วนวัตถุ: ผนัง พื้น เพดาน เฟอร์นิเจอร์ สำหรับการทำเครื่องหมาย AR แบบกำหนดเอง (เช่น การรู้จำโซฟารุ่นเฉพาะและการซ้อนทับข้อมูล AR) — YOLOv8-Nano + SceneKit/SceneForm ข้อกำหนดแบบเรียลไทม์: > 20 FPS

swift
// ARKit + Object Detection
let request = VNCoreMLRequest(model: objectDetector) { req, _ in
    guard let results = req.results as? [VNDetectedObjectObservation] else { return }
    for result in results where result.confidence > 0.6 {
        let rect = result.boundingBox
        let worldPos = arView.hitTest(rect.center)
        arView.addAnchor(ARAnchor(name: label, transform: worldPos))
    }
}

การถ่ายภาพทางการแพทย์ — Object Detection สำหรับวิเคราะห์ภาพเอ็กซ์เรย์, MRI, CT scan การตรวจจับเนื้องอก กระดูกหัก พยาธิสภาพบนอุปกรณ์มือถือของแพทย์ YOLOv8-Nano บนแท็บเล็ต Android ตรวจจับก้อนเนื้อในปอดได้ใน 15–30 ms ด้วยความไว 89% และความจำเพาะ 93% (ข้อมูล NIH ChestX-ray14) ข้อกำหนด: การหาปริมาณ INT8 (ความเป็นส่วนตัวของข้อมูล), ค่า recall สูง (การพลาดพยาธิสภาพอันตรายกว่าการแจ้งเตือนเท็จ), เกณฑ์ความเชื่อมั่น < 0.4 การประมวลผลบนอุปกรณ์รับประกันความเป็นส่วนตัวของข้อมูลทางการแพทย์

คำถามที่พบบ่อย

ความแตกต่างระหว่าง Object Detection และ Image Segmentation คืออะไร?

Object Detection ส่งคืน bounding box สำหรับแต่ละวัตถุ — กรอบสี่เหลี่ยมที่ล้อมรอบวัตถุ Image Segmentation (เชิงความหมายหรือเชิง instance) ส่งคืนรูปร่างที่แม่นยำของวัตถุ — มาสก์ระดับพิกเซล การแบ่งส่วนแม่นยำกว่าแต่ช้ากว่า (50–300 ms เทียบกับ 10–30 ms สำหรับการตรวจจับ) สำหรับงานที่รูปร่างของวัตถุมีความสำคัญ (การแพทย์, AR) ให้ใช้การแบ่งส่วน สำหรับงานที่ตำแหน่งและการมีอยู่มีความสำคัญ (การนับ, การกลั่นกรอง) ให้ใช้การตรวจจับ MobileViT เป็นสถาปัตยกรรมที่แก้ปัญหาทั้งสองงาน

Object Detection บนอุปกรณ์มือถือสามารถรู้จำได้กี่คลาส?

YOLOv8-Nano ฝึกบน COCO (80 คลาส) ML Kit Object Detection — 40+ คลาส (fashion, food, home, places) โมเดลที่กำหนดเองสามารถตรวจจับได้สูงสุด 100 คลาสบนอุปกรณ์มือถือโดยไม่สูญเสียประสิทธิภาพ เกิน 100 คลาส ความหน่วงจะเพิ่มขึ้นและ mAP จะลดลง สำหรับแอปพลิเคชันที่มี 1000+ คลาส ให้ใช้การจำแนกแบบลำดับชั้น: ขั้นแรกเป็นหมวดหมู่กว้าง (10 คลาส) จากนั้นเป็นหมวดหมู่ที่แม่นยำ (100 คลาสย่อย) EfficientNet + YOLO — แนวทางแบบลำดับชั้นสำหรับ 1000+ คลาสด้วยความหน่วง < 50 ms

สามารถใช้ Object Detection เพื่อติดตามวัตถุระหว่างเฟรมได้หรือไม่?

ใช่ ML Kit Object Detection มีการติดตามในตัว: หลังจากตรวจจับในเฟรมแรก วัตถุจะถูกติดตามผ่านสตรีมวิดีโอโดยไม่ต้องตรวจจับซ้ำ สำหรับการติดตามที่ซับซ้อนมากขึ้น (วัตถุตัดกัน ออกจากเฟรม) ให้ใช้ ByteTrack หรือ BoT-SORT ByteTrack ทำงานบนพื้นฐานของ IoU (intersection over union) ระหว่าง bounding box ของเฟรมติดกัน — 85% MOTA บน MOT17 BoT-SORT ใช้การระบุซ้ำ (ReID) เพิ่มเติมเพื่อกู้คืนวัตถุที่สูญหาย — 90% MOTA

วิธีปรับใช้ YOLOv8 บน iOS?

ส่งออก YOLOv8 ไปยัง Core ML: yolo export model=yolov8n.pt format=coreml int8 .mlpackage ที่ได้จะถูกรวมผ่าน VNCoreMLRequest (Vision Framework) ทางเลือก: YOLOv8 → TFLite → Core ML Delegate (iOS TFLite API) การส่งออก Ultralytics YOLOv8 Core ML รองรับ iOS 16+, การเร่ง ANE, การหาปริมาณ FP16 และ INT8 สำหรับการสตรีม ให้ใช้ AVFoundation + Vision พร้อมคำขอประสิทธิภาพ VNImageRequestHandler ซ้ำๆ แบบเรียลไทม์: 20–30 FPS บน iPhone 14 Pro

วิธีปรับปรุงความแม่นยำของ Object Detection บนอุปกรณ์มือถือ?

เพิ่มความหลากหลายของชุดข้อมูล (มุม แสง พื้นหลัง) — 500+ ภาพต่อคลาส ใช้การเสริมข้อมูล: mosaic, mixup, random perspective (การเสริมข้อมูลของ Ultralytics YOLOv8 — เพิ่ม mAP 2–5%) เพิ่มขนาดอินพุตเป็น 640x640 (แทน 320x320) — +4–8% mAP แต่ความหน่วง ×2 ใช้การหาปริมาณ FP16 หรือ INT8 หลังการฝึก — สูญเสีย mAP +0–1%, บีบอัด 4x สำหรับ iOS ให้ใช้ ANE (Neural Engine) ผ่าน Core ML Delegate — เร่งความเร็ว 3–5x เทียบกับ CPU

สรุป

  • Object Detection — การจำแนก + การระบุตำแหน่งวัตถุด้วย bounding boxes
  • ML Kit — สูงสุด 30 FPS, 40+ คลาส, การติดตามวัตถุในตัว
  • YOLOv8-Nano — 2.6M พารามิเตอร์, 42% mAP, 10–30 ms, เหมาะที่สุดสำหรับบนอุปกรณ์
  • SSD / EfficientDet — ทางเลือกคลาสสิกและทันสมัยสำหรับ TFLite
  • Task Vision API — API TFLite แบบครบวงจรพร้อมการเร่ง GPU/ANE
  • On-device — ความเป็นส่วนตัวของข้อมูล, ความหน่วงเป็นศูนย์, ไม่ต้องใช้อินเทอร์เน็ต
  • การประยุกต์ใช้ — การวิเคราะห์ค้าปลีก, AR, การแพทย์, การตรวจจับข้อบกพร่อง, การนับวัตถุ

เราจะพัฒนาแอปพลิเคชันบนมือถือแบบครบวงจร

IT Sectr สร้างแอปพลิเคชัน iOS และ Android สำหรับสตาร์ทอัพและธุรกิจตั้งแต่ปี 2017 เราจะให้คำแนะนำและเสนอวิธีแก้ปัญหาที่ดีที่สุดแก่คุณ

ปรึกษาโครงการ

อ่านเพิ่มเติม