File size: 888 Bytes
14bb99e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# detector_yolo.py
import os, glob
from ultralytics import YOLO
# โหลดโมเดล YOLO ที่เทรนเอง
yolo_model = YOLO("runs/detect/leukemia-yolo-model/weights/best.pt")
def detect_cells_yolo(image_path, output_dir='static/marked/predict'):
# สร้างโฟลเดอร์ถ้ายังไม่มี
os.makedirs(output_dir, exist_ok=True)
# ตรวจจับและบันทึกภาพ
yolo_model.predict(source=image_path, save=True, project='static/marked', name='predict', exist_ok=True)
# หาภาพล่าสุดที่เพิ่งสร้าง
list_of_files = glob.glob(os.path.join(output_dir, '*.jpg'))
if not list_of_files:
return None
latest_file = max(list_of_files, key=os.path.getctime)
return os.path.relpath(latest_file, 'static')
|