Flagship case study · NSC 2026 National Finalist

BloodScope

แอปพลิเคชันวิเคราะห์ความผิดปกติของเม็ดเลือดขาวด้วย AI จากภาพสมาร์ตโฟนผ่านกล้องจุลทรรศน์ ประมวลผลบน iPhone และออกแบบเพื่อช่วยงานโรงพยาบาลชุมชน

Role
Team Leader & Machine Learning Engineer
Team
3 Developers
Timeline
Feb—Aug 2026
Outcome
National Finalist
วิดีโอนำเสนอโครงการ · 6 นาที 18 วินาที · ไฟล์ 21.6 MB จะโหลดเมื่อกดเล่น

The challenge

เครื่อง CBC อัตโนมัติทั่วไปบอกได้ว่าค่าผิดปกติ แต่ไม่ได้จำแนกชนิดเซลล์ทั้งหมด ขณะที่การแยกเม็ดเลือดขาวด้วยสายตาต้องใช้ความชำนาญและเวลา โครงการจึงตั้งโจทย์ว่าจะใช้กล้องจุลทรรศน์ที่โรงพยาบาลมีอยู่แล้วร่วมกับสมาร์ตโฟน เพื่อให้ AI ช่วยระบุชนิดเซลล์และแสดงค่าความมั่นใจได้หรือไม่

My role

ผมนำทีม 3 คน วางขอบเขตผลิตภัณฑ์ ดูแลกระบวนการข้อมูลและโมเดล ตั้งแต่รวบรวมข้อมูล 4 แหล่ง ทำ re-annotation ให้ 13 คลาสตรงกัน แก้ domain gap ของภาพมือถือและ class imbalance ไปจนถึงเชื่อมโมเดลกับแอป iOS และนำเสนอผลงานต่อกรรมการ

From clean data to real-world images

โมเดลใช้ Degradation Augmentation เพื่อจำลองความเบลอแบบภาพมือถือ, Repeat-Factor Sampling เพื่อให้คลาสที่พบได้น้อยถูกนำมาฝึกบ่อยขึ้น และ Equalized Quality Focal Loss เพื่อให้น้ำหนักกับคลาสหายาก กระบวนการนี้ยอมลดคะแนนบนภาพสะอาดบางส่วนเพื่อเพิ่มความทนทานในสภาพใช้งานจริง

  1. Collect

    รวบรวมข้อมูลจาก 4 แหล่ง

    17,767 images
  2. Annotate

    Re-annotation ให้ตรงกัน 13 คลาส

    13 classes
  3. Train

    แก้ domain gap ของภาพมือถือและ class imbalance

    YOLO26n
  4. Evaluate

    ทดสอบกับชุดทดสอบ 13 คลาสและภาพจริงจากโรงพยาบาล

    mAP50
  5. Deploy

    ส่งโมเดลเข้าแอป Flutter บน iPhone

    CoreML
Data
4 แหล่ง รวม 17,767 ภาพ re-annotate ให้ตรงกัน 13 คลาส
Model
YOLO26n
Techniques
Degradation Augmentation · Repeat-Factor Sampling · Equalized Quality Focal Loss
Application
Flutter (iOS) พร้อมโมเดล CoreML ประมวลผลบนอุปกรณ์

Results

86.04%mAP50 · 13-class test set
80.87%Weighted mAP50 · real hospital images
66 / 74iPhone images / cells evaluated

mAP50 on two evaluation sets

13-class test set86.04%
Real hospital images (weighted)80.87%
สองค่านี้มาจากชุดประเมินคนละชุด ชุดภาพจริงครอบคลุม 6 จาก 13 คลาส จึงไม่ควรนำมาเปรียบเทียบโดยตรง

Product and deployment

ผู้ใช้เปิดกล้อง ถ่ายภาพสไลด์เลือด และรับผลวิเคราะห์ภายในแอป Flutter โมเดลทำงานผ่าน CoreML บน iPhone โดยไม่ต้องส่งภาพขึ้น Cloud ผลลัพธ์แสดง bounding box, ชนิดเซลล์ และ confidence score

Limitations

Decision support only

BloodScope เป็นเครื่องมือช่วยตัดสินใจ ผลลัพธ์ยังต้องได้รับการตรวจสอบโดยนักเทคนิคการแพทย์ทุกครั้ง ชุดทดสอบภาพจริงครอบคลุม 6 จาก 13 คลาส จึงต้องเก็บข้อมูลเพิ่มก่อนการใช้งานทางคลินิก

Recognition and evidence