
\text{Image Processing}
\textbf{Naresh Kumar Devulapally}
\text{CSE 4/573: Computer Vision and Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}
\text{June 5, 2025}
\text{Lectures 4: June 5, 2025}
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

- What are images?
- Basic Transformations on Grayscale and RGB images
- Recap of transformations
- Affine Transformations
- Image Transformations
- Introduction to Convolution Operation
- Is image a function?
- Image convolution
- Different kernels
- Intro to packages for image transformations
\( \text{Agenda of this Lecture:}\)
\text{June 5, 2025}
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
This lecture is best scenario for the Live Code feature
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Recap: What is an Image?
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Recap: What is an Image?
A numpy array
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Play around with the live code in the course website

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Transformations on grayscale images

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
\begin{align*}
% Rotation around Z-axis by angle ψ
\text{(1) Rotate around Z-axis by } \psi: \quad
\begin{bmatrix}
x' \\
y' \\
z'
\end{bmatrix}
&=
\underbrace{
\begin{bmatrix}
\cos \psi & \sin \psi & 0 \\
-\sin \psi & \cos \psi & 0 \\
0 & 0 & 1
\end{bmatrix}}_{R_z(\psi)}
\begin{bmatrix}
X \\
Y \\
Z
\end{bmatrix}
= R_z(\psi)
\begin{bmatrix}
X \\
Y \\
Z
\end{bmatrix}
\\[1em]
% Rotation around Y-axis by angle θ
\text{(2) Rotate around Y-axis by } \theta: \quad
\begin{bmatrix}
x'' \\
y'' \\
z''
\end{bmatrix}
&=
\underbrace{
\begin{bmatrix}
\cos \theta & 0 & -\sin \theta \\
0 & 1 & 0 \\
\sin \theta & 0 & \cos \theta
\end{bmatrix}}_{R_y(\theta)}
\begin{bmatrix}
x' \\
y' \\
z'
\end{bmatrix}
= R_y(\theta)
\begin{bmatrix}
x' \\
y' \\
z'
\end{bmatrix}
\\[1em]
% Rotation around X-axis by angle φ
\text{(3) Rotate around X-axis by } \phi: \quad
\begin{bmatrix}
x''' \\
y''' \\
z'''
\end{bmatrix}
&=
\underbrace{
\begin{bmatrix}
1 & 0 & 0 \\
0 & \cos \phi & \sin \phi \\
0 & -\sin \phi & \cos \phi
\end{bmatrix}}_{R_x(\phi)}
\begin{bmatrix}
x'' \\
y'' \\
z''
\end{bmatrix}
= R_x(\phi)
\begin{bmatrix}
x'' \\
y'' \\
z''
\end{bmatrix}
\end{align*}
https://mathworld.wolfram.com/RotationMatrix.html
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Interpolation

Bilinear interpolation
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Inpainting

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Convolution (Signal Processing)

\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Convolution (Pixel domain)
\text{Image Processing}
\text{Naresh Kumar Devulapally}
\text{CSE 4/573: CVIP, Summer 2025}

\text{June 5, 2025}
Convolution (grayscale images)

Use code in the course website to test various kernels
Lecture 4: Image Processing (Image Transformations)
By Naresh Kumar Devulapally
Lecture 4: Image Processing (Image Transformations)
- 202