Filtering (I) Agenda. Getting to know images. Image noise. Image filters. Dr. Chang Shu. COMP 4900C Winter 2008

Similar documents
Filtering (I) Dr. Chang Shu. COMP 4900C Winter 2008

Representation of image data

Multimedia Retrieval Exercise Course 2 Basic of Image Processing by OpenCV

ECE 661 HW6 Report. Lu Wang 10/28/2012

Image restoration. Restoration: Enhancement:

CpSc 101, Fall 2015 Lab7: Image File Creation

ECE 661 HW 1. Chad Aeschliman

OpenCV. OpenCV Tutorials OpenCV User Guide OpenCV API Reference. docs.opencv.org. F. Xabier Albizuri

Image Enhancement 3-1

Image Enhancement: To improve the quality of images

Multimedia Retrieval Exercise Course 2 Basic Knowledge about Images in OpenCV

OpenCV Introduction. CS 231a Spring April 15th, 2016

Image coding and compression

OpenCV Tutorial. Part II Loading Images and Using Histograms. 29 November Gavin S Page

Chapter 1 Introduction to Photoshop CS3 1. Exploring the New Interface Opening an Existing File... 24

Chapter 5 Images. Presented by Thomas Powell. Slides adopted from HTML & XHTML: The Complete Reference, 4th Edition 2003 Thomas A.

INFS 2150 / 7150 Intro to Web Development / HTML Programming

Filtering Images. Contents

Image Processing Lecture 10

Probability Model for 2 RV s

Format Type Support Thru. vector (with embedded bitmaps)

CS101 Lecture 12: Image Compression. What You ll Learn Today

Introduction to OpenCV. Marvin Smith

OpenCV. Rishabh Maheshwari Electronics Club IIT Kanpur

Operation of machine vision system

Quick Guide for Photoshop CS 6 Advanced June 2012 Training:

ClipArt and Image Files

Bricks'n'Tiles. Tutorial Creating a brick file and texturing a medieval tower. Easy Creation of Architectural Textures.

Final Study Guide Arts & Communications

xv Programming for image analysis fundamental steps

IMAGE PROCESSING AND OPENCV. Sakshi Sinha Harshad Sawhney

MCS 2514 Fall 2012 Programming Assignment 3 Image Processing Pointers, Class & Dynamic Data Due: Nov 25, 11:59 pm.

Adobe EXAM - 9A Adobe InDesign CS5 ACE Exam. Buy Full Product.

webcam Reference Manual

8/19/2018. Web Development & Design Foundations with HTML5. Learning Objectives (1 of 2) Learning Objectives (2 of 2) Horizontal Rule Element

EE795: Computer Vision and Intelligent Systems

Features. Sequential encoding. Progressive encoding. Hierarchical encoding. Lossless encoding using a different strategy

BEST BUDDIES DESIGN GUIDELINES. Advertising & General Applications

Exercise 7: Graphics and drawings in Linux

Digital Image Fundamentals

Data Storage. Slides derived from those available on the web site of the book: Computer Science: An Overview, 11 th Edition, by J.

EUROPEAN COMPUTER DRIVING LICENCE / INTERNATIONAL COMPUTER DRIVING LICENCE IMAGE EDITING

Image processing. Reading. What is an image? Brian Curless CSE 457 Spring 2017

Logo & Icon. Fit Together Logo (color) Transome Logo (black and white) Quick Reference Print Specifications

Distinguishing the Noise and image structures for detecting the correction term and filtering the noise by using fuzzy rules

Image Processing (1) Basic Concepts and Introduction of OpenCV

Data Representation From 0s and 1s to images CPSC 101

Lecture 5. Digital Media Components Markup and Scripting Languages Multimedia Tools Facilities Provided by the School Suggested Reading

High Speed Pipelined Architecture for Adaptive Median Filter

David Tschumperlé. Image Team, GREYC / CNRS (UMR 6072) IPOL Workshop on Image Processing Libraries, Cachan/France, June 2012

Transportation Informatics Group, ALPEN-ADRIA University of Klagenfurt. Transportation Informatics Group University of Klagenfurt 12/24/2009 1

EDLD 5366 Digital Graphics and Web Design. Directions. Assignment 1.1

Image Formats. Ioannis Rekleitis

COMS 359: Interactive Media

Image Types Vector vs. Raster

CMPT 165 Graphics Part 2. Nov 3 rd, 2015

Digital Graphics Primer

Lecture 9: Hough Transform and Thresholding base Segmentation

Adobe Photoshop CS2 Reference Guide For Windows

LAB SESSION 1 INTRODUCTION TO OPENCV

stanford hci group / cs377s Lecture 8: OpenCV Dan Maynes-Aminzade Designing Applications that See

CP SC 4040/6040 Computer Graphics Images. Joshua Levine

Will Monroe July 21, with materials by Mehran Sahami and Chris Piech. Joint Distributions

Cross-platform Mobile Document Scanner

Digital Image Fundamentals. Prof. George Wolberg Dept. of Computer Science City College of New York

Understanding file formats

Massachusetts Institute of Technology. Department of Computer Science and Electrical Engineering /6.866 Machine Vision Quiz I

Lecture 4: Image Processing

color bit depth dithered

IMAGE DE-NOISING IN WAVELET DOMAIN

Computer Vision and Graphics (ee2031) Digital Image Processing I

ECE661 Computer Vision : HW1

Vector- drawn: what is the meaning of " on the fly " in vector images? It means that computers draw the image as per instructions.

