Creative Software Project - 105 Academic Year

本課程是由 國立陽明交通大學電機工程學系 提供。

This course aims at developing software projects usable in real-world, and focuses on "learning by doing," "team work," and "research/startup oriented." We will cover fundamental and advanced development tools (git, ROS, OpenCV) in C++ or Python through "Duckietown," an open course "MIT 2.166 Autonomous Vehicles." Students are also welcome to form own teams and propose software projects (Android etc).

(This course is taught in English.)

Textbook:
Refactoring: Improving the Design of Existing Code, Martin Fowler.
Introduction to Autonomous Robots, Nikolaus Correll, 2015.

For perfect learning results, please buy textbooks!

Instructor(s) College of Electrical and Computer Engineering Prof. Nick Wang
Course Credits 3 Credits
Academic Year 106 Academic Year
Level College Students、Graduate Student
Prior Knowledge This course involve a fair amount of programming. Students who took probability, linear algebra, image processing, and computer vision are encouraged to join, but not required.
Related Resources Course Video   Course Syllabus   Course Calendar 

WeekCourse ContentCourse Video
課程介紹 Welcome & IntroductionWatch Online
基礎知識介紹:linux, github, vim ,ssh
蘇詠善、蕭宇杰
Watch Online
Duckiebot硬體介紹、ROS、Joystick control
蕭宇杰、陳品維
Watch Online
Lane filters, Hough Transform 翻轉教室Watch Online
Jupyter Notebook, Python, OpenCV, Line Detector
呂承龍
Watch Online
Lane Filter & Car Commands
呂承龍
Watch Online
Camera/Wheel Calibration
陳品維
Watch Online
FSM & Lane following
陳品維
Watch Online
Lane following demosWatch Online
ROS package, Face detector
Tim
Watch Online
ROS + Android + Duckiebot
呂承龍
Watch Online
用Android phone 控制 duckiebot demosWatch Online
ROS introduction & Apriltags
陳品維
Watch Online
Arduino + Duckiebo + 超音波測距儀
陳品維
Watch Online
Joystick Lab
蕭宇杰
Watch Online
Stop Line Filter Lab
蘇詠善
Watch Online
FSM Lab
陳品維
Watch Online
Lane Filter Lab
呂承龍
Watch Online
期末專題: Duckie-Lolita
李浩平、吳俊賢、楊尊宇
Watch Online
期末專題: Object Detection in Duckiebot
陳泓仁、簡銘賢
Watch Online
期末專題: 圖書館員--Duckie
施承佐、徐銘澤
Watch Online
期末專題: Driving Test Using Duckiebot
蕭進豪、梁子恆、林以鑫
Watch Online
期末專題: Duckietownin Gazebo
許瑋庭
Watch Online
期末專題: Home Caring Robot
陳品伃、周建龍、郭俊儀、陸昱霖、李佳儀
Watch Online
期末專題: Automatic Intelligent Plant Caring Robot
張書鳴、駱政成、康辰平、溫英華、李立維
Watch Online
期末專題: DuckieGuard
陳顥云、吳易倫、李政諺、黃崇鑫、張仕傑
Watch Online
期末專題: DuckieMVP
呂承龍
Watch Online
期末專題: Tracking and Surveillance
賴振豪、陳奕翔、黃宇晨、李柄儀、張惟翔
Watch Online
期末專題: Depth Lane Following
吳禹欣
Watch Online
期末專題: Object Following Duckiebot
葉依善
Watch Online
期末專題: Multi-Robot Patrolling System
陳品維
Watch Online
期末專題: Super Driving Security
薛宇涵、林政碩
Watch Online
期末專題: Simulation - Scale Up of Duckiebot
宋豐裕
Watch Online
期末專題: Automatic Shooting and Assistive Machine
陳柏翰、卓庭宇
Watch Online
期末專題: Sharkie Float Too
陳源德、楊凱文、李宜鴻、李昀、許家銘
Watch Online
期末專題: Navigation and Obstacle Avoidance of Marine Robot
佘柏陞、蔡均承
Watch Online
期末專題: Integrtion of Duckietown and Scratch
黎光晏、賴煒承
Watch Online
期末專題: Missy Duck
梁凱雯、黃麗萍、吳俊輝、孫文威、蔡曉惠
Watch Online
 

課程目標

This course aims at developing software projects usable in real-world, and focuses on "learning by doing," "team work," and "research/startup oriented." We will cover fundamental and advanced development tools (git, ROS, OpenCV) in C++ or Python through "Duckietown," an open course "MIT 2.166 Autonomous Vehicles." Students are also welcome to form own teams and propose software projects (Android etc).

This course would have 3 sessions in each meeting :
1. 1.5 hours of lecture & interactive session
2. 1.5 hours of implementation
3. Evaluation

 

課程章節

章節 章節內容
單元一Introduction to Creative Software Project - Duckietown
單元二Python Programming Introduction & OpenCV
單元三 Robot Operating System (ROS) & Gazebo
單元四ROS Data & Visualization
單元Camera Setting and Calibration
單元六 Lane Filter & Control
單元七Finite State Machine (FSM)
單元八Special Project Topics

 

課程書目

Refactoring: Improving the Design of Existing Code, Martin Fowler.
Introduction to Autonomous Robots, Nikolaus Correll, 2015.


課程參考資料

http://duckietown.nctu.edu.tw/
http://duckietown.mit.edu/
http://news.mit.edu/2016/self-driving-cars-meet-rubber-duckies-0420

 

評分標準

項目百分比
Class Participation, In Class Quiz, Problem Sets10%
Midterm Presentation 30%
Final Presentation30%
Project Report & Demo Video30%

本課程行事曆提供課程進度與考試資訊參考。

學期週次
上課日期
參考課程進度

第一週

2016/09/14
  • Introduction to Creative Software Project - Duckietown
第二週2016/09/21
  • Python Programming Introduction & OpenCV
第三週2016/09/28
  • Robot Operating System (ROS) & Gazebo
第四週2016/10/05
  • ROS Data & Visualization
第五週2016/10/12
  • Camera Setting and Calibration
第六週2016/10/19
  • Lane Filter & Control
第七週2016/10/26
  • Lane Filter & Control (2)
第八週2016/11/02
  • Finite State Machine (FSM)
第九週2016/11/09
  • Midterm: Project Presentation
第十週2016/11/16
  • Special Project Topics (1)
第十一週2016/11/23
  • Special Project Topics (2)
第十二週2016/11/30
  • Special Project Topics (3)
第十三週2016/12/07
  • Special Project Topics (4)
第十四週2016/12/14
  • Special Project Topics (5)
第十五週2016/12/21
  • Special Project Topics (6)
第十六週2016/12/28
  • Special Project Topics (7)  
第十七週2017/01/04
  • Special Project Topics (8)  
第十八週2017/01/11
  • Final Project Presentation