SlideShare a Scribd company logo
Introduction to MATLAB and
      image processing
                 Amin Allalou
                amin@cb.uu.se

            Centre for Image Analysis
               Uppsala University

        Computer Assisted Image Analysis
                 April 4 2008
MATLAB and images
•   The help in MATLAB is very good, use it!
•   An image in MATLAB is treated as a matrix
•   Every pixel is a matrix element
•   All the operators in MATLAB defined on
    matrices can be used on images: +, -, *, /, ^, sqrt, sin, cos etc.
Images in MATLAB
•   MATLAB can import/export               •   Data types in MATLAB
    several image formats                      – Double (64-bit double-precision
    –   BMP (Microsoft Windows Bitmap)           floating point)
    –   GIF (Graphics Interchange Files)       – Single (32-bit single-precision
    –                                            floating point)
        HDF (Hierarchical Data Format)
                                               – Int32 (32-bit signed integer)
    –   JPEG (Joint Photographic Experts
        Group)                                 – Int16 (16-bit signed integer)
    –   PCX (Paintbrush)                       – Int8 (8-bit signed integer)
    –   PNG (Portable Network Graphics)        – Uint32 (32-bit unsigned integer)
    –   TIFF (Tagged Image File Format)        – Uint16 (16-bit unsigned integer)
    –   XWD (X Window Dump)                    – Uint8 (8-bit unsigned integer)
    –   MATLAB can also load raw-data or
        other types of image data
Images in MATLAB
• Binary images : {0,1}
• Intensity images : [0,1] or uint8, double etc.
• RGB images : m-by-n-by-3
• Indexed images : m-by-3 color map
• Multidimensional images m-by-n-by-p (p is the number of layers)
Image import and export
•   Read and write images in Matlab
    >> I=imread('cells.jpg');
    >> imshow(I)
    >> size(I)
    ans = 479 600 3                (RGB image)
    >> Igrey=rgb2gray(I);
    >> imshow(Igrey)
    >> imwrite(lgrey, 'cell_gray.tif', 'tiff')


Alternatives to imshow
    >>imagesc(I)
    >>imtool(I)
    >>image(I)
Images and Matrices
•   How to build a matrix (or image)?
    >> A = [ 1 2 3; 4 5 6; 7 8 9 ];
    A= 1 2 3
          4 5 6
          7 8 9
    >> B = zeros(3,3)
    B= 0 0 0
          0 0 0
          0 0 0
    >> C = ones(3,3)
    C= 1 1 1
          1 1 1
          1 1 1

    >>imshow(A) (imshow(A,[]) to get automatic pixel range)
Images and Matrices
•   Accesing image elements (row, column)          X
    >> A(2,1)
    ans = 4
•   : can be used to extract a whole column or
    row                                        Y
    >> A(:,2)
    ans =
    2
    5
    8
•    or a part of a column or row                  A=
     >> A(1:2,2)                                   22 3
    ans =                                          35 6
    2                                              7 8 9
    5
Image Arithmetic
•   Arithmetic operations such as addition, subtraction, multiplication and
    division can be applied to images in MATLAB
     – +, -, *, / performs matrix operations
    >> A+A
    ans = 2 4 6
           8 10 12                                                        A=
           14 16 18
                                                                          22 3
    >> A*A
                                                                          35 6
    ans = 30 36 42
                                                                          7 8 9
           66 81 96
          102 126 150

•   To perform an elementwise operation use . (.*, ./, .*, .^ etc)
    >> A.*A
    ans = 1 4 9
           16 25 36
           49 64 81
Logical Conditions
•   equal (==) , less than and greater than (< and >), not equal (~=) and not (~)
•   find(‘condition’) - Returns indexes of A’s elements that satisfies the
    condition.
    >> [row col]=find(A==7)
                                                           A=
    row = 3
                                                           22 3
    col = 1
                                                           35 6
    >> [row col]=find(A>7)
                                                           7 8 9
    row = 3
             3
    col = 2
             3
    >> Indx=find(A<5)
    Indx = 1
           2
           4
           7
