รายละเอียดโมดูล รุ่นที่ 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
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/Apache_Spark_logo.svg.png)
![1229px-TensorFlowLogo.svg 1229px-TensorFlowLogo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/1229px-TensorFlowLogo.svg-ozue7nrmdyhmuc94w50usikck2frv5kjtgth61flls.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1280px-Pandas_logo.svg.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1280px-NumPy_logo_2020.svg.png)
![750px-OpenCV_Logo_with_text_svg_version.svg 750px-OpenCV_Logo_with_text_svg_version.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/750px-OpenCV_Logo_with_text_svg_version.svg-ozue7opgc0rv0ziqlaq8cmw53iuhuutm0mr287wr1k.png)
Visualization tool
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1BLx1p0j0zVhPf_VC-OTwCQ.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1gM_WIfx7MXOO7jzsPm-Y0Q.png)
Data engineer tool
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/2500px-Hadoop_logo_new.svg.png)
![1000px-Apache_Hive_logo.svg 1000px-Apache_Hive_logo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/1000px-Apache_Hive_logo.svg-ozubn5hfaec8n6ypghy2bzsdj1hajpty4wfrp2dsti.png)
![django-logo-negative django-logo-negative](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/django-logo-negative-1-pauwwtqcjzkfy4o84g7w9qodj7d4pet1fzutje1wx4.png)
Other tool
![colab_favicon_256px colab_favicon_256px](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/colab_favicon_256px-ozubvmyzh3h14hroe19wm5110w9g2cek4akj87bhm0.png)
![883px-Jupyter_logo.svg 883px-Jupyter_logo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/883px-Jupyter_logo.svg-ozueqdpw50hgqbtcjvoqvllcaafpydiqemuf0whnds.png)
![Anaconda_Logo Anaconda_Logo](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/Anaconda_Logo-ozueqdpyxvocp6u2rnsi37lk20lqtzqzs6lrxe5azg.png)
ภาพรวมของหลักสูตร
โมดูลกับวิชาเรียน
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2019/08/course-mapping.jpg)
Advance data science tool
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/Apache_Spark_logo.svg.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1280px-Scikit_learn_logo_small.svg.png)
![1229px-TensorFlowLogo.svg 1229px-TensorFlowLogo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/1229px-TensorFlowLogo.svg-ozue7nrmdyhmuc94w50usikck2frv5kjtgth61flls.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1280px-Pandas_logo.svg.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1280px-NumPy_logo_2020.svg.png)
![750px-OpenCV_Logo_with_text_svg_version.svg 750px-OpenCV_Logo_with_text_svg_version.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/750px-OpenCV_Logo_with_text_svg_version.svg-ozue7opgc0rv0ziqlaq8cmw53iuhuutm0mr287wr1k.png)
Visualization tool
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1BLx1p0j0zVhPf_VC-OTwCQ.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/1gM_WIfx7MXOO7jzsPm-Y0Q.png)
Data ingestion and ETL tools
![2500px-Hadoop_logo_new.svg 2500px-Hadoop_logo_new.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/2500px-Hadoop_logo_new.svg-ozubn2nzvx1vvi0akktfs1g7m75e6j4ku6lew0pkh4.png)
![1000px-Apache_Hive_logo.svg 1000px-Apache_Hive_logo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/1000px-Apache_Hive_logo.svg-ozubn5hfaec8n6ypghy2bzsdj1hajpty4wfrp2dsti.png)
Other tool
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/zeppelin_classic_logo.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/colab_favicon_256px.png)
![883px-Jupyter_logo.svg 883px-Jupyter_logo.svg](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/elementor/thumbs/883px-Jupyter_logo.svg-ozueqdpw50hgqbtcjvoqvllcaafpydiqemuf0whnds.png)
![](https://biganalyze.sit.kmutt.ac.th/wp-content/uploads/2020/12/Anaconda_Logo.png)
ตารางการเรียนการสอนและการให้คำปรึกษา
ระยะเวลาเรียน
- ภาคทฤษฎีและปฏิบัติ ระหว่างวันที่ 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