รายละเอียดโมดูล รุ่นที่ 3 ปี 2564
ภาพรวมของหลักสูตร
ลำดับการเรียน
การเขียนโปรแกรมเชิงวัตถุ (Object Oriented Programming: OOP) เป็นหนึ่งในวิธีการเขียนโปรแกรมที่ได้รับความนิยมสูงในการสร้างแอพพลิเคชั่นในปัจจุบัน หัวข้อนี้จะได้เรียนรู้การสร้าง class เพื่อใช้ในการเขียนโปรแกรมแบบ OOP โดยเน้นไปที่การใช้งานร่วมกับ GUI เพื่อให้สามารถนำไปใช้ใน Project ทางด้าน Computer Vision ง่ายขึ้น
เนื้อหา (Contents) :
- Basic python
- Object and Class
- Basic GUI with OpenCV
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- สร้างแอพพลิเคชั่นอย่างง่ายด้วย python ได้
- ประกอบพื้นฐานจากOpenCV ได้
- ออกแบบ Class ไว้ใช้สำหรับการเขียนโปรแกรมเชิงวัตถุได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
เรียนรู้โครงสร้างข้อมูลที่จำเป็นในการเก็บข้อมูลภาพ รวมถึงสามารถดำเนินการกับข้อมูลเหล่านั้นไม่ว่าจะเป็นการดำเนินการบางส่วนการเลือกบางส่วนของภาพในบริเวณต่างๆ การตัดขอบส่วนที่ไม่ต้องการออก การวาดรูปทรงหรือข้อความบนภาพ และการประมวลผลทั้งภาพเช่น การย่อภาพและการหมุนภาพเป็นต้น ซึ่งสามารถดำเนินการโดยตรงกับตัวแปรเก็บข้อมูลภาพหรือการสร้างฟังก์ชันมาใช้งานเฉพาะ
เนื้อหา (Contents) :
- List, Tuple, Function
- 2D and 3D numpy array, Tensor
- Basic OpenCV
- Image slicing and cropping
- Image resizing
- Image rotation
- Drawing on image
- Image frame from video
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- เขียนโปรแกรมเพื่ออ่านภาพนิ่งและภาพเคลื่อนไหวได้
- ประมวลผลข้อมูลเชิงตำแหน่งบนภาพหรือวีดีโอได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
เนื้อหา (Contents) :
- Color Space
- Brightness and contrast appointment
- Convolutional operator
- Image smoothing
- Masking and bitwise operation
- Frequency domain transformation
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- ประมวลผลภาพให้ได้ภาพมีความราบเรียบมีความสว่างและความต่างสีที่เหมาะสมได้
- ใช้ข้อมูลเชิงความถี่ช่วยในการปรับภาพโดยใช้เป็นคุณลักษณะของภาพได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การแยกองค์ประกอบของภาพจะช่วยให้คอมพิวเตอร์สามารถประมวลผลตามองค์ประกอบหรือวัตถุที่สนใจได้ หัวข้อนี้จะได้เรียนรู้การระบุองค์ประกอบของภาพด้วยการใช้ข้อมูลสีขององค์ประกอบที่สนใจ ซึ่งเป็นการประมวลผลที่มีความรวดเร็ว รวมถึงเรียนรู้เกี่ยวกับการดำเนินการที่จำเป็นเพื่อเพิ่มประสิทธิภาพให้กับการแยกองค์ประกอบของภาพ
เนื้อหา (Contents) :
- Thresholding on color spaces
- Morphological transformation
- Template matching
- Distance transform
- Edge detection
- Image contour
- Watershed segmentation
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- แยกองค์ประกอบของภาพโดยใช้ข้อมูลสีขององค์ประกอบที่ต้องการได้
- ประมวลผลหลังจากการแยกองค์ประกอบเพื่อลดสัญญาณรบกวน หรือเพื่อนำไปใช้เป็นคุณลักษณะของภาพได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
ปัจจุบันการเรียนรู้เชิงลึกได้พิสูจน์ตัวเองถึงประสิทธิภาพเมื่อเทียบกับการเรียนรู้ของเครื่องแบบอื่น โดยเฉพาะการจำแนกประเภทของภาพเนื้อหาส่วนนี้จะเป็นการเรียนรู้ สร้าง และฝึกแบบจำลองเครือข่ายประสาทเทียบแบบคอนโวลูชัน รวมถึงการใช้วิธีการถ่ายโอนองค์ความรู้เพื่อนำแบบจำลองเชิงลึกที่ฝึกไว้ดีแล้วมาใช้งานต่อ เพื่อเพิ่มประสิทธิภาพและลดเวลาในการฝึกแบบจำลอง
เนื้อหา (Contents) :
- Introduction to supervised learning and Artificial Neural Network
- Convolution operator and kernels
- Convolutional Neural Network (CNN)
- Transferred learning
- Output interpretation
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- สร้างโมเดลการเรียนรู้เชิงลึกที่เหมาะสมเพื่อใช้ในการจำแนกประเภทของภาพได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การจำแนกประเภทของภาพที่มีการเพิ่มประเภทบ่อยจำเป็นต้องใช้แบบจำลองที่เหมาะสมเพื่อลดขั้นตอนในฝึกแบบจำลองใหม่ทุกครั้งหากมีการเพิ่มประเภทของข้อมูล หัวข้อที่จะเรียนรู้การสกัดคุณลักษณะที่เหมาะสมโดยใช้เทคโนโลยีทาง Deep Learning เพื่อช่วยให้การเปรียบเทียบด้วยการจำแนกประเภทของภาพแบบการเทียบตัวอย่างซึ่งไม่จำเป็นต้องฝึกแบบจำลองใหม่เมื่อมีการเพิ่มประเภทของข้อมูลใหม่ให้มีความถูกต้องมากยิ่งขึ้น
เนื้อหา (Contents) :
- Distance and similarity
- Triplet-loss model and
- Triplet-loss model training
- Instance based classification
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- สกัดคุณลักษณะของภาพเป็นเวกเตอร์บน Euclidean Space ได้
- สร้างและนำโมเดลแบบจำลองการจำแนกประเภทของภาพแบบเทียบตัวอย่างไปใช้งานได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การตรวจจับใบหน้าเป็นหนึ่งในวิธีการตรวจจับวัตถุในภาพโดยใช้วิธีแบบมีผู้สอน สามารถใช้ได้หลายวิธีซึ่งมีประสิทธิภาพขึ้นอยู่กับสภาพแวดล้อมของการนำไปใช้ เนื้อหาส่วนนี้จะได้เรียนรู้วิธีการต่าง ๆ และสถานการณ์ที่เหมาะสมกับการใช้วิธีการเหล่านั้น
เนื้อหา (Contents) :
- การตรวจจับองค์ประกอบใบหน้าโดยใช้ Haarcascade feature
- การตรวจจับองค์ประกอบใบหน้าโดยใช้ Deep learning
- การสร้างโมเดลรู้จำใบหน้าบุคคล
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- สกัดใบหน้าของบุคคลที่อยู่ในภาพทั้งภาพนี่งและภาพเคลื่อนไหวได้
- สร้างโมเดลรู้จำใบหน้าบุคคลได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การจำแนกภาพผิดปกติสามารถนำไปใช้ได้หลากหลาย ทั้งการตรวจสอบภาพที่ไม่เกี่ยวข้องสำหรับการจำแนกภาพ รวมไปถึงใช้ในการตรวจจับความผิดปกติของภาพและวิดีโอที่มีลักษณะแตกต่างไปจากเดิม เนื้อหาส่วนนี้จะได้เรียนรู้การตรวจสอบความผิดปกติทางจากผลลัพธ์โมเดลที่สร้างขึ้นมาแล้วเพื่อจำแนกภาพ และการสร้างโมเดลขึ้นมาใหม่เพื่อใช้ในการตรวจจับความผิดปกติโดยเฉพาะ
เนื้อหา (Contents) :
- Anomaly detection
- Autoencoder model
- Anomaly detection using reconstruction error
- Anomaly detection using distribution of density
- Anomaly in image classification output
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- สร้างโมเดลเพื่อจำแนกประเภทของภาพที่ผิดปกติจะภาพส่วนมากได้
- วิเคราะห์ความผิดปกติของการทำนายจากการกระจายตัวความหนาแน่นของผลการทำนายได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การตรวจจับวัตถุในภาพไม่ว่าจะเป็นภาพนิ่งและภาพเคลื่อนไหว สามารถนำไปประยุกต์ใช้ได้อย่างหลากหลาย หัวข้อนี้จะเรียนรู้ตั้งแต่การเตรียมข้อมูล การฝึกโมเดล การจัดการกับข้อมูลที่ได้จากโมเดล โดยใช้เทคโนโลยี Deep Learning
เนื้อหา (Contents) :
- Deep learning model for object detection
- Labeling and training object detection model
- Transferred learning
- Object detection in video
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- เตรียมข้อมูลเพื่อใช้ในการฝึกโมเดล object detection ได้
- ฝึกโมเดลเพื่อใช้ในการ detect object ที่สนใจได้
- นำผลลัพธ์ไปใช้งานร่วมกับการวิเคราะห์ภาพเคลื่อนไหวได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
การแปลงภาพเป็นข้อความช่วยให้การประยุกต์ใช้งาน Computer Vision ได้กว้างขวางขึ้นในหัวข้อนี้จะเรียนรู้เกี่ยวกับการนำแบบจำลองการแปลงอักษรมาใช้เพื่อนำไปใช้งานร่วมกับ application ที่เกี่ยวข้องต่อไป
เนื้อหา (Contents) :
- OCR model
- License plate recognition application
- Label recognition
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- ประยุกต์ใช้เทคโนโลยีกับการรู้จำตัวอักษรได้
- ผลลัพธ์ที่ได้ไปใช้ร่วมกับ Application ที่เกี่ยวข้องได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
เนื้อหา (Contents) :
- Web service technology
- API server using Python
- API with query parameters
- Working with JSON
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- ติดตั้งโปรแกรมเครื่องแม่ข่ายเพื่อให้บริการ API Server ได้
- นำ Machine Learning Modelมา deploy เป็น API เพื่อใช้งานได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
ภาพเป็นหนึ่งในข้อมูลแบบไม่มีโครงสร้าง ต้องการการประมวลผลสูง ต้องการพื้นที่ในการจัดเก็บเยอะ การนำเทคโนโลยีทางBig data ที่เหมาะสมมาช่วยในการจัดการ จะช่วยให้การทำงานเป็นไปอย่างราบรื่นและทันเวลา หัวข้อนี้จะได้เรียนรู้เครื่องมือที่เกี่ยวข้อง รวมถึงการออกแบบโครงสร้างพื้นฐานที่เหมาะสมโดยใช้เทคโนโลยีที่ Big data เพื่อช่วยในการจัดการภาพและภาพเคลื่อนไหว
เนื้อหา (Contents) :
- Hadoop and it’s eco system
- NoSQL databases
- Kafka
- Big data architecture
เมื่อจบโมดูลแล้วผู้เรียนสามารถ (Learning Outcome):
- ออกแบบโครงสร้างพื้นฐานสำหรับการประมวลผลภาพด้วยเทคโนโลยี Big data ได้
ความรู้ก่อนเรียน (Prerequisite knowledge) : ไม่มี
Advance machine learning and deep learning tool
Visualization tool
Data engineer tool
Other tool
ภาพรวมของหลักสูตร
โมดูลกับวิชาเรียน
Advance data science tool
Visualization tool
Data ingestion and ETL tools
Other tool
ตารางการเรียนการสอนและการให้คำปรึกษา
ระยะเวลาเรียน
- ภาคทฤษฎีและปฏิบัติ ระหว่างวันที่ 11 กันยายน 2563 – 18 ธันวาคม 2563
- เรียนทุกวันศุกร์และวันเสาร์ เวลา 09.00 – 16.00 น. ห้องปฏิบัติการ คณะเทคโนโลยีสารสนเทศ มหาวิทยาลัยเทคโนโลยีพระจอมเกล้าธนบุรี
- Worked Integrated Learning (WIL)
- ผู้เรียนเรียนรู้แก้ปัญหาจากโจทย์จริงของสถานประกอบการที่สังกัด ณ สถานประกอบการเต็มเวลา
- จันทร์ – พฤหัสบดี (กันยายน 2563 – ธันวาคม 2563)
- ผู้สอนให้คำปรึกษาเพื่อร่วมแก้โจทย์ปัญหาจากสถานประกอบการ ตามนัดหมาย ทั้งหลังคลาสเรียนและการให้คำปรึกษาออนไลน์ผ่านทาง Microsoft Teams
ตารางการเรียนการสอนและการให้คำปรึกษา
- วันศุกร์ เวลา 00 – 16.00 น. ณ ห้อง ณ ห้อง Classroom 4/2 ชั้น 4
- วันเสาร์ เวลา 00 – 12.00 น. ณ ห้อง Training Learning Space ชั้น 2
- วันเสาร์ เวลา 13.00 – 16.00 น. ณ ห้อง Training I และ Training II,V ชั้น 1