Flow Control
•   Flow control in MATLAB
    - if, else and elseif statements
    (row=1,2,3 col=1,2,3)
    if row==col
            A(row, col)=1;
    elseif abs(row-col)==1
            A(row, col)=2;             A=
    else
                                        1   2   0
            A(row, col)=0;              2   1   2
    end                                 0   2   1
Flow Control
•   Flow control in MATLAB
    - for loops

    for row=1:3
          for col=1:3
                    if row==col
                              A(row, col)=1;
                    elseif abs(row-col)==1     A=
                              A(row, col)=2;
                    else                        1   2   0
                                                2   1   2
                              A(row, col)=0;    0   2   1
                    end
          end
    end
Flow Control
•   while, expression, statements, end   A=
                                         22 3
    Indx=1;                              35 6
                                         7 8 9
    while A(Indx)<6
          A(Indx)=0;
          Indx=Indx+1;
     end


     A=

       0   2   3
       0   5   6
       7   8   9
Working with M-Files
•   M-files can be scripts that simply execute a series of MATLAB statements,
    or they can be functions that also accept input arguments and produce
    output.
•   MATLAB functions:
     – Are useful for extending the MATLAB language for your application.
     – Can accept input arguments and return output arguments.
     – Store variables in a workspace internal to the function.
Working with M-Files
•   Create a new empty m-file

    function B=test(I)
    [row col]=size(I)
    for r=1:row
          for c=1:col
                    if r==c
                              A(r, c)=1;
                    elseif abs(r-c)==1
                              A(r, c)=2;
                    else
                              A(r, c)=0;
                    end
          end
   end
B=A;
Intro matlab and convolution islam
Intro matlab and convolution islam
Intro matlab and convolution islam
Linear Systems
Intro matlab and convolution islam
Superposition theorem




•   The superposition theorem for electrical circuits states that for a linear system the response (
    Voltage or Current) in any branch of a bilateral linear circuit having more than one independent
    source equals the algebraic sum of the responses caused by each independent source acting alone,
    while all other independent sources are replaced by their internal impedances.
Requirements for Linearity
• A system is called linear if it has two
  mathematical properties:
2.Homogeneity
3.Additivity
4.Shift invariance
(where “Shift invariance” is not a strict
  requirement for linearity, but it is a
  mandatory property for most DSP
  techniques.)
Homogeneity
Additivity
Shift invariance
Superposition: the Foundation of DSP
Intro matlab and convolution islam
Intro matlab and convolution islam
Decomposition & Convolution
• While many different decompositions are
  possible, two form the backbone of signal
  processing:
2.Impulse decomposition
3.Fourier decomposition.
• When impulse decomposition is used, the
  procedure can be described by a
  mathematical operation called convolution.
Intro matlab and convolution islam
Definition of delta function (unit
impulse) and impulse response
Shifted & Scaled Delta function
Convolution




If the system being considered is a filter, the impulse
   response is      called the filter kernel, the
   convolution kernel, or simply, the kernel. In
   image processing, the impulse response is called
   the point spread function.
Correlation
Correlation
Correlation is a mathematical operation that is
   very similar to convolution.
Just as with convolution, correlation uses two
   signals to produce a third signal.
This third signal is called the cross-correlation of
   the two input signals.
If a signal is correlated with itself, the resulting
   signal is instead called the autocorrelation.
Correlation


The formula essentially slides the function along
  the x-axis, calculating the integral of their
  product at each position. When the functions
  match, the value of is maximized. This is because
  when peaks (positive areas) are aligned, they
  make a large contribution to the integral.
  Similarly, when troughs (negative areas) align,
  they also make a positive contribution to the
  integral because the product of two negative
  numbers is positive
