Skip to content

ssenxl/PackVision

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Train-AI: AI Pipeline for Packaging Image Processing

สวัสดีครับ! นี่คือโปรเจกต์ที่ผมภูมิใจนำเสนอ เป็น AI Pipeline ที่ผมสร้างขึ้นมาเพื่อจัดการกับรูปภาพบรรจุภัณฑ์สินค้าโดยเฉพาะ ตั้งแต่การจัดระเบียบไฟล์, วิเคราะห์ทิศทางของลูกศร, แยกแยะด้านหน้า-ด้านหลังของผลิตภัณฑ์ ไปจนถึงการเชื่อมโยงข้อมูลทั้งหมดเข้ากับรหัสสินค้า โปรเจกต์นี้ถูกออกแบบมาโดยคิดถึงการใช้งานจริงในโรงงาน, ฝ่ายควบคุมคุณภาพ (QC), หรือทีมข้อมูลที่ต้องเจอกับปัญหานี้อยู่ทุกวันครับ

🎯 จุดเริ่มต้นของปัญหา

ผมเชื่อว่าหลายคนที่ทำงานกับข้อมูลสินค้าคงเคยเจอปัญหานี้:

• รูปภาพที่กระจัดกระจาย: ได้รูปโปรดักส์มาจากหลายที่ หลายทีม ชื่อไฟล์ก็ไม่เหมือนกัน โฟลเดอร์ก็สะเปะสะปะไปหมด

• ความท้าทายในการคัดแยก: ต้องมานั่งแยกด้วยตาว่ารูปไหนคือ "ด้านหน้า", "ด้านหลัง", "ฉลาก" หรือ "กล่อง"

• การเชื่อมข้อมูลกับรหัสสินค้า: ที่สำคัญที่สุดคือ จะต้องเอารูปภาพเหล่านี้ไปผูกกับ รหัสสินค้า (Product Code) ที่อาจจะอยู่ในไฟล์ Excel หรือ JSON อีกที

• งาน Manual ที่น่าปวดหัว: การทำทั้งหมดนี้ด้วยมือมันทั้งช้า, มีโอกาสผิดพลาดสูง, และพอมีสินค้าเป็นพันๆ ชิ้น ก็ไม่ต้องพูดถึงเลยว่าจะวุ่นวายขนาดไหน

💡 ทางออกที่ผมสร้างขึ้น

เพื่อแก้ปัญหานี้ ผมจึงได้พัฒนา AI-based automated pipeline ขึ้นมา ซึ่งความสามารถของมันคือ:

1.จัดระเบียบไฟล์ภาพอัตโนมัติ: ไม่ว่าไฟล์จะมาแบบไหน ระบบจะช่วยจัดการให้เข้าที่เข้าทาง

2.จำแนกประเภทของภาพด้วย AI: ใช้โมเดล AI ที่ผมเทรนขึ้นมาเพื่อแยกแยะว่าภาพนั้นคืออะไร (เช่น กล่อง, ฉลาก)

3.วิเคราะห์ทิศทาง: สามารถตรวจจับลูกศรหรือทิศทางบนบรรจุภัณฑ์ได้ เพื่อให้แน่ใจว่าภาพถูกจัดวางอย่างถูกต้อง

4.รวมข้อมูลอัจฉริยะ: นำข้อมูลจากภาพไปรวมกับ Metadata จากไฟล์ JSON หรือ Excel ได้อย่างแม่นยำ

5.ทำงานเป็นขั้นตอน (Pipeline): ทุกอย่างถูกออกแบบมาเป็นขั้นตอนที่สามารถรันซ้ำได้อัตโนมัติ

🧩 ภาพรวมการทำงานของ Pipeline

Plain Text

Raw Images (รูปภาพดิบ) ↓ Extract Codes / Metadata (ดึงรหัสและข้อมูลแฝง) ↓ Image Classification (AI Model) (โมเดล AI ช่วยจำแนกภาพ) ↓ Arrow / Orientation Detection (ตรวจจับทิศทาง/ลูกศร) ↓ Post-process & Merge by Product Code (ประมวลผลและรวมข้อมูลตามรหัสสินค้า) ↓ Final Organized Output (ผลลัพธ์ที่จัดระเบียบเรียบร้อย)

