Our lab provides a diverse range of programming or algorithm modules which focuses on Competitive Programming and research-oriented implementation in Computer Vision. All of these courses are considered as internal training for motivated students.
This course concentrates on learning the basics of programming languages which is the foundations for further studies in IT. The course enables students to get familiar with C/C++ programming language in UNIX environment. The course covers all basic C/C++ data structures, control flows, simple data structures as well as other advanced topics which include pointers, bit operators, file processing, dynamic data types.
|01||Introduction to Programming Language|
|02||Introduction to C/C++ Programming Language|
|03||Types, Operators and Expressions|
|09||Structure Data Types|
|10||Basic Data Structures|
|11||C++ Standard Template Library (STL)|
|12||Bit Manipulation, Enumeration|
Note: You are recommended to complete a problem set of 177 basic exercises to complete this course.
This course is oriented to those undergraduate students who require a working knowledge of numerical methods. Topics to be covered include solving nonlinear equations and linear systems, interpolation and least square method, numerical evaluation of derivatives, integral and solution of differential equation. The focus will be on understanding the solving techniques and the engineering meaning of diver problems, and not on rigorous profs.
|01||Introduction to Numerical Methods|
|02||Errors & Taylor Series|
|03||Roots of Non-linear Equations|
|04||Linear Algebraic Equations|
|06||Curve Fitting & Interpolation|
|07||Numerical Differentiation and Integration|
|08||Ordinary Differential Equations|
|09||Partial Differential Equations|
Note: You are recommended to implement these numerical methods with a programming language.
This is a practical hands-on course that is intended for students who are interested in competitive programming and algorithmic challenges. In this course you will learn the techniques and skills needed to solve algorithmic programming problems.
|01||Introduction to Competitive Programming|
|02||Linear Data Structure & Algorithms|
|03||Complete Search Techniques|
|04||Sub-problem Solving Techniques|
|05||Big Number and Combinatorics|
|07||Probability and Set Theory|
|08||Linear Algebra in Competitive Programming|
|09||Introduction to Graph|
|10||Shortest Path Problems on Graph|
|11||Max flow problem & Min Cut problem on Graph|
|12||Special Graphs: Tree|
|13||Special Graphs: Bipartite Graph|
|14||Advanced Data Structure: Hash Table, Segment Tree, Binary Index Tree|
|15||Advanced Data Structure: Suffix Trie/Tree/Array, Union Disjoint Set|
|16||String Processing & Matching|
|17||Geometry – Session 1: Two-Dimensional Geometry|
|18||Geometry – Session 2: Three-Dimensional Geometry|
|19||Dynamic Programming in 1D and 2D spaces|
|20||Dynamic Programming with String|
|21||Dynamic Programming with Knapsack Problem and Variant Topics|
|22||Dynamic Programming with Geometry|
|23||Dynamic Programming on Non-linear Data Structure: Graph and Tree|
|24||Dynamic Programming with Game Theory and Simulation|
|25||The Competitive Programming Contest Practice|
Note: There are lots of practice contests associating with this course. You are recommended to practice more on Codeforces, CodeChef and other online judges. Be calm and keep fighting !!
This course provides students the basic components and important principles of programming languages. It covers the subjects on programming language paradigms, logicprogramming languages, subprograms and Software processes. Students can improve their programming and software engineering skills, increase ability to express ideas and further their research activities.
|01||Introduction to Programming Languages|
|02||Evolution of the Major Programming Languages|
|03||Evolution of the Major Programming Languages|
|04||Software processes Describing Syntax and Semantics|
|05||Lexical and Syntax Analysis|
|06||Names, Bindings, Type Checking, and Scopes|
|07||Agile Software Development|
|09||Expressions and Assignment Statements|
|10||Expressions and Assignment Statements|
|11||Statement-Level Control Structures|
Provides the student with a thorough understanding of varying methodologies and techniques in analysis, design and implementation of information system by using UML.
|01||Introduction to Software Architectures|
|07||Normal Form in Priciples of Database|
Note: There is no text-book referenced in this course.
This course helps students discuss on digital image processing fundamentals; review of Digital Signal Processing algorithms such as Discrete Fourier Transform; intensity transforms, frequency domain filtering; image restoration and reconstruction; color image processing; multiresolution processing; image compression; morphological image processing.
|01||Introduction to Digital Image|
|02||Core Modules in Image Processing|
|03||Region Processing in Images|
|04||Point Processing in Images|
|05||Implementation with TensorFlow|
|08||Meanshift and Camshift|
|10||Machine Learning in Image Processing|
|11||Deep Learning in Image Processing|
Note: This is a research-oriented course for motivated students.