Convolution In MATLAB
• Linear filtering of an image is accomplished
  through an operation called convolution.
  Convolution is a neighborhood operation in
  which each output pixel is the weighted sum
  of neighboring input pixels. The matrix of
  weights is called the convolution kernel, also
  known as the filter. A convolution kernel is a
  correlation kernel that has been rotated 180
  degrees.
Intro matlab and convolution islam
Intro matlab and convolution islam
Intro matlab and convolution islam
Intro matlab and convolution islam
Intro matlab and convolution islam
Go to Matlab …..
Thanks,,,

More Related Content

What's hot (20)

PPT
Matlab introduction
Satish Gummadi
 
PPTX
Matlab Workshop Presentation
Jairo Maldonado-Contreras
 
PPTX
Introduction to matlab
Khulna University
 
PPTX
Introduction to matlab lecture 2 of 4
Randa Elanwar
 
PPT
Introduction to MatLab programming
Damian T. Gordon
 
PDF
Matlab lec1
Amba Research
 
PDF
Matlab/R Dictionary
Marck Vaisman
 
PDF
Matlab-free course by Mohd Esa
Mohd Esa
 
PPT
Matlab Overviiew
Nazim Naeem
 
PPTX
Introduction to matlab lecture 3 of 4
Randa Elanwar
 
PPT
Matlab tme series benni
dvbtunisia
 
PDF
A complete introduction on matlab and matlab's projects
Mukesh Kumar
 
PPT
A Dimension Abstraction Approach to Vectorization in Matlab
aiQUANT
 
PDF
MatLab Basic Tutorial On Plotting
MOHDRAFIQ22
 
KEY
Simple Scala DSLs
linxbetter
 
PDF
Advanced MATLAB Tutorial for Engineers & Scientists
Ray Phan
 
PPTX
matlab
Farhan Ahmed
 
PDF
MATLAB for Technical Computing
Naveed Rehman
 
PPTX
Matlab Tutorial
Ahmad Siddiq
 
PPTX
2D Plot Matlab
Jorge Jasso
 
Matlab introduction
Satish Gummadi
 
Matlab Workshop Presentation
Jairo Maldonado-Contreras
 
Introduction to matlab
Khulna University
 
Introduction to matlab lecture 2 of 4
Randa Elanwar
 
Introduction to MatLab programming
Damian T. Gordon
 
Matlab lec1
Amba Research
 
Matlab/R Dictionary
Marck Vaisman
 
Matlab-free course by Mohd Esa
Mohd Esa
 
Matlab Overviiew
Nazim Naeem
 
Introduction to matlab lecture 3 of 4
Randa Elanwar
 
Matlab tme series benni
dvbtunisia
 
A complete introduction on matlab and matlab's projects
Mukesh Kumar
 
A Dimension Abstraction Approach to Vectorization in Matlab
aiQUANT
 
MatLab Basic Tutorial On Plotting
MOHDRAFIQ22
 
Simple Scala DSLs
linxbetter
 
Advanced MATLAB Tutorial for Engineers & Scientists
Ray Phan
 
matlab
Farhan Ahmed
 
MATLAB for Technical Computing
Naveed Rehman
 
Matlab Tutorial
Ahmad Siddiq
 
2D Plot Matlab
Jorge Jasso
 

Viewers also liked (20)

PDF
Correlation
Sadia Shachi
 
PDF
Laboratory manual
Asif Rana
 
PPT
Monte Carlo Simulation Of Heston Model In Matlab(1)
Amir Kheirollah
 
PPTX
Matlab for diploma students(1)
Retheesh Raj
 
PPT
Ch9 failure mechanisms
dhyun
 
PDF
BAKER DONELSON - INVISIBLE PRACTICES - PULLING THE STRINGS BEHIND-THE-SCENE P...
VogelDenise
 
