G52IIP Module Introduction

Embed Size (px)

Citation preview

  • 8/13/2019 G52IIP Module Introduction

    1/29

    G52IIPIntroduction to Image Processing

  • 8/13/2019 G52IIP Module Introduction

    2/29

    ! Introduces topics and techniques related to the useof computers to

    !Acquire

    ! Store! Process/Manipulate! Model! Analyse/Interpret! Display

    images

    ! Gives experience of implementing, applying andevaluating image processing methods

    G52IIP

  • 8/13/2019 G52IIP Module Introduction

    3/29

    Know Your Limitations

    ! Four terms are often used together, andsometimes interchanged

    !Image Processing

    ! Image Analysis! Computer Vision! Computer Graphics

    ! All share representations, underlyingmathematics and some algorithms

    ! Their goals are very differentThis is an Image Processing module

    Objects Images

    Measurements

  • 8/13/2019 G52IIP Module Introduction

    4/29

    Image Processing

    ! Mainly concerned with:! Image acquisition capture a low-level digital

    representation of the viewed world! Image processing noise removal, smoothing,

    sharpening, contrast enhancement, etc.

    ! Image compression efficient representation ofimage data for storage (minimise disk space) and

    communication (minimise network bandwidth)! Display render the image data on

    reproduction media (screens, printer paper)

    Objects

    Images

  • 8/13/2019 G52IIP Module Introduction

    5/29

    Image Processing

    ! Image acquisition (low-level) digitalrepresentation of the viewed world

    123 33 234 4567 90 12 134 3456 89 54 67 98111 56 67 90 6534 .

    Pixel values represent the brightnessand colour of the viewed objects,

    but give no indication of whatobject, e.g., books, monitors, these

    numbers refer to hence low-level

  • 8/13/2019 G52IIP Module Introduction

    6/29

    Image Processing

    ! Image acquisition (low-level) digitalrepresentation of the viewed world

    123 33 234 4567 90 12 134 3456 89 54 67 98111 56 67 90 6534 .

    What should these numbersrecord?

    How big should the array be? What range (precision) of values

    should be stored?

  • 8/13/2019 G52IIP Module Introduction

    7/29

    Image Processing

    ! Image processing noise removal, smoothing,sharpening, contrast enhancement, changingthe appearance of an image

    Noise reduction

  • 8/13/2019 G52IIP Module Introduction

    8/29

    ! Image processing noise removal, smoothing,sharpening, contrast enhancement, changingthe appearance of an image

    Image Processing

    Sharpening

  • 8/13/2019 G52IIP Module Introduction

    9/29

    ! Image processing noise removal, smoothing,sharpening, contrast enhancement, changingthe appearance of an image

    Image Processing

    Smoothing

  • 8/13/2019 G52IIP Module Introduction

    10/29

    ! Image processing noise removal, smoothing,sharpening, contrast enhancement, changingthe appearance of an image

    Image Processing

    10Contrast Enhancement

  • 8/13/2019 G52IIP Module Introduction

    11/29

    ! Image processing noise removal, smoothing,sharpening, contrast enhancement, changingthe appearance of an image

    Image Processing

    Changing image appearance

  • 8/13/2019 G52IIP Module Introduction

    12/29

    Image Processing! Image compression efficiently represent image

    data for storage (minimisedisk space) andcommunication (minimise network bandwidth)

    245,760 bytes 69,632 bytes 5,951 bytes

  • 8/13/2019 G52IIP Module Introduction

    13/29

    Image Processing! Display render the image data on reproduction

    media (screens, printer paper)

    123 33 234 4567 90 12 134 3456 89 54 67 98111 56 67 90 6534 .

  • 8/13/2019 G52IIP Module Introduction

    14/29

    ! Display render the image data on reproductionmedia (screens, printer paper)

    123 33 234 4567 90 12 134 3456 89 54 67 98111 56 67 90 6534 .

    Image Processing

  • 8/13/2019 G52IIP Module Introduction

    15/29

    Image Analysis! Concerned with making quantitative

    measurements on images:

    !Image acquisition is constrained so that imagemeasurements are a proxy for some real world value

    ! Sits between image processing and computer vision! G52IIP covers methods widely used in image analysis

    Objects Images Measurements

  • 8/13/2019 G52IIP Module Introduction

    16/29

    Image Analysis! Many application areas:

    ! Document processing! Medical! Scientific! Industrial inspection:

    Food, textiles, manufacturing,..

    ! Image processing pipelines and measurementmethods are application specific

    ! Uses generic operations where possible, andengineering, more than scientific approach

  • 8/13/2019 G52IIP Module Introduction

    17/29

    Computer Vision! Each pixel value in a standard camera image is

    a function of

    ! thereflectanceof the viewed object! theshapeof the viewed object! illuminationconditions! viewing geometry

    ! Biological vision inverts that function withapparent ease

    ! putting the toothpaste back in the tube! But the function is (usually) unknown, and very

    complex....

  • 8/13/2019 G52IIP Module Introduction

    18/29

    Computer Vision! Aims to invert image formation & recover

    information about the viewed world

    Objects MeasurementsObjects

    Images

  • 8/13/2019 G52IIP Module Introduction

    19/29

    Computer Vision! Those working in computer vision address issues in! Object detection and recognition!

    Recovery of 3D shape! Tracking and motion analysis! Event recognition! .

    ! They work with naturally occurring images tosolve more general problems than are usuallyaddressed in Image Analysis

    ! See G54VIS: Computer Vision

  • 8/13/2019 G52IIP Module Introduction

    20/29

    Computer Graphics! Focus is on creating images

    from object models:

    ! Lighting and shading modeling! Volume modeling! Curve and surface modeling! Visibility modeling! Texture synthesis! Character animation! Modeling terrain, liquids, fire/smoke,

    cloth, hair/fur, feathers, skin etc

    ! See G53GRA: Computer Graphics

  • 8/13/2019 G52IIP Module Introduction

    21/29

    G52IIP - Content! Image formation, acquisition, colour

  • 8/13/2019 G52IIP Module Introduction

    22/29

    G52IIP - Content! Image processing theory and practice

    ! How is this possible?! How is it achieved?! What problem is being solved?! What else can be done?

  • 8/13/2019 G52IIP Module Introduction

    23/29

    G52IIP - Content! Spatial domain methods

    (operating directly on the image)

    ! Point operations! Area operations

    ! Frequency domain methods! Compute the power spectrum of the

    image

    ! Process the power spectrum! Reconstruct a new image from the

    modified power spectrum

  • 8/13/2019 G52IIP Module Introduction

    24/29

    G52IIP - Content! Image Compression! Types of redundancy! Exploiting redundancy! Huffman coding! LZW coding! Predictive coding! Quantisation-based methods

    ! DCT & JPEG

  • 8/13/2019 G52IIP Module Introduction

    25/29

    G52IIP - Content! Edge detection and image segmentation

    ! A step towards imageanalysis & computer viison

    ! Underlying theory! Some useful algorithms

  • 8/13/2019 G52IIP Module Introduction

    26/29

    G52IIP - Content! Selected Advanced Topics:

    Content-based Image Retrieval

    ! Show me all the imageslike this

    in here

  • 8/13/2019 G52IIP Module Introduction

    27/29

    G52IIP - Content! Selected Advanced Topics:

    IntroductiontoImageStitching

    + + .+

    =

  • 8/13/2019 G52IIP Module Introduction

    28/29

    G52IIP - Resources! Two lectures, one lab per week: exercises using

    Matlab

    ! Moodle page with additional readings, links, etc! Some good books:

  • 8/13/2019 G52IIP Module Introduction

    29/29

    G52IIP - Assessment! 2000 word programming assignment/report! Series of Matlab tasks! Explanation & evaluation of results! Out: soon! Deadline: soon after

    ! 1 hour exam! Answer each of 3 questions

    im=imread('Atrium2.jpg');

    im_grey=sum(im,3);im_grey=im_grey/max(im_grey(:));subplot(2,4,1);

    imshow(im_grey);title('grey image');

    thresh=0.5;

    im_grey(im_greythresh)=1;subplot(2,4,2);

    imshow(im_grey);title('binary image');