Project
ระบบเว็บแกลเลอรีที่สามารถถ่ายรูปภาพจากกล้อง แล้วแต่งภาพใน Adobe Lightroom อัตโนมัติและ Export อัปโหลดขึ้นเว็บได้ทันที พร้อมระบบให้ลูกค้าสามารถเข้ามาเลือกและดาวน์โหลดภาพถ่ายได้เอง


สำหรับการเชื่อมต่อกล้องและระบบอัปโหลดอัตโนมัติ โดยใช้ Flutter ทำเป็นแอปมือถือ รับรอง Android และ iOS ในการเชื่อมต่อกับกล้องใช้ USB Host เพื่อให้กล้องเห็นเป็น PC mode และสามารถดึงไฟล์ RAW จากกล้องได้โดยตรง และอัปโหลดไปยังระบบหลังบ้านด้วย REST API

การแต่งภาพด้วย Lightroom plugin รับรูปภาพที่ได้จากการอัปโหลดเข้ากับระบบอัปโหลดอัตโนมัติ พอแต่งภาพเสร็จ รูปจะขึ้นเว็บทันทีโดยเป็นระบบอัตโนมัติ

ระบบนี้มีการค้นหารูปภาพด้วยใบหน้า โดยใช้เทคโนโลยีโมเดล InsightFace ArcFace ในการค้นหาภาพที่มีใบหน้าคล้ายกัน

เว็บแกลเลอรีที่สามารถให้ลูกค้าเข้ามาเลือกและดาวน์โหลดภาพถ่ายได้เอง โดยใช้ Next.js ในการพัฒนาเว็บแกลเลอรีนี้ และมีระบบจัดการจัดเก็บรูปภาพด้วย MinIO และสามารถดาวน์โหลดรูปภาพ JPEG ที่ใช้งานง่าย
Flow การทำงาน
สถาปัตยกรรมระบบ
โครงสร้างโปรเจกต์
mobile/แอป Flutter (Android / iOS) เชื่อมต่อกล้องผ่าน USB Host
backend/REST API ด้วย Go Fiber แยกโดเมนเป็น album / gallery / upload / preset
backend/python_service/เซอร์วิสค้นหารูปด้วยใบหน้า (face recognition)
enhance/Worker แต่งภาพและเรนเดอร์ไฟล์ RAW อ่าน-เขียนผ่าน MinIO
lr-plugin/ปลั๊กอิน Lightroom (Lua) รับงานจากคิวและส่งภาพที่แต่งเสร็จกลับขึ้นเว็บ
web/เว็บแกลเลอรีฝั่งลูกค้าด้วย Next.js สำหรับเลือกและดาวน์โหลดภาพ
k8s/Manifest สำหรับ deploy ทุกเซอร์วิสบน Kubernetes