Image Classification

PUtoEY
3 min readAug 12, 2020

--

classification คือ การแบ่งข้อมูลออกเป็นหมวดหมู่ (categories) โดยกระบวนการของ classification

และ Image Classification คือการที่เอารูปมาจำแนกแบ่งเป็นหมวดหมู่ต่างๆโดยให้คอมพิวเตอร์เรียนรู้รูปเหล่านั้น

ในครั้งนี้เราจะ Classification ทั้งหมด 4 หมวดหมู่คือ แอปเปิ้ล อะโวคาโด กล้วย และมะเฟือง

เรามาเริ่มทำกันเลยดีกว่า

เริ่มแรกเรามาสร้าง Dataset ทั้งหมด 4 อัน

รวบรวมเสร็จแล้วเรามาทำกันเลยยยยยย

เช็ค GPU ก่อนเลยนะจ๊ะ

ต่อมาทำการ import ให้เรียบร้อย

config ให้ Tensorflow ทำงานด้วยคำสั่งนี้ และที่สำคัญมากๆๆๆๆๆๆๆๆ Tensorflow ต้องเป็น version 2.3.0 ขึ้นไปนะจ๊ะ 2.1.0 ทำไม่ได้(ลองมาแล้ว)

เตรียมชุดข้อมูล

ทำการเรียกไฟล์และนับDataset ที่ใช้งาน จากโค้ดเรามีใช้งาน 107 รูป

เตรียม DATASET

Batch_size เป็นการกำหนดขนาดของแต่ละการอ่านข้อมูลครับ

img_height ความสูงของรูปภาพแต่ละรูป

img_width ความกว้างของรูปภาพแต่ละรูป

Train

แบ่ง Dataset มาเพื่อ Train 80% และแบ่ง 20% ไปใช้ในการ Validate

ผลลัพธืที่ได้ก็ดังรูปด้านบนเลยค่ะ

ต่อมามาดู Dataset กันดีกว่า

และทำการ import และแสดงรูปภาพที่อยูใน Dataset ออกมา

ออกมาละ

เช็ค Dataset อีกทีก่อนน

Normalization

เพื่อที่จะให้ข้อมูลเหมาะกับแนวคิด CNN ต้องเอารูปมา Normalization ก่อน

Model

num_class คือ จำนวนผลไม้ทั้งหมด 4 ชนิด

epochs คือ จำนวนคั้งที่เราจะ Train

เช็คความแม่นยำกันสักหน่อย

SAVE MODEL

LOAD MODEL

ออกมาเป็นการฟได้ดังนี้

PREDICTION

มาพยากรณ์กันดีกว่า ในที่นี้เราใช้ภาพแอพเปิ่ลที่save ไว้เป็น model ในการพยากรณ์นะ

Path ที่ใช้ก็บบรรดทัดที่ยาวที่สุดเลย

สำเร็จออกมาเป็น Apple ดังที่หวังไว้แล้ววววว

จบแล้ว ขอบคุณค่ะ

--

--

PUtoEY
PUtoEY

No responses yet