There are many topics provided in this course project. Students can collaborate as a team to complete the project. Each team should: choose a topic, complete the topic, and present the topic. The following are rules and policy of the project.
Team work
AT MOST 10 teams. Each team has 1 ~ 4 members.
Project topic : choose only 1 topic from the following
OpenCV (6 topics)
Deep learning (2 topics): Human pose estimation, Holistic tracking.
Medical image (3 topics): Fundus image segmentation, OCT layer segmentation.
Miscellaneous (2 topics): COVID, FPGA design.
You can propose a new topic to the teacher if there is no appropriate topic for you. But you have to ask for permission from the teacher.
Requirement
Each team has to choose one topic and complete the followings
Paper reading
Program code writing
Data experimenting
Oral presentation (10~15 minutes)
Written report (10 ~ 30 pages)
Schedule
Goal
Complete a complex opencv project with C/C++.
Description
There are 6 OpenCV projects from the book
Mastering OpenCV 3, 2nd, by D.L. Baggio, S. Emami, D.M. Escrivá, K. Ievgen, J. Saragih, R. Shilkrot. Packt Pub., 2017. PDF (restricted access, password), Source code (GitHub).
You have to choose at least one chapter of the book as your team project.
Cartoonifier and Skin Changer for Android (Chapter 1)
Marker-based Augmented Reality on iPhone or iPad (Chapter 2)
Number Plate Recognition Using SVM and Neural Networks (Chapter 3)
Non-rigid Face Tracking (Chapter 4)
3D Head Pose Estimation Using AAM and POSIT (Chapter 5)
Face Recognition using Eigenfaces or Fisherfaces (Chapter 6)
Requirement
You have to read the book chapter of the program code.
You have to successfully compile and execute the code.
You have to experiment the code with your images, data, and different parameters.
You have to extend the code with at least EXTRA USEFUL 50 lines.
You have to extend the code with more OpenCV functions not used in the program codes: At least two functions or two algorithms.
Goal
Complete a human pose estimation project.
Description
Recently human pose estimation can be successfully solved by deep learning. Two very successful algorithms are OpenPose (by CMU) and BlazePose (by Google).
You can use 3rd-party library to complete the project. Suggested libraries are OpenVINO and MediaPipe.
You can use C/C++ to complete this project, but Python is better.
Suggested readings
An Overview of Human Pose Estimation with Deep Learning - An introduction to the techniques used in Human Pose Estimation based on Deep Learning. 2019
六种人体姿态估计的深度学习模型和代码总结,2018.
Openpose 人體姿態辨識 2020.
Google MediaPipe for Pose Estimation, Github, 2021.
Build a personal AI Trainer, Youtube, 2021.
Multi-Person Pose Estimation in OpenCV using OpenPose, 2018.
Requirement
You have to complete a human pose estimation project with either OpenPose or BlazePose.
You have to experiment the code with your images, videos, and different parameters.
You have to extend the code for some applications, for example Build a personal AI Trainer.
Goal
Complete a face/hand/body tracking project. The project may need to be implemented in embedded hardware.
Description
Recently face, hand, and body tracking can be successfully solved by deep learning. Usually an algorithm can apply in the tracking of only one object. Holistic tracking targets tracking all three objects: human face, human hand, and human body with only one algorithm.
You can use 3rd-party library to complete the project. Suggested libraries are OpenVINO, DepthAI, and MediaPipe.
You can use C/C++ to complete this project, but Python is better.
You can use PC to complete this project, but embedded hardwares such as Raspberry Pi, nVidia Jetson, and Intel Neural Compute Stick are also feasible.
You may need a camera to do real-time tracking. You can use USB camera or OpenCV AI Kit (OAK).
You need to import MediaPipe deep learning models into DepthAI. Here are some tutorials:
Hand pose : 从0到1学习使用DepthAI-手势识别
Hand tracking with DepthAI : Running Google Mediapipe Hand Tracking models on DepthAI hardware (OAK), GitHub.
Human pose - 从0到1学习使用DepthAI-人体姿势跟踪检测
Blazepose tracking with DepthAI : Running Google Mediapipe body pose tracking models on DepthAI hardware (OAK), GitHub.
Requirement
You have to complete a holistic tracking with at least two objects.
You have to experiment the code with your images, videos, and different parameters.
You have to extend the code for some applications.
Goal
Complete a medical image segmentation project for fundus images.
Related papers
You can choose at least one of the following papers.
(MNet) Huazhu Fu, Jun Cheng, Yanwu Xu, Damon Wing Kee Wong, Jiang Liu, and Xiaochun Cao, "Joint Optic Disc and Cup Segmentation Based on Multi-label Deep Network and Polar Transformation", IEEE Transactions on Medical Imaging, vol. 37, no. 7, pp. 1597-1605, 2018. [Code@GitHub : based TensorFlow 1.14 + Keras) + Matlab] [PDF]
(DENet) Huazhu Fu, et al., "Disc-Aware Ensemble Network for Glaucoma Screening From Fundus Image," IEEE Transactions on Medical Imaging, vol. 37, no. 11, pp. 2493-2501, Nov. 2018. [Code@GitHub : Keras/Tensorflow] [PDF]
Data
Requirement
You have to read papers, complete the code of the paper, and write a report.
Goal
Complete a medical image segmentation project for OCT (Optical Coherence Tomography) images.
Related papers
You can choose at least one of the following papers.
S. Motamedi, et al., "Normative Data and Minimally Detectable Change for Inner Retinal Layer Thicknesses Using a Semi-automated OCT Image Segmentation Pipeline," Frontiers in Neurology, 25 November 2019. URL. SAMIRIX: Matlab @ GitHub, NeuroDIal @ GitHib for OCT analysis. [PDF]
A. Lang, A. Carass, M. Hauser, E. S. Sotirchos, P. A. Calabresi, H. S. Ying, J. L. Prince, "Retinal layer segmentation of macular OCT images using boundary classification." Biomedical Optics Express 4, 1133-1152, 2013. OCTLayerSegmentation by AURA Tools on NITRC [PDF]
Requirement
You have to read papers, complete the code of the paper, and write a report.
Goal
Understand some basic concepts of implementing computer vision by Verilog.
Readings
H. Jeong, Architectures for Computer Vision: From Algorithm to Chip with Verilog. John Wiley & Sons, 2014. PDF (restricted access, password)
Requirement
You have to read the book (chapters 1~4), write some example codes, and write a report.
Goal
Learn some computer vision techniques applied for COVID-19.
Readings
Diagnosing Pneumonia from X-Ray Images Using Convolutional Neural Network, 2022/04.
Transfer Learning: COVID-19 from Chest X-Rays Classifier, 2021/12.
Requirement
You have to read the articles, write some example codes, and write a report.