PDF
092712 julian assange (president obama's audacity) - haitian creole
VogelDenise
 
PDF
031808 obama speech (serbian)
VogelDenise
 
PDF
082512 us supreme court response (serbian)
VogelDenise
 
PDF
031808 obama speech (armenian)
VogelDenise
 
PDF
092712 julian assange (president obama's audacity) - bengali
VogelDenise
 
PDF
Obama us wars used to train white supremacist (hebrew)
VogelDenise
 
PDF
100112 obama reality check (update)-chinese traditional
VogelDenise
 
PDF
092812 david addington article (persian)
VogelDenise
 
PDF
031808 obama speech (hebrew)
VogelDenise
 
PDF
04/14/13 PUBLIC NOTICE (03/11/13 FAX TO BARACK OBAMA) - indonesian
VogelDenise
 
PDF
021013 adecco email (serbian)
VogelDenise
 
PDF
George zimmerman's not guilty (persian)
VogelDenise
 
PDF
071310 obama email (slovak)
VogelDenise
 
PDF
Δήμος Χερσονήσου Απολογισμός 2011-2014
My Chersonissos
 
Correlation
Sadia Shachi
 
Laboratory manual
Asif Rana
 
Monte Carlo Simulation Of Heston Model In Matlab(1)
Amir Kheirollah
 
Matlab for diploma students(1)
Retheesh Raj
 
Ch9 failure mechanisms
dhyun
 
BAKER DONELSON - INVISIBLE PRACTICES - PULLING THE STRINGS BEHIND-THE-SCENE P...
VogelDenise
 
092712 julian assange (president obama's audacity) - haitian creole
VogelDenise
 
031808 obama speech (serbian)
VogelDenise
 
082512 us supreme court response (serbian)
VogelDenise
 
031808 obama speech (armenian)
VogelDenise
 
092712 julian assange (president obama's audacity) - bengali
VogelDenise
 
Obama us wars used to train white supremacist (hebrew)
VogelDenise
 
100112 obama reality check (update)-chinese traditional
VogelDenise
 
092812 david addington article (persian)
VogelDenise
 
031808 obama speech (hebrew)
VogelDenise
 
04/14/13 PUBLIC NOTICE (03/11/13 FAX TO BARACK OBAMA) - indonesian
VogelDenise
 
021013 adecco email (serbian)
VogelDenise
 
George zimmerman's not guilty (persian)
VogelDenise
 
071310 obama email (slovak)
VogelDenise
 
Δήμος Χερσονήσου Απολογισμός 2011-2014
My Chersonissos
 
Ad

Similar to Intro matlab and convolution islam (20)

PDF
Matlab intro
fvijayami
 
PPTX
Intro to matlab
Norhan Mohamed
 
PDF
Lec1
Kinni MEW
 
PDF
Test
Kinni MEW
 
PDF
Test
Kinni MEW
 
PDF
Test
Kinni MEW
 
PDF
Test
Kinni MEW
 
PDF
Test
Kinni MEW
 
PPTX
MATLAB & Image Processing
Techbuddy Consulting Pvt. Ltd.
 
PDF
Basics of Image Processing using MATLAB
vkn13
 
PPTX
Summer training matlab
Arshit Rai
 
PDF
Summer training matlab
Arshit Rai
 
PPT
Intro matlab
danie_sileshi
 
PDF
Matlab
Kelin Jose
 
PPT
Learn Matlab
Abd El Kareem Ahmed
 
PDF
Matlab for beginners, Introduction, signal processing
Dr. Manjunatha. P
 
PPTX
Getting started with image processing using Matlab
Pantech ProLabs India Pvt Ltd
 
PPTX
Matlab-1.pptx
aboma2hawi
 
PDF
Lecture1_computer vision-2023.pdf
ssuserff72e4
 
PDF
bobok
Adi Pandarangga
 
Matlab intro
fvijayami
 
Intro to matlab
Norhan Mohamed
 
Lec1
Kinni MEW
 
Test
Kinni MEW
 
Test
Kinni MEW
 
Test
Kinni MEW
 
Test
Kinni MEW
 
Test
Kinni MEW
 
MATLAB & Image Processing
Techbuddy Consulting Pvt. Ltd.
 
Basics of Image Processing using MATLAB
vkn13
 
Summer training matlab
Arshit Rai
 
Summer training matlab
Arshit Rai
 
Intro matlab
danie_sileshi
 
Matlab
Kelin Jose
 
Learn Matlab
Abd El Kareem Ahmed
 
Matlab for beginners, Introduction, signal processing
Dr. Manjunatha. P
 
Getting started with image processing using Matlab
Pantech ProLabs India Pvt Ltd
 
Matlab-1.pptx
aboma2hawi
 
Lecture1_computer vision-2023.pdf
ssuserff72e4
 
Ad

Recently uploaded (20)

PDF
Biography of Daniel Podor.pdf
Daniel Podor
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Biography of Daniel Podor.pdf
Daniel Podor
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
July Patch Tuesday
Ivanti
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 

Intro matlab and convolution islam

  • 1. Introduction to MATLAB and image processing Amin Allalou [email protected] Centre for Image Analysis Uppsala University Computer Assisted Image Analysis April 4 2008
  • 2. MATLAB and images • The help in MATLAB is very good, use it! • An image in MATLAB is treated as a matrix • Every pixel is a matrix element • All the operators in MATLAB defined on matrices can be used on images: +, -, *, /, ^, sqrt, sin, cos etc.
  • 3. Images in MATLAB • MATLAB can import/export • Data types in MATLAB several image formats – Double (64-bit double-precision – BMP (Microsoft Windows Bitmap) floating point) – GIF (Graphics Interchange Files) – Single (32-bit single-precision – floating point) HDF (Hierarchical Data Format) – Int32 (32-bit signed integer) – JPEG (Joint Photographic Experts Group) – Int16 (16-bit signed integer) – PCX (Paintbrush) – Int8 (8-bit signed integer) – PNG (Portable Network Graphics) – Uint32 (32-bit unsigned integer) – TIFF (Tagged Image File Format) – Uint16 (16-bit unsigned integer) – XWD (X Window Dump) – Uint8 (8-bit unsigned integer) – MATLAB can also load raw-data or other types of image data
  • 4. Images in MATLAB • Binary images : {0,1} • Intensity images : [0,1] or uint8, double etc. • RGB images : m-by-n-by-3 • Indexed images : m-by-3 color map • Multidimensional images m-by-n-by-p (p is the number of layers)
  • 5. Image import and export • Read and write images in Matlab >> I=imread('cells.jpg'); >> imshow(I) >> size(I) ans = 479 600 3 (RGB image) >> Igrey=rgb2gray(I); >> imshow(Igrey) >> imwrite(lgrey, 'cell_gray.tif', 'tiff') Alternatives to imshow >>imagesc(I) >>imtool(I) >>image(I)
  • 6. Images and Matrices • How to build a matrix (or image)? >> A = [ 1 2 3; 4 5 6; 7 8 9 ]; A= 1 2 3 4 5 6 7 8 9 >> B = zeros(3,3) B= 0 0 0 0 0 0 0 0 0 >> C = ones(3,3) C= 1 1 1 1 1 1 1 1 1 >>imshow(A) (imshow(A,[]) to get automatic pixel range)
  • 7. Images and Matrices • Accesing image elements (row, column) X >> A(2,1) ans = 4 • : can be used to extract a whole column or row Y >> A(:,2) ans = 2 5 8 • or a part of a column or row A= >> A(1:2,2) 22 3 ans = 35 6 2 7 8 9 5
  • 8. Image Arithmetic • Arithmetic operations such as addition, subtraction, multiplication and division can be applied to images in MATLAB – +, -, *, / performs matrix operations >> A+A ans = 2 4 6 8 10 12 A= 14 16 18 22 3 >> A*A 35 6 ans = 30 36 42 7 8 9 66 81 96 102 126 150 • To perform an elementwise operation use . (.*, ./, .*, .^ etc) >> A.*A ans = 1 4 9 16 25 36 49 64 81
  • 9. Logical Conditions • equal (==) , less than and greater than (< and >), not equal (~=) and not (~) • find(‘condition’) - Returns indexes of A’s elements that satisfies the condition. >> [row col]=find(A==7) A= row = 3 22 3 col = 1 35 6 >> [row col]=find(A>7) 7 8 9 row = 3 3 col = 2 3 >> Indx=find(A<5) Indx = 1 2 4 7
  • 10. Flow Control • Flow control in MATLAB - if, else and elseif statements (row=1,2,3 col=1,2,3) if row==col A(row, col)=1; elseif abs(row-col)==1 A(row, col)=2; A= else 1 2 0 A(row, col)=0; 2 1 2 end 0 2 1
  • 11. Flow Control • Flow control in MATLAB - for loops for row=1:3 for col=1:3 if row==col A(row, col)=1; elseif abs(row-col)==1 A= A(row, col)=2; else 1 2 0 2 1 2 A(row, col)=0; 0 2 1 end end end
  • 12. Flow Control • while, expression, statements, end A= 22 3 Indx=1; 35 6 7 8 9 while A(Indx)<6 A(Indx)=0; Indx=Indx+1; end A= 0 2 3 0 5 6 7 8 9
  • 13. Working with M-Files • M-files can be scripts that simply execute a series of MATLAB statements, or they can be functions that also accept input arguments and produce output. • MATLAB functions: – Are useful for extending the MATLAB language for your application. – Can accept input arguments and return output arguments. – Store variables in a workspace internal to the function.
  • 14. Working with M-Files • Create a new empty m-file function B=test(I) [row col]=size(I) for r=1:row for c=1:col if r==c A(r, c)=1; elseif abs(r-c)==1 A(r, c)=2; else A(r, c)=0; end end end B=A;
  • 20. Superposition theorem • The superposition theorem for electrical circuits states that for a linear system the response ( Voltage or Current) in any branch of a bilateral linear circuit having more than one independent source equals the algebraic sum of the responses caused by each independent source acting alone, while all other independent sources are replaced by their internal impedances.
  • 21. Requirements for Linearity • A system is called linear if it has two mathematical properties: 2.Homogeneity 3.Additivity 4.Shift invariance (where “Shift invariance” is not a strict requirement for linearity, but it is a mandatory property for most DSP techniques.)
  • 28. Decomposition & Convolution • While many different decompositions are possible, two form the backbone of signal processing: 2.Impulse decomposition 3.Fourier decomposition. • When impulse decomposition is used, the procedure can be described by a mathematical operation called convolution.
  • 30. Definition of delta function (unit impulse) and impulse response
  • 31. Shifted & Scaled Delta function
  • 32. Convolution If the system being considered is a filter, the impulse response is called the filter kernel, the convolution kernel, or simply, the kernel. In image processing, the impulse response is called the point spread function.
  • 34. Correlation Correlation is a mathematical operation that is very similar to convolution. Just as with convolution, correlation uses two signals to produce a third signal. This third signal is called the cross-correlation of the two input signals. If a signal is correlated with itself, the resulting signal is instead called the autocorrelation.
  • 35. Correlation The formula essentially slides the function along the x-axis, calculating the integral of their product at each position. When the functions match, the value of is maximized. This is because when peaks (positive areas) are aligned, they make a large contribution to the integral. Similarly, when troughs (negative areas) align, they also make a positive contribution to the integral because the product of two negative numbers is positive
  • 36. Convolution In MATLAB • Linear filtering of an image is accomplished through an operation called convolution. Convolution is a neighborhood operation in which each output pixel is the weighted sum of neighboring input pixels. The matrix of weights is called the convolution kernel, also known as the filter. A convolution kernel is a correlation kernel that has been rotated 180 degrees.
  • 42. Go to Matlab …..