IMPLEMENTATION OF COMPUTER VISION TECHNIQUES USING OPENCV

Computer Vision I - Algorithms and Applications: Basics of Image Processing

Computer Vision I - Basics of Image Processing Part 1

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu

REVIEW ON IMAGE COMPRESSION TECHNIQUES AND ADVANTAGES OF IMAGE COMPRESSION

Overview: motion-compensated coding

Computer Science 1001.py Lecture 18: A Crash Intro to Digital Images, Noise, and Noise Reduction

THE BARE ESSENTIALS OF MATLAB

CS 315 Data Structures Fall Figure 1

Filtering and Enhancing Images

DigiPoints Volume 1. Student Workbook. Module 8 Digital Compression

image filtration i Ole-Johan Skrede INF Digital Image Processing

Section 1: How to created Auto-Segmented and Vectorised output

Today s outline: pp

Using Dreamweaver, Photoshop, and Fireworks: CS38: Graphics Production for the Web. Stanford University Continuing Studies CS 38

MATLAB for Image Processing

Biostatistics 615/815 Lecture 10: Hidden Markov Models

CSCE574 Robotics Spring 2014 Notes on Images in ROS

Create a Contact Sheet of Your Images Design a Picture Package Customize Your Picture Package Layout Resample Your Image...

1. Introduction to the OpenCV library

Image Compression Techniques

Lesson 7 Working with Graphics

In this exercise you will be creating the graphics for the index page of a Website for children about reptiles.

Chapter 3: Intensity Transformations and Spatial Filtering

Programming for Image Analysis/Processing

The following program computes a Calculus value, the "trapezoidal approximation of

Lecture 8 JPEG Compression (Part 3)

Transcription:

Filtering (I) Dr. Chang Shu COMP 4900C Winter 008 Agenda Getting to know images. Image noise. Image filters. 1

Digital Images An image - rectangular array of integers Each integer - the brightness or darkness of the image at that point N: # of rows, M: # of columns, Q: # of gray levels Q = q (q is the # of bits/pixel) Storage requirements: NxMxq (e.g., for N=M=104 and q=8 storage = 1MB) f (0,0) f (0,1)... f (0, M 1) f (1,0) f (1,1)... f (1, M 1)............ f ( N 1,0) f ( N 1,1)... f ( N 1, M 1) Image File Formats Header usually contains width, height, bit depth. Magic number identify file format. Image data stores pixel values line by line without breaks.

Common Image File Formats GIF (Graphic Interchange Format,.gif) PNG (Portable Network Graphics,.png) JPEG (Joint Photographic Experts Group,.jpeg) TIFF (Tagged Image File Format, tiff) PGM (Portable Gray Map,.pgm) FITS (Flexible Image Transport System,.fits) Image Manipulation Tools Linux: xv, gimp Windows: Photoshop, Paint Shop Pro 3

OpenCV + Ch read and display images #ifdef _CH_ #pragma package <opencv> #endif #include "cv.h" #include "highgui.h" // Load the source image. HighGUI use. IplImage *image = 0, *gray = 0; int main( int argc, char** argv ) { char* filename = argc ==? argv[1] : (char*)"fruits.jpg"; if( (image = cvloadimage( filename, 1)) == 0 ) return -1; // Convert to grayscale gray = cvcreateimage(cvsize(image->width,image->height), IPL_DEPTH_8U, 1); cvcvtcolor(image, gray, CV_BGRGRAY); // Create windows. cvnamedwindow("source", 1); cvnamedwindow("result", 1); // Show the images. cvshowimage("source", image); cvshowimage("result", gray); // Wait for a key stroke cvwaitkey(0); cvreleaseimage(&image); cvreleaseimage(&gray); cvdestroywindow("source"); cvdestroywindow("result"); return 0; } Noise Noise in Computer Vision: Any entity (in images, data, or intermediate results) that is not interesting for the main computation Can think of noise in several contexts: Spurious pixel fluctuations, introduced by image acquisition Numerical inaccuracies, introduced by the computer s limited precision, round-offs or truncations, etc Entities that do not belong to any meaningful region (edges that do not correspond to actual object contours) 4

Image Noise Image Noise Additive and random noise: ( x, y) = I( x, y) n( x y) I ˆ +, I(x,y) : the true pixel values n(x,y) : the (random) noise at pixel (x,y) 5

Random Variables A random variable is a variable whose values are determined by the outcome of a random experiment. A random variable can be discrete or continuous. Examples 1. A coin is tossed ten times. The random variable X is the number of tails that are noted. X can only take the values 0, 1,..., 10, so X is a discrete random variable.. A light bulb is burned until it burns out. The random variable Y is its lifetime in hours. Y can take any positive real value, so Y is a continuous random variable. Mean, Variance of Random Variable Mean (Expected Value) = µ = E ( X ) x p( ) i i x i µ = E ( X ) = xp( x) dx (discrete) (continuous) Variance = E(( X µ ) ) = is called standard deviation 6

7 Gaussian Distribution / ) ( 1 ) ( µ π = x e x p Single variable Gaussian Distribution ( ) ( ) + = exp 1, π y x y x G Bivariate with zero-means and variance

Gaussian Noise Is used to model additive random noise n The probability of n(x,y) is e Each has zero mean The noise at each pixel is independent Impulsive Noise Alters random pixels Makes their values very different from the true ones Salt-and-Pepper Noise: Is used to model impulsive noise I sp ( h, k) = i min I + y ( h, k) ( i i ) max min x < l x l x, y are uniformly distributed random variables are constants l, i i min, max 8