This page is located in archive. Go to the latest version of this course pages. Go the latest version of this page.

Schedule BE4M33DZO Upload system Discussion forum

BE4M33DZO - Digital Image

Course topics

This course presents an overview of basic methods for digital image processing. It deals with practical techniques that have an interesting theoretical basis but are not difficult to implement. Seemingly abstract concepts from mathematical analysis, probability theory, or optimization come to life through visually engaging applications. The course focuses on fundamental principles (signal sampling and reconstruction, monadic operations, histogram, Fourier transform, convolution, linear and non-linear filtering) and more advanced editing techniques, including image stitching, deformation, registration, and segmentation. Students will practice the selected topics through six implementation tasks, which will help them learn the theoretical knowledge from the lectures and use it to solve practical problems.


Students are expected to know topics from calculus, linear algebra, statistics and probability to the extent taught at CTU in Prague, FEE. Basic programming skills are also expected, especially in MATLAB.


Lecturer: prof. Ing. Daniel Sýkora, Ph.D. (CTU in Prague, FEE, Department of Computer Graphics and Interaction, Room: KN:E-422)

Place and Time: Wednesday 09:15am-10:45am, Lecture Hall KN:E-301

Extent: 2 hours weekly

Week Date Topics Teaching Materials
1st 27.09.2023 Monadic Operations - digital image, histogram, change of brightness and contrast, thresholding, negative, quantization, gamma correction, histogram equalization and mapping slides / video: CZ, EN
2nd 04.10.2023 Lecture cancelled due to illness
3rd 11.10.2023 Fourier Transform - Fourier transform in 1D and 2D, basis functions, time and frequency domain, amplitude and phase, discrete Fourier transform, fast Fourier transform, sampling theorem slides / video: CZ, EN
4th 18.10.2023 Convolution - convolution in 1D and 2D, fast computation using separable kernels, mip-mapping, integral image and Fourier transform slides / video: CZ, EN (1, 2)
5th 25.10.2023 Linear Filtering - applications of 1D and 2D convolution: noise suppression, edge detection, blur, sharpening, Wiener filter, anti-aliasing, depth of field, motion blur, light scattering, glossy reflections, soft shadows, hybrid image slides / video: CZ, EN (1)
6th 01.11.2023 Non-linear Filtering - bilateral filter, fast computation using rectangular kernels, piecewise linear approximation, and bilateral grid, applications: noise suppression maintaining sharp edges, digital makeup, abstraction, tone mapping, appearance modification, detail fusion, simulation of HDR image, material/texture change, glossiness removal, noise suppression using flash, depth map sharpening. slides / video: CZ, EN (1, 2, 3, 4, 5, 6, 7, 8, 9)
7th 08.11.2023 Image Editing - linear and multi-band image stitching, Laplace pyramid, gradient domain editing and its applications: stitching, cloning, smoothing, fusion, context highlighting, color to gray conversion, diffusion curves slides / video: CZ, EN (1, 2, 3)
8th 15.11.2023 Image Deformation - translation, rotation, scaling, skew, affine and projective transformations, backward mapping, bilinear interpolation, moving least squares, as-rigid-as-possible and as-similar-as-possible image deformation slides / video: CZ, EN (1)
9th 22.11.2023 Image Registration 1 - image similarity metrics, estimation of translation, block-matching, fast computation using early termination, multi-resolution processing, winner-take-all strategy, phase correlation, gradient descent, texture synthesis, hole filling slides / video: CZ, EN (1, 2, 3)
10th 29.11.2023 Image Registration 2 - estimation of rotation and scaling, log-polar and Fourier-Mellin transformation, generalized gradient descent (affine and projective transformation), as-similar-as-possible image registration slides / video: CZ, EN (1, 2, 3, 4)
11th 06.12.2023 Image Registration 3 - keypoint extraction, Harris detector, SIFT keys and their correspondence, estimating transformation parameters using SVD and RANSAC, elimination of outliers, applications (panorama stitching, object detection, background reconstruction, augmented reality, 3D reconstruction). slides / video: EN (1, 2, 3)
12th 13.12.2023 Image Segmentation 1 - interactive image segmentation, problem formulation and its solution using maxflow algorithm, a system of linear equations and by finding shortest paths in a graph slides / video: CZ, EN (1, 2)
13th 20.12.2023 Image Segmentation 2 - basic properties of interactive image segmentation algorithms, modification and extension of optimization criteria: color model, imprecise specification of background and foreground scribbles, multiple segments, colorization, applications: alpha-channel estimation, recoloring, interactive tone mapping, painting hand-drawn images slides / video: CZ, EN (1, 2, 3)
14th 10.01.2024 When machines replace artists?


Lab Assistants:

Place and Time: Tuesday 6:00pm-7:30pm, Lab Room KN:E-132

Extent: 2 hours weekly

Week Date Topics Lab Assistant
1st 26.09.2023 Introduction to MATLAB Vojtěch Pánek, Jan Čech, Radoslav Škoviera, Daniel Sýkora
2nd 03.10.2023 Monadic Operations 1 - brightness and contrast changes, gamma correction, histogram equalization and mapping Vojtěch Pánek
3rd 10.10.2023 Monadic Operations 2 - submission of the 1st assignment (10 points) Vojtěch Pánek
4th 17.10.2023 Fourier Transform 1 - 2D FFT, displaying spectrum, basis functions, shift, convolution and sampling theorems Jan Čech
5th 24.10.2023 Fourier Transform 2 - submission of the 2nd assignment (10 points) Jan Čech
6th 31.10.2023 Linear and Non-linear Filtering 1 - convolution, Fourier transform, separable kernel, blurring, edge detection, deconvolution, bilateral filter Radoslav Škoviera
7th 07.11.2023 Linear and Non-linear Filtering 2 - submission of the 3rd assignment (10 points) Radoslav Škoviera
8th 14.11.2023 Image Editing 1 - gradient domain approach, solving the Poisson equation using a system of linear equations and Fourier transform, image cloning, gradient mixing Daniel Sýkora
9th 21.11.2023 Image Editing 2 - submission of the 4th assignment (10 points) Daniel Sýkora
10th 28.11.2023 Image Registration 1 - estimation of translation, scale and rotation using Fourier-Mellin transform (phase correlation, log-polar transformation) Vojtěch Pánek
11th 05.12.2023 Image Registration 2 - submission of the 5th assignment (10 points) Vojtěch Pánek
12th 12.12.2023 Image Segmentation 1 painting hand-drawn images using maxflow algorithm Daniel Sýkora
13th 19.12.2023 Image Segmentation 2 - submission of the 6th assignment (10 points) Daniel Sýkora
14th 09.01.2024 Zápočet Daniel Sýkora

In total, it is possible to obtain 60 points from all assignments. In order to pass labs, student have to obtain at least 30 points.


The exam has two parts, written and oral. In the written part, the student will work through two randomly selected questions covering the subject matter within 20 minutes:

  • Monadic operations (simple modifications of pixel intensity, histogram equalization and mapping)
  • Fourier transform (formulation, properties, sampling theorem)
  • Convolution (formulation, properties, speed-up methods, applications)
  • Image deblurring (formulation, solution using Wiener filter)
  • Bilateral filter (formulation, speed-up methods, applications)
  • Image editing in the gradient domain (formulation, solution, applications)
  • Image deformation (1, 2, 3, 4-point)
  • Image deformation (N-point, basic formulation, extensions)
  • Image registration (translation, solution methods)
  • Image registration (translation, rotation, and scaling using Fourier-Mellin)
  • Image registration (N-point)
  • Image segmentation (formulation, solution using maximum flow, applications)
  • Image segmentation (formulation, solution using random walker, applications)

Written part is then followed by an oral examination where the examiner goes through the written preparation with the student and asks supplementary questions. The aim of these questions is to find out to what extent the student understands the material. Rather than encyclopedic knowledge, what is important is the depth of understanding of the topics discussed and the ability to implement them in practice. A maximum of 20 points can be obtained for each question. Thus, in total 40 points can be obtained for the exam. To pass the exam, a minimum of 20 points is required in total.


The final grade is determined by the sum of the points obtained from the labs (maximum 60) and from the exam (maximum 40):

Grade Point range Description
A 90 or more excellent
B 80 to 89 very good
C 70 to 79 good
D 60 to 69 satisfactory
E 50 to 59 passable
F less than 50 failed


  • He J., Kim C.-S., Kuo C.-C. J.: Interactive Segmentation Techniques: Algorithms and Performance Evaluation, Springer, 2014.
  • Radke R. J.: Computer Vision for Visual Effects, Cambridge University Press, 2012.
  • Goshtasby A. A.: Image Registration: Principles, Tools and Methods, Springer, 2012.
  • Paris S., Kornprobst P., Tumblin J., Durand F.: Bilateral Filtering: Theory and Applications, Now Publishers, 2009.
  • Gonzalez R. C., Woods R. E.: Digital Image Processing (3rd Edition), Prentice Hall, 2008.
  • Šonka M., Hlaváč V., Boyle R.: Image Processing, Analysis and Machine vision (3rd Edition), Thomson Learning, 2007.
  • Pratt W.: Digital Image Processing (3rd Edition), John Wiley, 2004.
courses/be4m33dzo/start.txt · Last modified: 2024/01/10 14:31 by sykorad