1Ellen L. Walker ImageJ Java image processing tool from NIH Reads / writes a large variety of images Many image processing operations.

Slides:



Advertisements
Similar presentations
Grey Level Enhancement Contrast stretching Linear mapping Non-linear mapping Efficient implementation of mapping algorithms Design of classes to support.
Advertisements

Linear Filtering – Part I Selim Aksoy Department of Computer Engineering Bilkent University
Spatial Filtering (Chapter 3)
CS & CS Multimedia Processing Lecture 2. Intensity Transformation and Spatial Filtering Spring 2009.
Chapter 3 Image Enhancement in the Spatial Domain.
Digital Image Processing
E.G.M. PetrakisFiltering1 Linear Systems Many image processing (filtering) operations are modeled as a linear system Linear System δ(x,y) h(x,y)
Digital Image Processing In The Name Of God Digital Image Processing Lecture3: Image enhancement M. Ghelich Oghli By: M. Ghelich Oghli
Advanced Computer Vision Chapter 3 Image Processing (1) Presented by: 傅楸善 & 張乃婷
Each pixel is 0 or 1, background or foreground Image processing to
6/9/2015Digital Image Processing1. 2 Example Histogram.
Multimedia Data Introduction to Image Processing Dr Mike Spann Electronic, Electrical and Computer.
Digital Image Processing
MSU CSE 803 Stockman Linear Operations Using Masks Masks are patterns used to define the weights used in averaging the neighbors of a pixel to compute.
1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology.
1 Lecture 12 Neighbourhood Operations (2) TK3813 DR MASRI AYOB.
CS 376b Introduction to Computer Vision 02 / 25 / 2008 Instructor: Michael Eckmann.
Image Enhancement.
1 Image filtering Images by Pawan SinhaPawan Sinha.
Computer Vision Basics Image Terminology Binary Operations Filtering Edge Operators.
Image Analysis Preprocessing Arithmetic and Logic Operations Spatial Filters Image Quantization.
Lecture 2. Intensity Transformation and Spatial Filtering
MSU CSE 803 Linear Operations Using Masks Masks are patterns used to define the weights used in averaging the neighbors of a pixel to compute some result.
Chapter 3 (cont).  In this section several basic concepts are introduced underlying the use of spatial filters for image processing.  Mainly spatial.
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
Digital Image Processing Image Enhancement Part IV.
Chapter 3 Image Enhancement in the Spatial Domain.
Multimedia Data Introduction to Image Processing Dr Sandra I. Woolley Electronic, Electrical.
Linear Filtering – Part I Selim Aksoy Department of Computer Engineering Bilkent University
Filtering and Enhancing Images. Major operations 1. Matching an image neighborhood with a pattern or mask 2. Convolution (FIR filtering)
Lecture 03 Area Based Image Processing Lecture 03 Area Based Image Processing Mata kuliah: T Computer Vision Tahun: 2010.
AdeptSight Image Processing Tools Lee Haney January 21, 2010.
Image processing Fourth lecture Image Restoration Image Restoration: Image restoration methods are used to improve the appearance of an image.
Chapter 5: Neighborhood Processing
Image Processing Part II. 2 Classes of Digital Filters global filters transform each pixel uniformly according to the function regardless of its location.
Lecture 5 Mask/Filter Transformation 1.The concept of mask/filters 2.Mathematical model of filtering Correlation, convolution 3.Smoother filters 4.Filter.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
Image Subtraction Mask mode radiography h(x,y) is the mask.
Course 2 Image Filtering. Image filtering is often required prior any other vision processes to remove image noise, overcome image corruption and change.
Intelligent Vision Systems ENT 496 Image Filtering and Enhancement Hema C.R. Lecture 4.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
Lecture # 19 Image Processing II. 2 Classes of Digital Filters Global filters transform each pixel uniformly according to the function regardless of.
Sejong Univ. CH3. Area Processes Convolutions Blurring Sharpening Averaging vs. Median Filtering.
: Chapter 5: Image Filtering 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
CSE 185 Introduction to Computer Vision Image Filtering: Spatial Domain.
Non-linear filtering Example: Median filter Replaces pixel value by median value over neighborhood Generates no new gray levels.
Introduction to Digital Image Analysis Kurt Thorn NIC.
Filters– Chapter 6. Filter Difference between a Filter and a Point Operation is that a Filter utilizes a neighborhood of pixels from the input image to.
Image Processing Lab Section 28/3/2016 Prepared by Mahmoud Abdelsatar Demonstrator at IT Dep. Faculty of computers and information Assuit University.
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
Image Enhancement in the Spatial Domain.
Image Subtraction Mask mode radiography h(x,y) is the mask.
ECE 692 – Advanced Topics in Computer Vision
Filtering – Part I Gokberk Cinbis Department of Computer Engineering
- photometric aspects of image formation gray level images
Other Algorithms Follow Up
Histogram Histogram is a graph that shows frequency of anything. Histograms usually have bars that represent frequency of occuring of data. Histogram has.
Image Enhancement in the Spatial Domain
Image filtering Images by Pawan Sinha.
Lecture 3 (2.5.07) Image Enhancement in Spatial Domain
Histogram Probability distribution of the different grays in an image.
Image filtering Images by Pawan Sinha.
Digital Image Processing
Digital Image Processing Week IV
Linear Operations Using Masks
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Digital Filters.
Image Enhancement in the Spatial Domain
Presentation transcript:

1Ellen L. Walker ImageJ Java image processing tool from NIH Reads / writes a large variety of images Many image processing operations are implemented Good rapid prototyping / testing tool Includes the ability to write your own plugins Convenient way to implement your own algorithms, using their image class and i/o methods

2Ellen L. Walker Point Processes Pixel by pixel transformation Output pixel depends only on corresponding input pixel Examples: Out(r,c) = In(r,c) * 1.25 Out(r,c) = In(r,c) + 25 Out(r,c) = (In(r,c)) 2

3Ellen L. Walker Linear Transformations Out(r,c) = In(r,c) * gain + bias Gain controls contrast Bias controls brightness Location dependent: Out(r,c) = In(r,c) * gain(r,c) + bias(r,c) E.g. “sky darkening filter” Linear Blend Out(r,c) = (lambda) * In1(r,c) + (1-lambda) * In2(r,c) If In1 and In2 are images, a sequence of these from lambda = 0 to lambda=1 is an image dissolve

4Ellen L. Walker Histogram An image histogram counts the number of pixels at each brightness. Color images have 3 histograms (red, green, blue)

5Ellen L. Walker Information in Histogram Contrast (variation in brightness) Are bars spread over the whole range? Foreground vs. background color Are there two separate “peaks” with a valley between?

6Ellen L. Walker Applications of Histogram Thresholding Find a value that separates foreground / background values Look for a “valley” between two peaks (may or may not be what you need) Contrast enhancement Histogram equalization – spread the data as evenly through the histogram as possible Goal: wide, flat histogram

7Ellen L. Walker Example: Histogram Equalization Original Modified

8Ellen L. Walker Algorithm: Histogram Equalization Find cumulative distribution For each intensity I, c(I) = # pixels <= I Code: C[0]=Hist[0]; For(greylevel =1; greylevel < max; greylevel++){ C[greylevel] = Hist[greylevel] + C[greylevel-1]; C[greylevel] = C[greylevel] / (double)(rows*cols); }

9Ellen L. Walker Algorithm: Histogram Equalization Use C(I) as a lookup table to determine the final value of each pixel. Since C(I) ranges from 0 to 1 (why?), multiply C(I) by the max pixel value to get the output value Code: For(r=0;r<rows;r++) for(c=0;c<cols;c++) out[r][c] = C[(in[r][c])]*MAX;

10Ellen L. Walker Locally Adaptive Histogram Equalization Instead of doing histogram equalization using the whole image, compute the distribution for a moving window around the given pixel. Avoids effect of bright light at one corner washing out everything in the image.

11Ellen L. Walker Image Neighborhoods Neighborhoods can be defined for each pixel The two most common neighborhoods 4-neighborhood 8-neighborhood N WE S

12Ellen L. Walker Applying a Mask Mask is a set of relative pixel positions. One is designated the origin (0,0) - usually at center Each mask element is weighted To apply the mask, put the origin pixel over the image pixel and multiply weights by the pixels under them, then add up all the values. Usually this is repeated for every pixel in the image. Assumptions must be made for pixels near the edge of the image.

13Ellen L. Walker Mask application example Mask = Apply to every pixel in image: Result is Boundary pixels are gray

14Ellen L. Walker Mathematical Representation of Mask Operations Equation from Chapter 3 g is the output image f is the input image h is the mask (also called kernel) Short form (convolution operator)

15Ellen L. Walker Masks that "blur" "Box mask" - every pixel gets the average of its neighborhood 1 1 1After computing, divide by 9 (mask sum) 1 1 1to keep image from getting too bright "Weighted average" - divide by 16 after application

16Ellen L. Walker Why blur? Avoid effects of small random noise (“salt and pepper”) Remove small features to emphasize larger ones Bigger masks blur more / remove larger features Sequence of masks generates sequence of increasingly blurred images (useful for some matching algorithms) First step in sharpening the image (!) Sharp(x,y) = orig(x,y) + gamma (orig(x,y) – (blur * orig(x,y)))

17Ellen L. Walker Boundary Effects (padding) Figure 3.12

18Ellen L. Walker Common Masks Figure 3.13

19Ellen L. Walker Median Filtering Example of a non-linear filter Replace the central pixel of a window with the median pixel of the window Compare to box filter, which replaces with average value in the window Tends to preserve edges (why?)