Image Processing, Warping, and Sampling

Size: px
Start display at page:

Download "Image Processing, Warping, and Sampling"

Transcription

1 Image Processing, Warping, and Sampling Michael Kazhdan ( /657) HB Ch. 4.8 FvDFH Ch

2 Outline Image Processing Image Warping Image Sampling

3 Image Processing What about the case when the modification that we would like to make to a pixel depends on the pixels around it? Blurring Edge Detection Etc.

4 Multi-Pixel Operations Stationary/Local Filtering In the simplest case, we define a mask of weights telling us how values at adjacent pixels should be combined to generate the new value.

5 Blurring To blur across pixels, define a mask: Whose values are non-negative Whose value is largest at the center pixel Whose entries sum to one. Filter = Original Blur

6 Blurring Pixel(x,y): red = 36 green = 36 blue = 0 Filter = Original

7 Blurring Pixel(x,y): red = 36 green = 36 blue = 0 X - 1 X X + 1 Y - 1 Y Filter = Original Y Pixel(x,y).red and its red neighbors

8 Blurring New value for Pixel(x,y).red = (36 * 1/16) + (109 * 2/16) + (146 * 1/16) (32 * 2/16) + (36 * 4/16) + (109 * 2/16) (32 * 1/16) + (36 * 2/16) + (73 * 1/16) X - 1 X X + 1 Y - 1 Y Filter = Original Y Pixel(x,y).red and its red neighbors

9 Blurring New value for Pixel(x,y).red = X - 1 X X + 1 Y - 1 Y Filter = Original Y Pixel(x,y).red and its red neighbors

10 Blurring New value for Pixel(x,y).red = Original Blur

11 Blurring Repeat for each pixel and each color channel Keep source and destination separate to avoid drift. For boundary pixels, not all neighbors are used, and you need to normalize the mask so that the sum of the values is correct.

12 In general, the mask can have arbitrary size: We can express a smaller mask as a bigger one by padding with zeros. Blurring / / Original Narrow Blur

13 In general, the mask can have arbitrary size: We can have more non-zero entries to give rise to a wider blur. Blurring Original Narrow Blur 48 / Wide Blur /

14 Blurring A general way for defining the entries of an n n mask is to use the values of a Gaussian: GaussianMask[i][j] =e di2 +dj 2 2σ 2 σ equals the mask radius (n/2 for an n n mask) di is i s horizontal distance from the center pixel dj is j s vertical distance from the center pixel Don t forget to normalize!

15 Edge Detection An edge is a point in the image where the image is far from constant.

16 Edge Detection To find the edges in an image, define a mask: Whose value is largest at the center pixel Whose entries sum to zero. Edge pixels are those whose value is larger (on average) than those of its neighbors. Filter = Original Detected Edges

17 Edge Detection Pixel(x,y): red = 36 green = 36 blue = 0 Original Filter =

18 Edge Detection Pixel(x,y): red = 36 green = 36 blue = 0 X - 1 X X + 1 Y Original Y Y Pixel(x,y).red and its red neighbors Filter =

19 Edge Detection New value for Pixel(x,y).red = (36 * -1/8) + (109 * -1/8) + (146 * -1/8) (32 * -1/8) + (36 * 1 ) + (109 * -1/8) (32 * -1/8) + (36 * -1/8) + (73 * -1/8) X - 1 X X + 1 Y Original Y Y Pixel(x,y).red and its red neighbors Filter =

20 Edge Detection New value for Pixel(x,y).red = -285/8 X - 1 X X + 1 Y Original Y Y Pixel(x,y).red and its red neighbors Filter =

21 Edge Detection New value for Pixel(x,y).red = 0 X - 1 X X + 1 Y Original Y Y Pixel(x,y).red and its red neighbors Filter =

22 Edge Detection New value for Pixel(x,y).red = 0 Original Detected Edges Filter = Note: Edge values are not colors, so we have to rescale/remap for visualization.

23 Outline Image Processing Image Warping Image Sampling

24 Image Warping Move pixels of image Mapping Resampling Warp Source image Destination image

25 Overview Mapping Forward Inverse Resampling Point sampling Triangle filter Gaussian filter

26 Mapping Define transformation Describe the destination x, y = Φ(u, v) for every location (u, v) in the source v y u x

27 Example Mappings Scale by σ: Φ(u, v) = (σu, σv) y v Scale σ = 0.8 u x

28 Example Mappings Rotate by θ degrees: Φ(u, v) = (u cos θ v sin θ, u sin θ + v cos θ) y v Rotate θ = 30 u x

29 Example Mappings Shear in x by σ x : Φ u, v = u + σ x v, v v y Shear in y by σ y : u Shear x σ x = 1.3 x Φ(u, v) = (u, v + σ y u ) v y u Shear y σ y = 1.3 x

30 Other Mappings Any function of u and v: Φ u, v = Swirl Fish-eye Rain

31 Image Warping Implementation I Forward mapping: for( int v=0 ; v<vmax ; v++ ) for( int u=0 ; u<umax ; u++ ) float (x,y) = Φ(u,v); dst(x,y) = src(u,v); (u, v) Φ (x, y) Source image Destination image

32 Forward Mapping Iterate over source image v y u Rotate + Translate x

33 Forward Mapping BAD! Iterate over source image Multiple source pixels can map to same destination pixel v y u Rotate + Translate x

34 Forward Mapping BAD! Iterate over source image Multiple source pixels can map to same destination pixel Some destination pixels may not be covered v y u Rotate + Translate x

35 Image Warping Implementation II Inverse mapping: for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = Φ -1 (x,y); dst(x,y) = src(u,v); (u, v) Φ (x, y) Source image Destination image

36 Reverse Mapping GOOD! Iterate over destination image Must resample source May oversample, but much simpler! v y u Rotate Translate x

37 Resampling Evaluate source image at arbitrary (u, v) (u, v) does not usually have integer coordinates (u, v) Source image (x, y) Destination image

38 Overview Mapping Forward Inverse Resampling Nearest Point Sampling Bilinear Sampling Gaussian Sampling

39 Nearest Point Sampling Take value at closest pixel: int iu = floor(u+0.5); int iv = floor(v+0.5); dst(x,y) = src(iu,iv); v y Rotate + Translate u x

40 Bilinear Sampling Bilinearly interpolate four closest source pixels dst(x, y) = Weighted average of source at (u 1, v 1 ), (u 2, v 1 ), (u 1, v 2 ), and (u 2, v 2 ) (u 1, v 2 ) (u 1, v 1 ) (u, v) (u 2, v 2 ) (u 2, v 1 ) v y Rotate + Translate u x

41 Linear Sampling Linearly interpolate two closest source pixels dst(x) = linear interpolation of u 1 and u 2 u u 1 u 2 du u1 = floor( u ); u2 = u1 + 1; du = u u1; dst(x) = src(u1)*(1-du) + src(u2)*du;

42 Bilinear Sampling Bilinearly interpolate four closest source pixels a = linear interpolation of src(u 1, v 1 ) and src(u 2, v 1 ) b = linear interpolation of src(u 1, v 2 ) and src(u 2, v 2 ) dst(x, y) = linear interpolation of a and b (u 1, v 2 ) b u1 = floor( u ), u2 = u1 + 1; v1 = floor( v ), v2 = v1 + 1; du = u u1; (u, v) (u 2, v 2 ) a = src(u1,v1)*(1-du) + src(u2,v1)*( du); b = src(u1,v2)*(1-du) + src(u2,v2)*du; (u 1, v 1 ) a (u 2, v 1 ) dv = v v1; dst(x,y) = a*(1-dv) + b*dv;

43 Bilinear Sampling Bilinearly interpolate four closest source pixels a = linear interpolation of src(u 1, v 1 ) and src(u 2, v 1 ) b = linear interpolation of src(u 1, v 2 ) and src(u 2, v 2 ) dst(x, y) = linear interpolation of a and b (u 1, v 2 ) b (u 2, v 2 ) u1 = floor( u ), u2 = u1 + 1; v1 = floor( v ), v2 = v1 + 1; Make sure to test that the pixels (u, v) (u 1, v 1 ), (u 2, v 2 ), (u 1, v 2 ), and (u 2, v 1 ) are within the image. du = u u1; a = src(u1,v1)*(1-du) + src(u2,v1)*( du); b = src(u1,v2)*(1-du) + src(u2,v2)*du; dv = v v1; dst(x,y) = a*(1-dv) + b*dv; (u 1, v 1 ) a (u 2, v 1 )

44 Gaussian Sampling Compute weighted sum of pixel neighborhood: The blending weights are the normalized values of a Gaussian function. (u, v)

45 Filtering Methods Comparison Trade-offs Jagged edges versus blurring Computation speed Nearest Bilinear Gaussian

46 Image Warping Implementation Inverse mapping: for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = Φ -1 (x,y); dst(x,y) = resample_src(u,v,w); (u, v) Φ (x, y) Source image Destination image

47 Image Warping Implementation Inverse mapping: for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = Φ -1 (x,y); dst(x,y) = resample_src(u,v,w); (u, v) w Φ (x, y) Source image Destination image

48 Example: Scale Scale( src, dst, σ ): float w?; for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = (x,y) / σ; dst(x,y) = resample_src(u,v,w); v (u, v) y w = 1 σ u Scale σ = 0.5 (x, y) x

49 Example: Rotate Rotate( src, dst, θ ): float w?; for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = ( x*cos(-θ) - y*sin(-θ), x*sin(-θ) + y*cos(-θ) ); dst(x,y) = resample_src(u,v,w); y v (u, v) (x, y) w = 1 x = u cos θ v sin θ y = u sin θ + v cos θ u Rotate θ = 30 x

50 Example: Fun Swirl( src, dst,θ ): float w?; for( int y=0 ; y<ymax ; y++ ) for( int x=0 ; x<xmax ; x++ ) float (u,v) = rot( (xc,yc),(x,y), dist((x,y)-(xc,yc))*theta); dst(x,y) = resample_src(u,v,w); v (u,v) y f (x,y) Swirl u x

51 Outline Image Processing Image Warping Image Sampling

52 Sampling Questions How should we sample an image: Nearest Point Sampling? Bilinear Sampling? Gaussian Sampling? Something Else?

53 Image Representation What is an image? An image is a discrete collection of pixels, each representing a sample of a continuous function. Continuous image Digital image

54 Sampling Let s look at a 1D example: Continuous Function Discrete Samples

55 Sampling At in-between positions, values are undefined. How do we determine the value of a sample? We need to reconstruct a continuous function, turning a collection of discrete samples into a 1D function that we can sample at arbitrary locations.? Discrete Samples

56 Nearest Point Sampling The value at a point is the value of the closest discrete sample.? Reconstructed Function Discrete Samples

57 Nearest Point Sampling The value at a point is the value of the closest discrete sample. The reconstruction: Interpolates the samples Is not continuous? Reconstructed Function Discrete Samples

58 Bilinear Sampling The value at a point is the (bi)linear interpolation of the two surrounding samples.? Reconstructed Function Discrete Samples

59 Bilinear Sampling The value at a point is the (bi)linear interpolation of the two surrounding samples. The reconstruction: Interpolates the samples Is not smooth? Reconstructed Function Discrete Samples

60 Gaussian Sampling The value at a point is the Gaussian average of the surrounding samples.? Reconstructed Function Discrete Samples

61 Gaussian Sampling The value at a point is the Gaussian average of the surrounding samples. The reconstruction: Does not interpolate Is smooth? Reconstructed Function Discrete Samples

62 Image Sampling Typically this is done in two steps: 1. Reconstruct a continuous function from input samples. 2. Sample a continuous function at a fixed resolution. (1) (2) Challenge: Reconstruction is an under-constrained problem. To make headway, we need to define what makes a reconstruction good.

63 Image Sampling Typically this is done in two steps: 1. Reconstruct a continuous function from input samples. 2. Sample a continuous function at a fixed resolution. (1) (2) Challenge: Reconstruction Key Idea: is an under-constrained problem. Of all possible reconstructions, we want the one that is smoothest To make (has headway, lowest frequencies). we need to define what makes a reconstruction good. Signal processing helps us formulate this precisely.

64 Fourier Analysis Fourier analysis provides a way for expressing (or approximating) any signal as a sum of scaled and shifted cosine functions. cos(0) cos(1) cos(2) cos(3) cos(4) cos(5) cos(6) The Building Blocks for the Fourier Decomposition

65 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 0 th Order Approximation f(θ) f 0 θ = a 0 cos 0 θ + φ 0 0 th Order Component

66 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 1 st Order Approximation f(θ) 0 th Order Approximation + f 1 θ = a 1 cos 1 θ + φ 1 1 st Order Component

67 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 2 nd Order Approximation f(θ) 1 st Order Approximation + f 2 θ = a 2 cos 2 θ + φ 2 2 nd Order Component

68 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 3 rd Order Approximation f(θ) 2 nd Order Approximation + f 3 θ = a 3 cos 3 θ + φ 3 3 rd Order Component

69 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 4 th Order Approximation f(θ) 3 rd Order Approximation + f 4 θ = a 4 cos 4 θ + φ 4 4 th Order Component

70 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 5 th Order Approximation f(θ) 4 th Order Approximation + f 5 θ = a 5 cos 5 θ + φ 5 5 th Order Component

71 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 6 th Order Approximation f(θ) 5 th Order Approximation + f 6 θ = a 6 cos 6 θ + φ 6 6 th Order Component

72 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 7 th Order Approximation f(θ) 6 th Order Approximation + f 7 θ = a 7 cos 7 θ + φ 8 7 th Order Component

73 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 8 th Order Approximation f(θ) 7 th Order Approximation + f 8 θ = a 8 cos 8 θ + φ 8 8 th Order Component

74 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 9 th Order Approximation f(θ) 8 th Order Approximation + f 9 θ = a 9 cos 9 θ + φ 9 9 th Order Component

75 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 10 th Order Approximation f(θ) 9 th Order Approximation + f 10 θ = a 10 cos 10 θ + φ th Order Component

76 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 11 th Order Approximation f(θ) 10 th Order Approximation + f 11 θ = a 11 cos 11 θ + φ th Order Component

77 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 12 th Order Approximation f(θ) 11 th Order Approximation + f 12 θ = a 12 cos 12 θ + φ th Order Component

78 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 13 th Order Approximation f(θ) 12 th Order Approximation + f 13 θ = a 13 cos 13 θ + φ th Order Component

79 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 14 th Order Approximation f(θ) 13 th Order Approximation + f 14 θ = a 14 cos 14 θ + φ th Order Component

80 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 15 th Order Approximation f(θ) 14 th Order Approximation + f 15 θ = a 15 cos 15 θ + φ th Order Component

81 Fourier Analysis As higher frequency components are added to the approximation, finer details are captured. Initial Function 16 th Order Approximation f(θ) 15 th Order Approximation + f 16 θ = a 16 cos 16 θ + φ th Order Component

82 Fourier Analysis Combining all of the frequency components together, we get the initial function: f θ = k=0 f k θ = k=0 a k cos k θ + φ k a k : amplitude of the k th frequency component φ k : shift of the k th frequency component Initial Function f(θ) f 0 () f 1 () f 2 () f 3 () f 4 () = f 5 () f 6 () f 7 () f 8 ()

83 Question As higher frequency components are added to the approximation, finer details are captured. If we have n samples, what is the highest frequency that can be represented? Initial Function f(θ) f 0 () f 1 () f 2 () f 3 () f 4 () = f 5 () f 6 () f 7 () f 8 ()

84 Question As higher frequency components are added to the approximation, finer details are captured. If we have n samples, what is the highest frequency that can be represented? Each frequency component has two degrees of freedom: Amplitude Shift f( ) With n samples we can + represent + the first + n/2 frequency + components = Initial Function f 0 () f 1 () f 2 () f 3 () f 4 () f 5 () f 6 () f 7 () f 8 ()

85 Sampling Theorem Shannon s Theorem: A signal can be reconstructed from its samples, if the original signal has no frequencies above 1/2 the sampling rate -- a.k.a. the Nyquist Frequency. Definition: A signal is band-limited if its highest non-zero frequency is bounded. The frequency is called the bandwidth. The minimum sampling rate for band-limited function is called the Nyquist rate (twice the bandwidth).

86 Image Sampling 1. To reconstruct the continuous function from m samples, we can find the unique function of frequency m/2 that interpolates the values. 2. Why don t we just evaluate this function at the n sample positions? If n < m we sample below the Nyquist rate! (1) (2) m samples n samples

87 Aliasing When a high-frequency signal is sampled with insufficiently many samples, it can be perceived as a lower-frequency signal. This masking of higher frequencies as lower ones is referred to as aliasing. -

88 Aliasing When a high-frequency signal is sampled with insufficiently many samples, it can be perceived as a lower-frequency signal. This masking of higher frequencies as lower ones is referred to as aliasing. -

89 Aliasing When a high-frequency signal is sampled with insufficiently many samples, it can be perceived as a lower-frequency signal. This masking of higher frequencies as lower ones is referred to as aliasing. -

90 Aliasing When a high-frequency signal is sampled with insufficiently many samples, it can be perceived as a lower-frequency signal. This masking of higher frequencies as lower ones is referred to as aliasing. -

91 Temporal Aliasing Artifacts due to limited temporal resolution 10 fps

92 Temporal Aliasing Artifacts due to limited temporal resolution 10 fps 25 fps

93 Temporal Aliasing Artifacts due to limited temporal resolution

94 Temporal Aliasing Artifacts due to limited temporal resolution

95 Temporal Aliasing Artifacts due to limited temporal resolution

96 Temporal Aliasing Artifacts due to limited temporal resolution

97 Sampling There are two problems: You don t have enough samples to correctly reconstruct your high-frequency information You corrupt the low-frequency information because the high-frequencies mask themselves as lower ones.

Image Filtering, Warping and Sampling

Image Filtering, Warping and Sampling Image Filtering, Warping and Sampling Connelly Barnes CS 4810 University of Virginia Acknowledgement: slides by Jason Lawrence, Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David

More information

Image Processing. Overview. Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization. Sampling and Reconstruction

Image Processing. Overview. Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization. Sampling and Reconstruction Image Processing Overview Image Representation What is an image? Halftoning and Dithering Trade spatial resolution for intensity resolution Reduce visual artifacts due to quantization Sampling and Reconstruction

More information

Sampling, Resampling, and Warping. COS 426, Spring 2014 Tom Funkhouser

Sampling, Resampling, and Warping. COS 426, Spring 2014 Tom Funkhouser Sampling, Resampling, and Warping COS 426, Spring 2014 Tom Funkhouser Image Processing Goal: read an image, process it, write the result input.jpg output.jpg imgpro input.jpg output.jpg histogram_equalization

More information

Sampling: Application to 2D Transformations

Sampling: Application to 2D Transformations Sampling: Application to 2D Transformations University of the Philippines - Diliman August Diane Lingrand lingrand@polytech.unice.fr http://www.essi.fr/~lingrand Sampling Computer images are manipulated

More information

Outline. Sampling and Reconstruction. Sampling and Reconstruction. Foundations of Computer Graphics (Fall 2012)

Outline. Sampling and Reconstruction. Sampling and Reconstruction. Foundations of Computer Graphics (Fall 2012) Foundations of Computer Graphics (Fall 2012) CS 184, Lectures 19: Sampling and Reconstruction http://inst.eecs.berkeley.edu/~cs184 Outline Basic ideas of sampling, reconstruction, aliasing Signal processing

More information

Computer Graphics. Texture Filtering & Sampling Theory. Hendrik Lensch. Computer Graphics WS07/08 Texturing

Computer Graphics. Texture Filtering & Sampling Theory. Hendrik Lensch. Computer Graphics WS07/08 Texturing Computer Graphics Texture Filtering & Sampling Theory Hendrik Lensch Overview Last time Texture Parameterization Procedural Shading Today Texturing Filtering 2D Texture Mapping Forward mapping Object surface

More information

Basics. Sampling and Reconstruction. Sampling and Reconstruction. Outline. (Spatial) Aliasing. Advanced Computer Graphics (Fall 2010)

Basics. Sampling and Reconstruction. Sampling and Reconstruction. Outline. (Spatial) Aliasing. Advanced Computer Graphics (Fall 2010) Advanced Computer Graphics (Fall 2010) CS 283, Lecture 3: Sampling and Reconstruction Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs283/fa10 Some slides courtesy Thomas Funkhouser and Pat Hanrahan

More information

Aliasing. Can t draw smooth lines on discrete raster device get staircased lines ( jaggies ):

Aliasing. Can t draw smooth lines on discrete raster device get staircased lines ( jaggies ): (Anti)Aliasing and Image Manipulation for (y = 0; y < Size; y++) { for (x = 0; x < Size; x++) { Image[x][y] = 7 + 8 * sin((sqr(x Size) + SQR(y Size)) / 3.0); } } // Size = Size / ; Aliasing Can t draw

More information

Outline. Foundations of Computer Graphics (Spring 2012)

Outline. Foundations of Computer Graphics (Spring 2012) Foundations of Computer Graphics (Spring 2012) CS 184, Lectures 19: Sampling and Reconstruction http://inst.eecs.berkeley.edu/~cs184 Basic ideas of sampling, reconstruction, aliasing Signal processing

More information

The main goal of Computer Graphics is to generate 2D images 2D images are continuous 2D functions (or signals)

The main goal of Computer Graphics is to generate 2D images 2D images are continuous 2D functions (or signals) Motivation The main goal of Computer Graphics is to generate 2D images 2D images are continuous 2D functions (or signals) monochrome f(x,y) or color r(x,y), g(x,y), b(x,y) These functions are represented

More information

Theoretically Perfect Sensor

Theoretically Perfect Sensor Sampling 1/67 Sampling The ray tracer samples the geometry, only gathering information from the parts of the world that interact with a finite number of rays In contrast, a scanline renderer can push all

More information

Theoretically Perfect Sensor

Theoretically Perfect Sensor Sampling 1/60 Sampling The ray tracer samples the geometry, only gathering information from the parts of the world that interact with a finite number of rays In contrast, a scanline renderer can push all

More information

Announcements. Image Matching! Source & Destination Images. Image Transformation 2/ 3/ 16. Compare a big image to a small image

Announcements. Image Matching! Source & Destination Images. Image Transformation 2/ 3/ 16. Compare a big image to a small image 2/3/ Announcements PA is due in week Image atching! Leave time to learn OpenCV Think of & implement something creative CS 50 Lecture #5 February 3 rd, 20 2/ 3/ 2 Compare a big image to a small image So

More information

To Do. Advanced Computer Graphics. Discrete Convolution. Outline. Outline. Implementing Discrete Convolution

To Do. Advanced Computer Graphics. Discrete Convolution. Outline. Outline. Implementing Discrete Convolution Advanced Computer Graphics CSE 163 [Spring 2018], Lecture 4 Ravi Ramamoorthi http://www.cs.ucsd.edu/~ravir To Do Assignment 1, Due Apr 27. Please START EARLY This lecture completes all the material you

More information

Motivation. The main goal of Computer Graphics is to generate 2D images. 2D images are continuous 2D functions (or signals)

Motivation. The main goal of Computer Graphics is to generate 2D images. 2D images are continuous 2D functions (or signals) Motivation The main goal of Computer Graphics is to generate 2D images 2D images are continuous 2D functions (or signals) monochrome f(x,y) or color r(x,y), g(x,y), b(x,y) These functions are represented

More information

CS 335 Graphics and Multimedia. Geometric Warping

CS 335 Graphics and Multimedia. Geometric Warping CS 335 Graphics and Multimedia Geometric Warping Geometric Image Operations Eample transformations Straightforward methods and their problems The affine transformation Transformation algorithms: Forward

More information

Sampling, Aliasing, & Mipmaps

Sampling, Aliasing, & Mipmaps Last Time? Sampling, Aliasing, & Mipmaps 2D Texture Mapping Perspective Correct Interpolation Common Texture Coordinate Projections Bump Mapping Displacement Mapping Environment Mapping Texture Maps for

More information

Sampling and Reconstruction

Sampling and Reconstruction Sampling and Reconstruction Sampling and Reconstruction Sampling and Spatial Resolution Spatial Aliasing Problem: Spatial aliasing is insufficient sampling of data along the space axis, which occurs because

More information

Sampling, Aliasing, & Mipmaps

Sampling, Aliasing, & Mipmaps Sampling, Aliasing, & Mipmaps Last Time? Monte-Carlo Integration Importance Sampling Ray Tracing vs. Path Tracing source hemisphere What is a Pixel? Sampling & Reconstruction Filters in Computer Graphics

More information

The simplest and most obvious method to go from a continuous to a discrete image is by point sampling,

The simplest and most obvious method to go from a continuous to a discrete image is by point sampling, Sampling our scenes are described with triangles giving a continuous 2d color field our images are digital/discrete made up of a grid of dots need to make a bridge between these two worlds else we will

More information

Sampling, Aliasing, & Mipmaps

Sampling, Aliasing, & Mipmaps Sampling, Aliasing, & Mipmaps Last Time? Monte-Carlo Integration Importance Sampling Ray Tracing vs. Path Tracing source hemisphere Sampling sensitive to choice of samples less sensitive to choice of samples

More information

Advanced Computer Graphics. Aliasing. Matthias Teschner. Computer Science Department University of Freiburg

Advanced Computer Graphics. Aliasing. Matthias Teschner. Computer Science Department University of Freiburg Advanced Computer Graphics Aliasing Matthias Teschner Computer Science Department University of Freiburg Outline motivation Fourier analysis filtering sampling reconstruction / aliasing antialiasing University

More information

Biomedical Image Analysis. Spatial Filtering

Biomedical Image Analysis. Spatial Filtering Biomedical Image Analysis Contents: Spatial Filtering The mechanics of Spatial Filtering Smoothing and sharpening filters BMIA 15 V. Roth & P. Cattin 1 The Mechanics of Spatial Filtering Spatial filter:

More information

EE795: Computer Vision and Intelligent Systems

EE795: Computer Vision and Intelligent Systems EE795: Computer Vision and Intelligent Systems Spring 2012 TTh 17:30-18:45 WRI C225 Lecture 04 130131 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Review Histogram Equalization Image Filtering Linear

More information

convolution shift invariant linear system Fourier Transform Aliasing and sampling scale representation edge detection corner detection

convolution shift invariant linear system Fourier Transform Aliasing and sampling scale representation edge detection corner detection COS 429: COMPUTER VISON Linear Filters and Edge Detection convolution shift invariant linear system Fourier Transform Aliasing and sampling scale representation edge detection corner detection Reading:

More information

To Do. Advanced Computer Graphics. Sampling and Reconstruction. Outline. Sign up for Piazza

To Do. Advanced Computer Graphics. Sampling and Reconstruction. Outline. Sign up for Piazza Advanced Computer Graphics CSE 63 [Spring 207], Lecture 3 Ravi Ramamoorthi http://www.cs.ucsd.edu/~ravir Sign up for Piazza To Do Assignment, Due Apr 28. Anyone need help finding partners? Any issues with

More information

Lecture 4: Spatial Domain Transformations

Lecture 4: Spatial Domain Transformations # Lecture 4: Spatial Domain Transformations Saad J Bedros sbedros@umn.edu Reminder 2 nd Quiz on the manipulator Part is this Fri, April 7 205, :5 AM to :0 PM Open Book, Open Notes, Focus on the material

More information

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi Image Stitching Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi Combine two or more overlapping images to make one larger image Add example Slide credit: Vaibhav Vaish

More information

CPSC 4040/6040 Computer Graphics Images. Joshua Levine

CPSC 4040/6040 Computer Graphics Images. Joshua Levine CPSC 4040/6040 Computer Graphics Images Joshua Levine levinej@clemson.edu Lecture 19 Projective Warping and Bilinear Warping Nov. 3, 2015 Agenda EC Quiz Review PA06 out Refresher from Lec18 https://en.wikipedia.org/wiki/affine_transformation

More information

Geometric Image Transformations and Related Topics

Geometric Image Transformations and Related Topics Geometric Image Transformations and Related Topics 9 th Lesson on Image Processing Martina Mudrová 2004 Topics What will be the topic of the following lesson? Geometric image transformations Interpolation

More information

Digital Image Processing

Digital Image Processing Digital Image Processing Image Restoration and Reconstruction (Image Reconstruction from Projections) Christophoros Nikou cnikou@cs.uoi.gr University of Ioannina - Department of Computer Science and Engineering

More information

Image Processing and Analysis

Image Processing and Analysis Image Processing and Analysis 3 stages: Image Restoration - correcting errors and distortion. Warping and correcting systematic distortion related to viewing geometry Correcting "drop outs", striping and

More information

Trigonometry I -- Answers -- Trigonometry I Diploma Practice Exam - ANSWERS 1

Trigonometry I -- Answers -- Trigonometry I Diploma Practice Exam - ANSWERS 1 Trigonometry I -- Answers -- Trigonometry I Diploma Practice Exam - ANSWERS www.puremath.com Formulas These are the formulas for Trig I you will be given on your diploma. a rθ sinθ cosθ tan θ cotθ cosθ

More information

Lecture 2: 2D Fourier transforms and applications

Lecture 2: 2D Fourier transforms and applications Lecture 2: 2D Fourier transforms and applications B14 Image Analysis Michaelmas 2017 Dr. M. Fallon Fourier transforms and spatial frequencies in 2D Definition and meaning The Convolution Theorem Applications

More information

Warping. 12 May 2015

Warping. 12 May 2015 Warping 12 May 2015 Warping, morphing, mosaic Slides from Durand and Freeman (MIT), Efros (CMU, Berkeley), Szeliski (MSR), Seitz (UW), Lowe (UBC) http://szeliski.org/book/ 2 Image Warping Image filtering:

More information

Michael Moody School of Pharmacy University of London 29/39 Brunswick Square London WC1N 1AX, U.K.

Michael Moody School of Pharmacy University of London 29/39 Brunswick Square London WC1N 1AX, U.K. This material is provided for educational use only. The information in these slides including all data, images and related materials are the property of : Michael Moody School of Pharmacy University of

More information

Ulrik Söderström 17 Jan Image Processing. Introduction

Ulrik Söderström 17 Jan Image Processing. Introduction Ulrik Söderström ulrik.soderstrom@tfe.umu.se 17 Jan 2017 Image Processing Introduction Image Processsing Typical goals: Improve images for human interpretation Image processing Processing of images for

More information

Broad field that includes low-level operations as well as complex high-level algorithms

Broad field that includes low-level operations as well as complex high-level algorithms Image processing About Broad field that includes low-level operations as well as complex high-level algorithms Low-level image processing Computer vision Computational photography Several procedures and

More information

CoE4TN3 Medical Image Processing

CoE4TN3 Medical Image Processing CoE4TN3 Medical Image Processing Image Restoration Noise Image sensor might produce noise because of environmental conditions or quality of sensing elements. Interference in the image transmission channel.

More information

Aliasing and Antialiasing. ITCS 4120/ Aliasing and Antialiasing

Aliasing and Antialiasing. ITCS 4120/ Aliasing and Antialiasing Aliasing and Antialiasing ITCS 4120/5120 1 Aliasing and Antialiasing What is Aliasing? Errors and Artifacts arising during rendering, due to the conversion from a continuously defined illumination field

More information

Course Evaluations. h"p:// 4 Random Individuals will win an ATI Radeon tm HD2900XT

Course Evaluations. hp://  4 Random Individuals will win an ATI Radeon tm HD2900XT Course Evaluations h"p://www.siggraph.org/courses_evalua4on 4 Random Individuals will win an ATI Radeon tm HD2900XT A Gentle Introduction to Bilateral Filtering and its Applications From Gaussian blur

More information

Fourier transform of images

Fourier transform of images Fourier transform of images Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Methods for Image Processing academic year 2014 2015 Extension to bidimensional domain The concepts

More information

Texture Segmentation Using Multichannel Gabor Filtering

Texture Segmentation Using Multichannel Gabor Filtering IOSR Journal of Electronics and Communication Engineering (IOSRJECE) ISSN : 2278-2834 Volume 2, Issue 6 (Sep-Oct 2012), PP 22-26 Texture Segmentation Using Multichannel Gabor Filtering M. Sivalingamaiah

More information

Problem 1 (10 Points)

Problem 1 (10 Points) Problem 1 (10 Points) Please explain the following phenomena. The three images shown are the blurred versions of image (a) (Note: vertical bars have width of 5 and height of 100, they are spaced 20 pixels

More information

Computer Vision and Graphics (ee2031) Digital Image Processing I

Computer Vision and Graphics (ee2031) Digital Image Processing I Computer Vision and Graphics (ee203) Digital Image Processing I Dr John Collomosse J.Collomosse@surrey.ac.uk Centre for Vision, Speech and Signal Processing University of Surrey Learning Outcomes After

More information

Computer Graphics. Attributes of Graphics Primitives. Somsak Walairacht, Computer Engineering, KMITL 1

Computer Graphics. Attributes of Graphics Primitives. Somsak Walairacht, Computer Engineering, KMITL 1 Computer Graphics Chapter 4 Attributes of Graphics Primitives Somsak Walairacht, Computer Engineering, KMITL 1 Outline OpenGL State Variables Point Attributes t Line Attributes Fill-Area Attributes Scan-Line

More information

Frequency analysis, pyramids, texture analysis, applications (face detection, category recognition)

Frequency analysis, pyramids, texture analysis, applications (face detection, category recognition) Frequency analysis, pyramids, texture analysis, applications (face detection, category recognition) Outline Measuring frequencies in images: Definitions, properties Sampling issues Relation with Gaussian

More information

Computer Vision: 4. Filtering. By I-Chen Lin Dept. of CS, National Chiao Tung University

Computer Vision: 4. Filtering. By I-Chen Lin Dept. of CS, National Chiao Tung University Computer Vision: 4. Filtering By I-Chen Lin Dept. of CS, National Chiao Tung University Outline Impulse response and convolution. Linear filter and image pyramid. Textbook: David A. Forsyth and Jean Ponce,

More information

Drawing a Triangle (and an introduction to sampling)

Drawing a Triangle (and an introduction to sampling) Lecture 4: Drawing a Triangle (and an introduction to sampling) Computer Graphics CMU 15-462/15-662, Spring 2017 Assignment 1 is out! https://15462-s17.github.io/asst1_drawsvg/ Let s draw some triangles

More information

Image preprocessing in spatial domain

Image preprocessing in spatial domain Image preprocessing in spatial domain Sampling theorem, aliasing, interpolation, geometrical transformations Revision:.4, dated: May 25, 26 Tomáš Svoboda Czech Technical University, Faculty of Electrical

More information

Fourier analysis and sampling theory

Fourier analysis and sampling theory Reading Required: Shirley, Ch. 9 Recommended: Fourier analysis and sampling theory Ron Bracewell, The Fourier Transform and Its Applications, McGraw-Hill. Don P. Mitchell and Arun N. Netravali, Reconstruction

More information

Image preprocessing in spatial domain

Image preprocessing in spatial domain Image preprocessing in spatial domain Sampling theorem, aliasing, interpolation, geometrical transformations Revision:.3, dated: December 7, 25 Tomáš Svoboda Czech Technical University, Faculty of Electrical

More information

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into

2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into 2D rendering takes a photo of the 2D scene with a virtual camera that selects an axis aligned rectangle from the scene. The photograph is placed into the viewport of the current application window. A pixel

More information

Image Morphing. Michael Kazhdan ( /657) HB Ch Feature Based Image Metamorphosis, Beier and Neely 1992

Image Morphing. Michael Kazhdan ( /657) HB Ch Feature Based Image Metamorphosis, Beier and Neely 1992 Image Morphing Michael Kazhdan (601.457/657) HB Ch. 16.5 Feature Based Image Metamorphosis, Beier and Neely 1992 Image Morphing Animate transition between two images H&B Figure 16.9 Image Morphing Animate

More information

Lecture 5: Frequency Domain Transformations

Lecture 5: Frequency Domain Transformations #1 Lecture 5: Frequency Domain Transformations Saad J Bedros sbedros@umn.edu From Last Lecture Spatial Domain Transformation Point Processing for Enhancement Area/Mask Processing Transformations Image

More information

Image Warping, Compositing & Morphing

Image Warping, Compositing & Morphing Image Processing Image Warping, Compositing & Morphing Adam Finkelstein Princeton Uniersit COS 426, Spring 2005 Image Processing Qantization Uniform Qantization Random dither Ordered dither Flod-Steinberg

More information

Edges, interpolation, templates. Nuno Vasconcelos ECE Department, UCSD (with thanks to David Forsyth)

Edges, interpolation, templates. Nuno Vasconcelos ECE Department, UCSD (with thanks to David Forsyth) Edges, interpolation, templates Nuno Vasconcelos ECE Department, UCSD (with thanks to David Forsyth) Edge detection edge detection has many applications in image processing an edge detector implements

More information

Matching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar.

Matching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar. Matching Compare region of image to region of image. We talked about this for stereo. Important for motion. Epipolar constraint unknown. But motion small. Recognition Find object in image. Recognize object.

More information

CS4670: Computer Vision

CS4670: Computer Vision CS4670: Computer Vision Noah Snavely Lecture 9: Image alignment http://www.wired.com/gadgetlab/2010/07/camera-software-lets-you-see-into-the-past/ Szeliski: Chapter 6.1 Reading All 2D Linear Transformations

More information

Sampling and Monte-Carlo Integration

Sampling and Monte-Carlo Integration Sampling and Monte-Carlo Integration Sampling and Monte-Carlo Integration Last Time Pixels are samples Sampling theorem Convolution & multiplication Aliasing: spectrum replication Ideal filter And its

More information

ECG782: Multidimensional Digital Signal Processing

ECG782: Multidimensional Digital Signal Processing Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu ECG782: Multidimensional Digital Signal Processing Spring 2014 TTh 14:30-15:45 CBC C313 Lecture 03 Image Processing Basics 13/01/28 http://www.ee.unlv.edu/~b1morris/ecg782/

More information

Watershed Sciences 4930 & 6920 GEOGRAPHIC INFORMATION SYSTEMS

Watershed Sciences 4930 & 6920 GEOGRAPHIC INFORMATION SYSTEMS HOUSEKEEPING Watershed Sciences 4930 & 6920 GEOGRAPHIC INFORMATION SYSTEMS CONTOURS! Self-Paced Lab Due Friday! WEEK SIX Lecture RASTER ANALYSES Joe Wheaton YOUR EXCERCISE Integer Elevations Rounded up

More information

Image Sampling and Quantisation

Image Sampling and Quantisation Image Sampling and Quantisation Introduction to Signal and Image Processing Prof. Dr. Philippe Cattin MIAC, University of Basel 1 of 46 22.02.2016 09:17 Contents Contents 1 Motivation 2 Sampling Introduction

More information

Final Review. Image Processing CSE 166 Lecture 18

Final Review. Image Processing CSE 166 Lecture 18 Final Review Image Processing CSE 166 Lecture 18 Topics covered Basis vectors Matrix based transforms Wavelet transform Image compression Image watermarking Morphological image processing Segmentation

More information

Image Sampling & Quantisation

Image Sampling & Quantisation Image Sampling & Quantisation Biomedical Image Analysis Prof. Dr. Philippe Cattin MIAC, University of Basel Contents 1 Motivation 2 Sampling Introduction and Motivation Sampling Example Quantisation Example

More information

Point-Based Rendering

Point-Based Rendering Point-Based Rendering Kobbelt & Botsch, Computers & Graphics 2004 Surface Splatting (EWA: Elliptic Weighted Averaging) Main Idea Signal Processing Basics Resampling Gaussian Filters Reconstruction Kernels

More information

ECG782: Multidimensional Digital Signal Processing

ECG782: Multidimensional Digital Signal Processing Professor Brendan Morris, SEB 3216, brendan.morris@unlv.edu ECG782: Multidimensional Digital Signal Processing Spatial Domain Filtering http://www.ee.unlv.edu/~b1morris/ecg782/ 2 Outline Background Intensity

More information

Image warping/morphing

Image warping/morphing Image warping/morphing Digital Visual Effects, Spring 2007 Yung-Yu Chuang 2007/3/20 with slides b Richard Szeliski, Steve Seitz, Tom Funkhouser and Aleei Efros Image warping Image formation B A Sampling

More information

Outline. Visualization Discretization Sampling Quantization Representation Continuous Discrete. Noise

Outline. Visualization Discretization Sampling Quantization Representation Continuous Discrete. Noise Fundamentals Data Outline Visualization Discretization Sampling Quantization Representation Continuous Discrete Noise 2 Data Data : Function dependent on one or more variables. Example Audio (1D) - depends

More information

Image warping/morphing

Image warping/morphing Image warping/morphing Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz, Tom Funkhouser and Alexei Efros Image warping Image formation B A Sampling and quantization What

More information

CS1114 Assignment 5, Part 1

CS1114 Assignment 5, Part 1 CS4 Assignment 5, Part out: Friday, March 27, 2009. due: Friday, April 3, 2009, 5PM. This assignment covers three topics in two parts: interpolation and image transformations (Part ), and feature-based

More information

Digital Image Processing. Prof. P. K. Biswas. Department of Electronic & Electrical Communication Engineering

Digital Image Processing. Prof. P. K. Biswas. Department of Electronic & Electrical Communication Engineering Digital Image Processing Prof. P. K. Biswas Department of Electronic & Electrical Communication Engineering Indian Institute of Technology, Kharagpur Lecture - 21 Image Enhancement Frequency Domain Processing

More information

Computer Graphics. Chapter 4 Attributes of Graphics Primitives. Somsak Walairacht, Computer Engineering, KMITL 1

Computer Graphics. Chapter 4 Attributes of Graphics Primitives. Somsak Walairacht, Computer Engineering, KMITL 1 Computer Graphics Chapter 4 Attributes of Graphics Primitives Somsak Walairacht, Computer Engineering, KMITL 1 Outline OpenGL State Variables Point Attributes Line Attributes Fill-Area Attributes Scan-Line

More information

Review for Exam I, EE552 2/2009

Review for Exam I, EE552 2/2009 Gonale & Woods Review or Eam I, EE55 /009 Elements o Visual Perception Image Formation in the Ee and relation to a photographic camera). Brightness Adaption and Discrimination. Light and the Electromagnetic

More information

Anno accademico 2006/2007. Davide Migliore

Anno accademico 2006/2007. Davide Migliore Robotica Anno accademico 6/7 Davide Migliore migliore@elet.polimi.it Today What is a feature? Some useful information The world of features: Detectors Edges detection Corners/Points detection Descriptors?!?!?

More information

Filtering Images in the Spatial Domain Chapter 3b G&W. Ross Whitaker (modified by Guido Gerig) School of Computing University of Utah

Filtering Images in the Spatial Domain Chapter 3b G&W. Ross Whitaker (modified by Guido Gerig) School of Computing University of Utah Filtering Images in the Spatial Domain Chapter 3b G&W Ross Whitaker (modified by Guido Gerig) School of Computing University of Utah 1 Overview Correlation and convolution Linear filtering Smoothing, kernels,

More information

Automatic Image Alignment

Automatic Image Alignment Automatic Image Alignment with a lot of slides stolen from Steve Seitz and Rick Szeliski Mike Nese CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2018 Live Homography

More information

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is.

Interactive Computer Graphics. Warping and morphing. Warping and Morphing. Warping and Morphing. Lecture 14+15: Warping and Morphing. What is. Interactive Computer Graphics Warping and morphing Lecture 14+15: Warping and Morphing Lecture 14: Warping and Morphing: Slide 1 Lecture 14: Warping and Morphing: Slide 2 Warping and Morphing What is Warping

More information

Texture. Outline. Image representations: spatial and frequency Fourier transform Frequency filtering Oriented pyramids Texture representation

Texture. Outline. Image representations: spatial and frequency Fourier transform Frequency filtering Oriented pyramids Texture representation Texture Outline Image representations: spatial and frequency Fourier transform Frequency filtering Oriented pyramids Texture representation 1 Image Representation The standard basis for images is the set

More information

CS559: Computer Graphics. Lecture 6: Painterly Rendering and Edges Li Zhang Spring 2008

CS559: Computer Graphics. Lecture 6: Painterly Rendering and Edges Li Zhang Spring 2008 CS559: Computer Graphics Lecture 6: Painterly Rendering and Edges Li Zhang Spring 2008 So far Image formation: eyes and cameras Image sampling and reconstruction Image resampling and filtering Today Painterly

More information

Simulation and Analysis of Interpolation Techniques for Image and Video Transcoding

Simulation and Analysis of Interpolation Techniques for Image and Video Transcoding Multimedia Communication CMPE-584 Simulation and Analysis of Interpolation Techniques for Image and Video Transcoding Mid Report Asmar Azar Khan 2005-06-0003 Objective: The objective of the project is

More information

Reading. 2. Fourier analysis and sampling theory. Required: Watt, Section 14.1 Recommended:

Reading. 2. Fourier analysis and sampling theory. Required: Watt, Section 14.1 Recommended: Reading Required: Watt, Section 14.1 Recommended: 2. Fourier analysis and sampling theory Ron Bracewell, The Fourier Transform and Its Applications, McGraw-Hill. Don P. Mitchell and Arun N. Netravali,

More information

EECS490: Digital Image Processing. Lecture #16

EECS490: Digital Image Processing. Lecture #16 Lecture #16 Wiener Filters Constrained Least Squares Filter Computed Tomography Basics Reconstruction and the Radon Transform Fourier Slice Theorem Filtered Backprojections Fan Beams Motion Blurring Model

More information

CPSC 425: Computer Vision

CPSC 425: Computer Vision CPSC 425: Computer Vision Image Credit: https://docs.adaptive-vision.com/4.7/studio/machine_vision_guide/templatematching.html Lecture 9: Template Matching (cont.) and Scaled Representations ( unless otherwise

More information

x' = c 1 x + c 2 y + c 3 xy + c 4 y' = c 5 x + c 6 y + c 7 xy + c 8

x' = c 1 x + c 2 y + c 3 xy + c 4 y' = c 5 x + c 6 y + c 7 xy + c 8 1. Explain about gray level interpolation. The distortion correction equations yield non integer values for x' and y'. Because the distorted image g is digital, its pixel values are defined only at integer

More information

Data Visualization. Fall 2017

Data Visualization. Fall 2017 Data Visualization Fall 2017 Scattered Point Interpolation Sometimes, we have no explicit cell information connecting the sample points with a tiling of some domain A scattered (e.g. 3D) point sets point

More information

Image warping introduction

Image warping introduction Image warping introduction 1997-2015 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Warping 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 22 Warping.. image

More information

Capturing, Modeling, Rendering 3D Structures

Capturing, Modeling, Rendering 3D Structures Computer Vision Approach Capturing, Modeling, Rendering 3D Structures Calculate pixel correspondences and extract geometry Not robust Difficult to acquire illumination effects, e.g. specular highlights

More information

Computer Vision. Fourier Transform. 20 January Copyright by NHL Hogeschool and Van de Loosdrecht Machine Vision BV All rights reserved

Computer Vision. Fourier Transform. 20 January Copyright by NHL Hogeschool and Van de Loosdrecht Machine Vision BV All rights reserved Van de Loosdrecht Machine Vision Computer Vision Fourier Transform 20 January 2017 Copyright 2001 2017 by NHL Hogeschool and Van de Loosdrecht Machine Vision BV All rights reserved j.van.de.loosdrecht@nhl.nl,

More information

Scan line algorithm. Jacobs University Visualization and Computer Graphics Lab : Graphics and Visualization 272

Scan line algorithm. Jacobs University Visualization and Computer Graphics Lab : Graphics and Visualization 272 Scan line algorithm The scan line algorithm is an alternative to the seed fill algorithm. It does not require scan conversion of the edges before filling the polygons It can be applied simultaneously to

More information

Computer Vision I. Announcements. Fourier Tansform. Efficient Implementation. Edge and Corner Detection. CSE252A Lecture 13.

Computer Vision I. Announcements. Fourier Tansform. Efficient Implementation. Edge and Corner Detection. CSE252A Lecture 13. Announcements Edge and Corner Detection HW3 assigned CSE252A Lecture 13 Efficient Implementation Both, the Box filter and the Gaussian filter are separable: First convolve each row of input image I with

More information

3D Rendering and Ray Casting

3D Rendering and Ray Casting 3D Rendering and Ray Casting Michael Kazhdan (601.457/657) HB Ch. 13.7, 14.6 FvDFH 15.5, 15.10 Rendering Generate an image from geometric primitives Rendering Geometric Primitives (3D) Raster Image (2D)

More information

INFOGR Computer Graphics. Jacco Bikker - April-July Lecture 3: Ray Tracing (Introduction) Welcome!

INFOGR Computer Graphics. Jacco Bikker - April-July Lecture 3: Ray Tracing (Introduction) Welcome! INFOGR Computer Graphics Jacco Bikker - April-July 2016 - Lecture 3: Ray Tracing (Introduction) Welcome! Today s Agenda: Primitives (contd.) Ray Tracing Intersections Assignment 2 Textures INFOGR Lecture

More information

Attributes of Graphics Primitives

Attributes of Graphics Primitives ttributes for Graphics Output Primitives ttributes of Graphics Primitives in 2 points, lines polygons, circles, ellipses & other curves (also filled) characters in 3 triangles & other polygons anti-aliasing

More information

Computer Graphics Geometry and Transform

Computer Graphics Geometry and Transform ! Computer Graphics 2014! 5. Geometry and Transform Hongxin Zhang State Key Lab of CAD&CG, Zhejiang University 2014-10-11! Today outline Triangle rasterization Basic vector algebra ~ geometry! Antialiasing

More information

Image Registration Lecture 4: First Examples

Image Registration Lecture 4: First Examples Image Registration Lecture 4: First Examples Prof. Charlene Tsai Outline Example Intensity-based registration SSD error function Image mapping Function minimization: Gradient descent Derivative calculation

More information

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014 SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014 SIFT SIFT: Scale Invariant Feature Transform; transform image

More information

CS1114: Study Guide 2

CS1114: Study Guide 2 CS4: Study Guide 2 This document covers the topics we ve covered in the second part of the course. Please refer to the class slides for more details. Polygons and convex hulls A polygon is a set of 2D

More information

ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing" Larry Matthies"

ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing Larry Matthies ME/CS 132: Introduction to Vision-based Robot Navigation! Low-level Image Processing" Larry Matthies" lhm@jpl.nasa.gov, 818-354-3722" Announcements" First homework grading is done! Second homework is due

More information

Chapter 18. Geometric Operations

Chapter 18. Geometric Operations Chapter 18 Geometric Operations To this point, the image processing operations have computed the gray value (digital count) of the output image pixel based on the gray values of one or more input pixels;

More information