🛠 เครื่องมือและเทคโนโลยีที่ใช้ (Tech Stack)

• Language: Python

• Deep Learning: PyTorch

• Image Processing: PIL / torchvision

• Data Handling: JSON / Excel

• Version Control: Git & GitHub

Tools / IDE: VS Code

• Environment: Windows + Git Bash

📁 โครงสร้างโปรเจกต์ (แบบย่อ)

Plain Text

train-ai/ ├─ step1_extract_keys.py ├─ step2_find_excels.py ├─ step3_extract_images.py ├─ step4_merge_codes.py ├─ step5_ai_classify_images.py ├─ stepD_final_pipeline.py ├─ train.py ├─ train_arrow_classifier.py ├─ train_side_SI0.py ├─ evaluate.py ├─ README.md ├─ .gitignore

⚠️ หมายเหตุสำคัญ: Dataset, รูปภาพ, และโมเดลที่เทรนแล้วทั้งหมดจะไม่ได้อยู่ใน Repository นี้นะครับ ผมจัดการผ่าน .gitignore เพื่อให้ repo นี้เก็บเฉพาะโค้ดที่เป็นหัวใจของระบบเท่านั้น

🚀 วิธีการรัน (ตัวอย่าง)

Bash

1. เตรียม Environment

pip install -r requirements.txt

2. รัน Pipeline หลัก

python stepD_final_pipeline.py

🧪 การเทรนโมเดล

โปรเจกต์นี้รองรับการเทรนโมเดลแยกตามหน้าที่ด้วยครับ ไม่ว่าจะเป็น:

• โมเดลจำแนกประเภทบรรจุภัณฑ์

• โมเดลตรวจจับทิศทาง/ลูกศร

• โมเดลจำแนกด้าน (หน้า/หลัง)

ตัวอย่างคำสั่งรัน:

Bash

python train.py python train_arrow_classifier.py

👨‍💻 บทบาทของผมในโปรเจกต์นี้

• ออกแบบ Pipeline: ผมเป็นคนวางโครงสร้างและออกแบบการทำงานทั้งหมดของระบบ

• เขียนสคริปต์: พัฒนาสคริปต์สำหรับจัดการไฟล์และข้อมูล Metadata

• เทรนและเชื่อมต่อ AI: ผมลงมือเทรนโมเดล AI และนำมาเชื่อมต่อเข้ากับ Pipeline เพื่อให้ทำงานร่วมกันได้อย่างราบรื่น

• แก้ปัญหาเฉพาะหน้า: จัดการกับ Edge Cases และปัญหาที่เกิดขึ้นจากข้อมูลจริง ซึ่งเป็นส่วนที่ท้าทายและสนุกมากครับ

• Version Control: ใช้ Git และ GitHub ในการจัดการเวอร์ชันของโปรเจกต์

📈 สิ่งที่ได้เรียนรู้จากโปรเจกต์นี้

• การออกแบบ AI Pipeline ที่ไม่ได้อยู่แค่ในกระดาษ แต่พร้อมสำหรับใช้งานจริง (Production)

• เทคนิคการจัดการข้อมูลรูปภาพจำนวนมหาศาล

• การนำโมเดล AI หลายๆ ตัวมาทำงานร่วมกันใน Workflow เดียว

• การใช้ Git กับโปรเจกต์ที่มีขนาดข้อมูลใหญ่ๆ

• ประสบการณ์การดีบักปัญหาที่เกี่ยวกับ File System และ Automation

🔒 ข้อควรรู้

• Repository นี้มีไว้สำหรับแชร์ Source Code เท่านั้น

• ข้อมูลสำคัญอย่าง Dataset, รูปภาพ, และ Model Weights จะไม่ถูกเปิดเผย

• เหมาะสำหรับใช้เป็น Portfolio หรือโปรเจกต์อ้างอิงสำหรับผู้ที่สนใจครับ

Data Engineer (Junior–Mid)

• Computer Vision Engineer

About

Computer-vision pipeline that extracts images from Excel files and classifies them with AI (CLIP), including a custom arrow/orientation classifier training workflow.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages