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

Size: px
Start display at page:

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

Transcription

1 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 Key steps in image processing Avoid visual artifacts due to aliasing 1

2 What is an Image? An image is a 2D rectilinear array of pixels Continuous image Digital image What is an Image? An image is a 2D rectilinear array of pixels Continuous image Digital image 2

3 What is an Image? An image is a 2D rectilinear array of pixels Continuous image Digital image A pixel is a sample, not a little square!! Image Acquisition Pixels are samples from continuous function Photoreceptors in eye CCD cells in digital camera Rays in virtual camera 3

4 Image Display Re-create continuous function from samples Example: cathode ray tube Image is reconstructed by displaying pixels with finite area (Gaussian) Image Resolution Intensity resolution Each pixel has only Depth bits for colors/intensities Spatial resolution Image has only Width x Height pixels Temporal resolution Monitor refreshes images at only Rate Hz 4

5 Sources of Error Intensity quantization Not enough intensity resolution Spatial aliasing Not enough spatial resolution Temporal aliasing Not enough temporal resolution E 2 = ( x, y ) ( I( x, y) P( x, y) ) 2 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 Key steps in image processing Avoid visual artifacts due to aliasing 5

6 Quantization Artifact due to limited intensity resolution Frame buffers have limited number of bits per pixel Physical devices have limited dynamic range Blue channel Green channel Red channel Uniform Quantization P ( x, y) = trunc( I ( x, y) + 0.5) I(x, y) P(x, y) 2 bits per pixel 6

7 Uniform Quantization Image with decreasing bits per pixel: 8 bits 4 bits 2 bits 1 bit Notice contouring Reducing Effects of Quantization Halftoning Classical halftoning Dithering Random dither Ordered dither Error diffusion dither 7

8 Classical Halftoning Use dots of varying size to representation intensities Area of dots proportional to intensity in image I(x, y) P(x, y) Classical Halftoning Newspaper image From New York Times 9/21/99 8

9 Halftone Patterns Use cluster of pixels to represent intensity Trade spatial resolution for intensity resolution Halftone Patterns How many intensities in a n x n cluster? 9

10 Dithering Distribute errors among pixels Exploit spatial integration in our eye Display greater range of perceptible intensities Original (8 bits) Uniform Quantization (1 bit) Floyd-Steinberg Dither (1 bit) Random Dither Randomize quantization errors Errors appear as noise P ( x, y) = trunc( I ( x, y) + noise( x, y) + 0.5) 10

11 Random Dither Original (8 bits) Uniform Quantization (1 bit) Random Dither (1 bit) Ordered Dither Pseudo-random quantization errors Matrix stores pattern of thresholds j = x mod n i = y mod n e = I(x, y) trunc(i(x, y)) if( e > D(i, j) ) P(x, y) = ceil(i(x, y)) else P(x, y) = floor(i(x, y)) D 2 3 =

12 Ordered Dither Original (8 bits) Uniform Quantization (1 bit) Ordered Dither (1 bit) Error Diffusion Dither Spread quantization error over neighbor pixels Error dispersed to pixels right and below α β γ δ α + β + γ + δ =

13 Error Diffusion Dither Original (8 bits) Random Dither (1 bit) Ordered Dither (1 bit) Floyd-Steinberg Dither (1 bit) 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 Key steps in image processing Avoid visual artifacts due to aliasing 13

14 Sampling and Reconstruction Sampling Reconstruction Sampling and Reconstruction 14

15 Aliasing In general: Artifacts due to under-sampling or poor reconstruction Specifically, in graphics: Spatial aliasing Temporal aliasing Under-sampling Spatial Aliasing Artifacts due to limited spatial resolution 15

16 Spatial Aliasing Artifacts due to limited spatial resolution Jaggies Temporal Aliasing Artifacts due to Limited Temporal Resolution Strobing Flickering 16

17 Temporal Aliasing Artifacts due to Limited Temporal Resolution Strobing Flickering Temporal Aliasing Artifacts due to Limited Temporal Resolution Strobing Flickering 17

18 Temporal Aliasing Artifacts due to Limited Temporal Resolution Strobing Flickering Antialiasing Sample at higher rate Not always possible Doesn t always solve problem Pre-filter to form bandlimited signal Form bandlimited function (low-pass filter) Trades aliasing for blurring Must consider sampling theory! 18

19 Sampling Theory How many samples are required to represent a given signal without loss of information? What signals can be reconstructed without loss for a given sampling rate? Sampling Theorem A signal can be reconstructed from its samples, if the original signal has no frequencies above ½ the sampling frequency Shannon The minimum sampling rate for bandlimited function is called Nyquist rate A signal is bandlimited if its highest frequency is bounded. The frequency is called the bandwidth. 19

20 Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite 20

21 Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite Adjusting Brightness Simply scale pixel components Must clamp to range (e.g., 0 to 255) Original Brighter 21

22 Adjusting Contrast Compute mean luminance L for all pixels Luminance = 0.30*r *g *b Scale deviation from L for each pixel component Must clamp to range (e.g. 0 to 255) L Original More contrast Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite 22

23 Adjusting Blurriness Convolve with a filter whose entries sum to one Each pixel becomes a weighted average of its neighbors Original Blur 1 16 Filter = Edge Detection Convolve with a filter that finds differences between neighbor pixels Original Edge Detection 1 Filter =

24 Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite Image Warping Move pixels of image Mapping Resampling Warp Source Image Destination Image 24

25 Overview Mapping Forward Reverse Resampling Point sampling Triangle filter Gaussian filter Mapping Define transformation Describe the destination (x, y) for every location (u, v) in the source (or vice-versa, if invertible) v y u x 25

26 Example Mappings Scale by factor : x = factor * u y = factor * v v y Scale 0.8 u x Example Mappings Rotate by θ degrees: x = u cos θ v sin θ y = u sin θ + v cos θ y v Rotate 30 u x 26

27 Example Mappings Shear in X by factor : x = u + factor * v y = v v Shear X 1.3 y Shear in Y by factor : x = u y = v + factor * u v u y Shear Y 1.3 x u x Other Mappings Any function of u and v : x = f x (u, v) y = f y (u, v) Fish-eye Swirl Rain 27

28 Image Warping Implementation I Forward mapping : for(int u=0; u<umax; u++) { for(int v=0; v<vmax; v++) { float x = f x (u,v); float y = f y (u,v); dst(x,y) = src(u,v); } } (u, v) f (x, y) Source Image Destination Image Forwarding Mapping Iterate over source image v y Rotate -30 u x 28

29 Forwarding Mapping NOT Iterate over source image Many source pixels can map to same destination pixel y v Rotate -30 u x Forwarding Mapping NOT Iterate over source image v Many source pixels can map to same destination pixel y Some destination pixels may not be covered Rotate -30 u x 29

30 Image Warping Implementation II Reverse mapping for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = f x -1 (x,y); float v = f y -1 (x,y); dst(x,y) = src(u,v); } } (u, v) f (x, y) Source Image Destination Image Reverse Mapping Iterate over destination image Must resample source May oversample, but much simpler! y v Rotate -30 u x 30

31 Resampling Evaluate source image at arbitrary (u, v) (u, v) does not usually have integer coordinates (u, v) (x, y) Source Image Destination Image Overview Mapping Forward Reverse Resampling Point sampling Triangle filter Gaussian filter 31

32 Point Sampling Take value at closest pixel int iu = trunc(u+0.5); int iv = trunc(v+0.5); dst(x, y) = src(iu, iv); v y This method is simple, but it causes aliasing Rotate -30 Scale 0.5 u x Triangle Filtering Convolve with triangle filter Input Output 32

33 Triangle Filtering Bilinearly interpolate four closest pixels a = linear interpolation of src(u 1, v 2 ) and src(u 2, v 2 ) b = linear interpolation of src(u 1, v 1 ) and src(u 2, v 1 ) dst(x, y) = linear interpolation of a and b a (u 1, v 2 ) (u 2, v 2 ) (u, v) (u 1, v 1 ) b (u 2, v 1 ) Gaussian Filtering Convolve with Gaussian filter Input Output Width of Gaussian kernel affects bluriness 33

34 Gaussian Filtering Compute weighted sum of pixel neighborhood : Weights are normalized values of Gaussian function (u, v) Filtering Methods Comparison Trade-offs Aliasing versus blurring Computation speed Point Bilinear Gaussian 34

35 Image Warping Implementation III Reverse mapping for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = f x -1 (x,y); float v = f y -1 (x,y); dst(x,y) = resample_src(u,v,w); } } (u, v) f (x, y) Source Image Destination Image Image Warping Implementation III Reverse mapping for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = f x -1 (x,y); float v = f y -1 (x,y); dst(x,y) = resample_src(u,v,w); } } (u, v) w f (x, y) Source Image Destination Image 35

36 Example: Scale Scale (src, dst, sx, sy) : float w max(1/sx, 1/sy) for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = x/sx ; float v = y/sy; dst(x,y) = resample_src(u,v,w); } v y } (u, v) Scale 0.5 (x, y) u x Example: Rotate Rotate (src, dst, theta) for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = x*cos(-θ)-y*sin(-θ) float v = x*sin(-θ)+y*cos(-θ) dst(x,y) = resample_src(u,v,w); } y } v (u, v) (x, y) Rotate 30 u x 36

37 Example: Fun Swirl (src, dst, theta) for(int x=0; x<xmax; x++) { for(int y=0; y<ymax; y++) { float u = rot(dist(x,xcenter)*θ) float v = rot(dist(y,ycenter)*θ) dst(x,y) = resample_src(u,v,w); } } v (u, v) y (x, y) Swirl 45 u x Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite 37

38 Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite 38

39 Overview Image compositing Blue-screen mattes Alpha channel Porter-Duff compositing algebra Image morphing Specifying correspondences Warping Blending Image Compositing Separate an image into elements Render independently Composite together Applications Cel animation Chroma-keying Blue-screen matting Dobkin meets Elvis 39

40 Blue-Screen Matting Composite foreground and background images Create background image Create foreground image with blue background Insert non-blue foreground pixels into background Alpha Channel Encodes pixel coverage information α = 0 : no coverage (or transparent) α = 1 : full coverage (or opaque) 0 < α < 1 : partial coverage (or semi-transparent) Example : α = 0.3 or Partial coverage Semi-Transparent 40

41 Compositing with Alpha Controls the linear interpolation of foreground and background pixels when elements are composited α = 0 0< α < 1 α = 1 Pixels with Alpha Alpha channel convention : (r, g, b, α) represents a pixel that is α covered by the color C=(r/α, g/α, b/α) Color components are premultiplied by α Can display (r, g, b) values directly Closure in composition algebra What is the meaning of the following? (0, 1, 0, 1) = (0, ½, 0, 1) = (0, ½, 0, ½) = (0, ½, 0, 0) = 41

42 Pixels with Alpha Alpha channel convention : (r, g, b, α) represents a pixel that is α covered by the color C=(r/α, g/α, b/α) Color components are premultiplied by α Can display (r, g, b) values directly Closure in composition algebra What is the meaning of the following? (0, 1, 0, 1) = full green, full coverage (0, ½, 0, 1) = half green, full coverage (0, ½, 0, ½) = full green, half coverage (0, ½, 0, 0) = no coverage Semi-Transparent Objects Suppose we put A over B over background G A B G How much of B is blocked by A? 42

43 Semi-Transparent Objects Suppose we put A over B over background G A B G α A How much of B is blocked by A? How much of B is shows through A? Semi-Transparent Objects Suppose we put A over B over background G A B G α A How much of B is blocked by A? How much (1 α of B is shows through A? A ) How much of G shows through both A and B? 43

44 Semi-Transparent Objects Suppose we put A over B over background G A B G α A How much of B is blocked by A? How much (1 α of B is shows through A? A ) How much of G shows through both A and B? (1 α A ) (1 α B ) Opaque Objects How do we combine 2 partially covered pixels 3 possible colors (0, A, B) 4 regions (0, A, B, AB) A AB B A 0 B 44

45 Composition Algebra 12 reasonable combinations clear A B A over B B over A A in B B in A A out B B out A A atop B B atop A A xor B Example: C = A over B For colors that are not premultiplied : C = α A A + (1 α A ) α B B α = α A + (1 α A ) α B For colors that are premultiplied : C = A + (1 α A ) B α = α A + (1 α A ) α B A over B 45

46 Image Composition Example Jurassic Park Overview Image compositing Blue-screen mattes Alpha channel Porter-Duff compositing algebra Image morphing Specifying correspondences Warping Blending 46

47 Image Morphing Animate transition between two images Cross-Dissolving Blend image with over operator Alpha of bottom image is 1.0 Alpha of top image varies from 0.0 to 1.0 blend ( i, j) = ( 1 t) src( i, j) + t dst( i, j) ( 0 t 1) 47

48 Image Morphing Combines warping and cross-dissolving Image Morphing The warping step is the hard one Aim to align feature in images How specify mapping for the warp? 48

49 Feature Based Warping Beier & Neeley use pairs of lines to specify warp Given p in destination image, where is p in source image? Beier & Neeley SIGGRAPH 92 Warping with One Line Pair What happens to the F? Translation 49

50 Warping with One Line Pair What happens to the F? Scale Warping with One Line Pair What happens to the F? Rotation 50

51 Warping with One Line Pair What happens to the F? In general, similarity transformations Warping with Multiple Line Pairs Use weighted combination of points defined by each pair of corresponding lines 51

52 Warping with Multiple Line Pairs Use weighted combination of points defined by each pair of corresponding lines P is a weighted average Weighting Effect of Each Line Pair To weight the contribution of each line pair : weight [ i] = p ( length[ i] ) a + dist[ i] b Where length[i] is the length of the i-th line dist[i] is the distance from a point P to the i-th line a, b, p are constants that control the wrap 52

53 Warping Pseudocode WarpImage(Image, L [ ], L[ ]) Begin for each destination pixel p do psum = (0, 0) wsum = 0 for each line L[i] in destination do p [i] = p transformed by (L[i], L [i]) psum += p [i] * weight[i] wsum += weight[i] end p = psum / wsum Morphing Pseudocode GenerateAnimation(Image 0, L 0 [ ], Image 1, L 1 [ ]) Begin for each intermediate frame time t do for i=1 to number of line pairs do L[i] = line t-th of the way from L 0 [i] to L 1 [i] end Warp 0 = WarpImage(Image 0, L 0, L) Warp 1 = WarpImage(Image 1, L 1, L) for each pixel p in FinalImage do Result(p) = (1-t)*Warp 0 + t*warp 1 end 53

54 Beier & Neeley Example Image 0 Image 1 Warp 0 Warp 1 Result Beier & Neeley Example Image 0 Image 1 Warp 0 Warp 1 Result 54

55 Image Processing Quantization Uniform quantization Random dither Ordered dither Floyd-Steinberg dither Pixel operations Add random noise Add luminance Add contrast Add saturation Filtering Blur Detect edge Warping Scale Rotate Warps Combining Morphs Composite 55

Image Processing, Warping, and Sampling

Image Processing, Warping, and Sampling Image Processing, Warping, and Sampling Michael Kazhdan (601.457/657) HB Ch. 4.8 FvDFH Ch. 14.10 Outline Image Processing Image Warping Image Sampling Image Processing What about the case when the modification

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

Image Compositing & Morphing COS 426

Image Compositing & Morphing COS 426 Image Compositing & Morphing COS 426 Digital Image Processing Changing intensity/color Linear: scale, offset, etc. Nonlinear: gamma, saturation, etc. Add random noise Filtering over neighborhoods Blur

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

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 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

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

Image Compositing & Morphing

Image Compositing & Morphing Image Cmpsiting & Mrphing Adam Finkelstein & Tim Weyrich Princetn University COS 426, Spring 2008 Image Prcessing Pixel peratins Add randm nise Add luminance Add cntrast Add saturatin Blur Detect edges

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

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

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

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

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

Image Processing. Alpha Channel. Blending. Image Compositing. Blending Errors. Blending in OpenGL

Image Processing. Alpha Channel. Blending. Image Compositing. Blending Errors. Blending in OpenGL CSCI 42 Computer Graphics Lecture 22 Image Processing Blending Display Color Models Filters Dithering [Ch 6, 7] Jernej Barbic University of Southern California Alpha Channel Frame buffer Simple color model:

More information

Sampling and Reconstruction

Sampling and Reconstruction Page 1 Sampling and Reconstruction The sampling and reconstruction process Real world: continuous Digital world: discrete Basic signal processing Fourier transforms The convolution theorem The sampling

More information

Image Processing. CSCI 420 Computer Graphics Lecture 22

Image Processing. CSCI 420 Computer Graphics Lecture 22 CSCI 42 Computer Graphics Lecture 22 Image Processing Blending Display Color Models Filters Dithering [Ch 7.13, 8.11-8.12] Jernej Barbic University of Southern California 1 Alpha Channel Frame buffer Simple

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

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

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

Image Compositing. Key Concepts. Colbert Challenge

Image Compositing. Key Concepts. Colbert Challenge CS148: Introduction to Computer Graphics and Imaging Image Compositing Colbert Challenge Key Concepts Optical compositing and mattes The alpha channel Compositing operators Premultipled alpha Matte extraction

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

CMSC427: Computer Graphics Lecture Notes Last update: November 21, 2014

CMSC427: Computer Graphics Lecture Notes Last update: November 21, 2014 CMSC427: Computer Graphics Lecture Notes Last update: November 21, 2014 TA: Josh Bradley 1 Linear Algebra Review 1.1 Vector Multiplication Suppose we have a vector a = [ x a y a ] T z a. Then for some

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

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

DD2423 Image Analysis and Computer Vision IMAGE FORMATION. Computational Vision and Active Perception School of Computer Science and Communication

DD2423 Image Analysis and Computer Vision IMAGE FORMATION. Computational Vision and Active Perception School of Computer Science and Communication DD2423 Image Analysis and Computer Vision IMAGE FORMATION Mårten Björkman Computational Vision and Active Perception School of Computer Science and Communication November 8, 2013 1 Image formation Goal:

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

Interactive Computer Graphics. Hearn & Baker, chapter D transforms Hearn & Baker, chapter 5. Aliasing and Anti-Aliasing

Interactive Computer Graphics. Hearn & Baker, chapter D transforms Hearn & Baker, chapter 5. Aliasing and Anti-Aliasing Interactive Computer Graphics Aliasing and Anti-Aliasing Hearn & Baker, chapter 4-7 D transforms Hearn & Baker, chapter 5 Aliasing and Anti-Aliasing Problem: jaggies Also known as aliasing. It results

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

8/5/2012. Introduction. Transparency. Anti-Aliasing. Applications. Conclusions. Introduction

8/5/2012. Introduction. Transparency. Anti-Aliasing. Applications. Conclusions. Introduction Introduction Transparency effects and applications Anti-Aliasing impact in the final image Why combine Transparency with Anti-Aliasing? Marilena Maule João Comba Rafael Torchelsen Rui Bastos UFRGS UFRGS

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

CS559: Computer Graphics. Lecture 12: Antialiasing & Visibility Li Zhang Spring 2008

CS559: Computer Graphics. Lecture 12: Antialiasing & Visibility Li Zhang Spring 2008 CS559: Computer Graphics Lecture 12: Antialiasing & Visibility Li Zhang Spring 2008 Antialising Today Hidden Surface Removal Reading: Shirley ch 3.7 8 OpenGL ch 1 Last time A 2 (x 0 y 0 ) (x 1 y 1 ) P

More information

Image Processing Computer Graphics I Lecture 15

Image Processing Computer Graphics I Lecture 15 15-462 Computer Graphics I Lecture 15 Image Processing Blending Display Color Models Filters Dithering Image Compression March 18, 23 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

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

Image Processing. Blending. Blending in OpenGL. Image Compositing. Blending Errors. Antialiasing Revisited Computer Graphics I Lecture 15

Image Processing. Blending. Blending in OpenGL. Image Compositing. Blending Errors. Antialiasing Revisited Computer Graphics I Lecture 15 15-462 Computer Graphics I Lecture 15 Image Processing Blending Display Color Models Filters Dithering Image Compression March 18, 23 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/

More information

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics

Volume Rendering. Computer Animation and Visualisation Lecture 9. Taku Komura. Institute for Perception, Action & Behaviour School of Informatics Volume Rendering Computer Animation and Visualisation Lecture 9 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Volume Data Usually, a data uniformly distributed

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

BCC Textured Wipe Animation menu Manual Auto Pct. Done Percent Done

BCC Textured Wipe Animation menu Manual Auto Pct. Done Percent Done BCC Textured Wipe The BCC Textured Wipe creates is a non-geometric wipe using the Influence layer and the Texture settings. By default, the Influence is generated from the luminance of the outgoing clip

More information

Image Acquisition + Histograms

Image Acquisition + Histograms Image Processing - Lesson 1 Image Acquisition + Histograms Image Characteristics Image Acquisition Image Digitization Sampling Quantization Histograms Histogram Equalization What is an Image? An image

More information

CS 130 Final. Fall 2015

CS 130 Final. Fall 2015 CS 130 Final Fall 2015 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying

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. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips

Image Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips Image Morphing Image Morphing Image Morphing Image Morphing The user is responsible for defining correspondences between features Very popular technique since Michael Jackson s clips Morphing Coordinate

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

Visible Color. 700 (red) 580 (yellow) 520 (green)

Visible Color. 700 (red) 580 (yellow) 520 (green) Color Theory Physical Color Visible energy - small portion of the electro-magnetic spectrum Pure monochromatic colors are found at wavelengths between 380nm (violet) and 780nm (red) 380 780 Color Theory

More information

Multimedia Technology CHAPTER 4. Video and Animation

Multimedia Technology CHAPTER 4. Video and Animation CHAPTER 4 Video and Animation - Both video and animation give us a sense of motion. They exploit some properties of human eye s ability of viewing pictures. - Motion video is the element of multimedia

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

BCC Linear Wipe. When the Invert Wipe Checkbox is selected, the alpha channel created by the wipe inverts.

BCC Linear Wipe. When the Invert Wipe Checkbox is selected, the alpha channel created by the wipe inverts. BCC Linear Wipe BCC Linear Wipe is similar to a Horizontal wipe. However, it offers a variety parameters for you to customize. This filter is similar to the BCC Rectangular Wipe filter, but wipes in a

More information

I have a meeting with Peter Lee and Bob Cosgrove on Wednesday to discuss the future of the cluster. Computer Graphics

I have a meeting with Peter Lee and Bob Cosgrove on Wednesday to discuss the future of the cluster. Computer Graphics Announcements Assignment 4 will be out later today Problem Set 3 is due today or tomorrow by 9am in my mail box (4 th floor NSH) How are the machines working out? I have a meeting with Peter Lee and Bob

More information

Announcements. Written Assignment 2 out (due March 8) Computer Graphics

Announcements. Written Assignment 2 out (due March 8) Computer Graphics Announcements Written Assignment 2 out (due March 8) 1 Advanced Ray Tracing (Recursive) Ray Tracing Antialiasing Motion Blur Distribution Ray Tracing Ray Tracing and Radiosity Assumptions Simple shading

More information

Previously... contour or image rendering in 2D

Previously... contour or image rendering in 2D Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line

More information

BCC Multi Stretch Wipe

BCC Multi Stretch Wipe BCC Multi Stretch Wipe The BCC Multi Stretch Wipe is a radial wipe with three additional stretch controls named Taffy Stretch. The Taffy Stretch parameters do not significantly impact render times. The

More information

Dominic Filion, Senior Engineer Blizzard Entertainment. Rob McNaughton, Lead Technical Artist Blizzard Entertainment

Dominic Filion, Senior Engineer Blizzard Entertainment. Rob McNaughton, Lead Technical Artist Blizzard Entertainment Dominic Filion, Senior Engineer Blizzard Entertainment Rob McNaughton, Lead Technical Artist Blizzard Entertainment Screen-space techniques Deferred rendering Screen-space ambient occlusion Depth of Field

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

Volume Rendering. Lecture 21

Volume Rendering. Lecture 21 Volume Rendering Lecture 21 Acknowledgements These slides are collected from many sources. A particularly valuable source is the IEEE Visualization conference tutorials. Sources from: Roger Crawfis, Klaus

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

Computer Graphics. Lecture 8 Antialiasing, Texture Mapping

Computer Graphics. Lecture 8 Antialiasing, Texture Mapping Computer Graphics Lecture 8 Antialiasing, Texture Mapping Today Texture mapping Antialiasing Antialiasing-textures Texture Mapping : Why needed? Adding details using high resolution polygon meshes is costly

More information

Computer Graphics and Image Processing

Computer Graphics and Image Processing Computer Graphics and Image Processing Lecture B2 Point Processing Joseph Niepce, 1826. The view from my window 1 Context How much input is used to compute an output value? Point Transforms Region Transforms

More information

CS 354R: Computer Game Technology

CS 354R: Computer Game Technology CS 354R: Computer Game Technology Texture and Environment Maps Fall 2018 Texture Mapping Problem: colors, normals, etc. are only specified at vertices How do we add detail between vertices without incurring

More information

Physical Color. Color Theory - Center for Graphics and Geometric Computing, Technion 2

Physical Color. Color Theory - Center for Graphics and Geometric Computing, Technion 2 Color Theory Physical Color Visible energy - small portion of the electro-magnetic spectrum Pure monochromatic colors are found at wavelengths between 380nm (violet) and 780nm (red) 380 780 Color Theory

More information

the gamedesigninitiative at cornell university Lecture 17 Color and Textures

the gamedesigninitiative at cornell university Lecture 17 Color and Textures Lecture 7 Color and Textures Take Away For Today Image color and composition What is RGB model for images? What does alpha represent? How does alpha composition work? Graphics primitives How do primitives

More information

Warps, Filters, and Morph Interpolation

Warps, Filters, and Morph Interpolation Warps, Filters, and Morph Interpolation Material in this presentation is largely based on/derived from slides originally by Szeliski, Seitz and Efros Brent M. Dingle, Ph.D. 2015 Game Design and Development

More information

Computer Vision I - Basics of Image Processing Part 1

Computer Vision I - Basics of Image Processing Part 1 Computer Vision I - Basics of Image Processing Part 1 Carsten Rother 28/10/2014 Computer Vision I: Basics of Image Processing Link to lectures Computer Vision I: Basics of Image Processing 28/10/2014 2

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

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 02 130124 http://www.ee.unlv.edu/~b1morris/ecg795/ 2 Outline Basics Image Formation Image Processing 3 Intelligent

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

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

Texture Mapping 1/34

Texture Mapping 1/34 Texture Mapping 1/34 Texture Mapping Offsets the modeling assumption that the BRDF doesn t change in u and v coordinates along the object s surface Store a reflectance as an image called a texture Map

More information

Image Warping: A Review. Prof. George Wolberg Dept. of Computer Science City College of New York

Image Warping: A Review. Prof. George Wolberg Dept. of Computer Science City College of New York Image Warping: A Review Prof. George Wolberg Dept. of Computer Science City College of New York Objectives In this lecture we review digital image warping: - Geometric transformations - Forward inverse

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

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

Motivation. Intensity Levels

Motivation. Intensity Levels Motivation Image Intensity and Point Operations Dr. Edmund Lam Department of Electrical and Electronic Engineering The University of Hong ong A digital image is a matrix of numbers, each corresponding

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

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

COMP371 COMPUTER GRAPHICS

COMP371 COMPUTER GRAPHICS COMP371 COMPUTER GRAPHICS LECTURE 14 RASTERIZATION 1 Lecture Overview Review of last class Line Scan conversion Polygon Scan conversion Antialiasing 2 Rasterization The raster display is a matrix of picture

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

Rasterization and Graphics Hardware. Not just about fancy 3D! Rendering/Rasterization. The simplest case: Points. When do we care?

Rasterization and Graphics Hardware. Not just about fancy 3D! Rendering/Rasterization. The simplest case: Points. When do we care? Where does a picture come from? Rasterization and Graphics Hardware CS559 Course Notes Not for Projection November 2007, Mike Gleicher Result: image (raster) Input 2D/3D model of the world Rendering term

More information

CS 543: Computer Graphics. Rasterization

CS 543: Computer Graphics. Rasterization CS 543: Computer Graphics Rasterization Robert W. Lindeman Associate Professor Interactive Media & Game Development Department of Computer Science Worcester Polytechnic Institute gogo@wpi.edu (with lots

More information

Lecture 11: Output 2. Fall UI Design and Implementation 1

Lecture 11: Output 2. Fall UI Design and Implementation 1 Lecture 11: Output 2 Fall 2006 6.831 UI Design and Implementation 1 1 UI Hall of Fame or Shame? Fall 2006 6.831 UI Design and Implementation 2 Here s our hall of fame example. StatCounter is a web site

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

Prof. Feng Liu. Winter /05/2019

Prof. Feng Liu. Winter /05/2019 Prof. Feng Liu Winter 2019 http://www.cs.pd.edu/~fliu/courses/cs410/ 02/05/2019 Last Time Image alignment 2 Toda Image warping The slides for this topic are used from Prof. Yung-Yu Chuang, which use materials

More information

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines

EECS 556 Image Processing W 09. Interpolation. Interpolation techniques B splines EECS 556 Image Processing W 09 Interpolation Interpolation techniques B splines What is image processing? Image processing is the application of 2D signal processing methods to images Image representation

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

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

BCC Rays Ripply Filter

BCC Rays Ripply Filter BCC Rays Ripply Filter The BCC Rays Ripply filter combines a light rays effect with a rippled light effect. The resulting light is generated from a selected channel in the source image and spreads from

More information

Real-Time Graphics Architecture

Real-Time Graphics Architecture Real-Time Graphics Architecture Lecture 8: Antialiasing Kurt Akeley Pat Hanrahan http://graphics.stanford.edu/cs448-07-spring/ Antialiasing Outline Aliasing and antialiasing Taxonomy of antialiasing approaches

More information

Digital Image Processing COSC 6380/4393

Digital Image Processing COSC 6380/4393 Digital Image Processing COSC 6380/4393 Lecture 21 Nov 16 th, 2017 Pranav Mantini Ack: Shah. M Image Processing Geometric Transformation Point Operations Filtering (spatial, Frequency) Input Restoration/

More information

Computer Science 426 Midterm 3/11/04, 1:30PM-2:50PM

Computer Science 426 Midterm 3/11/04, 1:30PM-2:50PM NAME: Login name: Computer Science 46 Midterm 3//4, :3PM-:5PM This test is 5 questions, of equal weight. Do all of your work on these pages (use the back for scratch space), giving the answer in the space

More information

Computer Graphics. Sampling Theory & Anti-Aliasing. Philipp Slusallek

Computer Graphics. Sampling Theory & Anti-Aliasing. Philipp Slusallek Computer Graphics Sampling Theory & Anti-Aliasing Philipp Slusallek Dirac Comb (1) Constant & δ-function flash Comb/Shah function 2 Dirac Comb (2) Constant & δ-function Duality f(x) = K F(ω) = K (ω) And

More information

Graphics and Interaction Transformation geometry and homogeneous coordinates

Graphics and Interaction Transformation geometry and homogeneous coordinates 433-324 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

The SIFT (Scale Invariant Feature

The SIFT (Scale Invariant Feature The SIFT (Scale Invariant Feature Transform) Detector and Descriptor developed by David Lowe University of British Columbia Initial paper ICCV 1999 Newer journal paper IJCV 2004 Review: Matt Brown s Canonical

More information

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates Department of Computer Science and Software Engineering The Lecture outline Introduction Vectors and matrices Translation

More information

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong) Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong) References: [1] http://homepages.inf.ed.ac.uk/rbf/hipr2/index.htm [2] http://www.cs.wisc.edu/~dyer/cs540/notes/vision.html

More information

Introduction to Computer Vision. Week 3, Fall 2010 Instructor: Prof. Ko Nishino

Introduction to Computer Vision. Week 3, Fall 2010 Instructor: Prof. Ko Nishino Introduction to Computer Vision Week 3, Fall 2010 Instructor: Prof. Ko Nishino Last Week! Image Sensing " Our eyes: rods and cones " CCD, CMOS, Rolling Shutter " Sensing brightness and sensing color! Projective

More information

Point Operations. Prof. George Wolberg Dept. of Computer Science City College of New York

Point Operations. Prof. George Wolberg Dept. of Computer Science City College of New York Point Operations Prof. George Wolberg Dept. of Computer Science City College of New York Objectives In this lecture we describe point operations commonly used in image processing: - Thresholding - Quantization

More information

Shear-Warp Volume Rendering. Volume Rendering Overview

Shear-Warp Volume Rendering. Volume Rendering Overview Shear-Warp Volume Rendering R. Daniel Bergeron Department of Computer Science University of New Hampshire Durham, NH 03824 From: Lacroute and Levoy, Fast Volume Rendering Using a Shear-Warp- Factorization

More information

CS 563 Advanced Topics in Computer Graphics Lecture 2: Bare-Bones Raytracer. by Emmanuel Agu

CS 563 Advanced Topics in Computer Graphics Lecture 2: Bare-Bones Raytracer. by Emmanuel Agu CS 563 Advanced Topics in Computer Graphics Lecture 2: Bare-Bones Raytracer by Emmanuel Agu Ray Casting (Appel, 1968) direct illumination Recursive ray tracing (Whitted, 1980) Pseudocode for Ray Tracer

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

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

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,

EXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, School of Computer Science and Communication, KTH Danica Kragic EXAM SOLUTIONS Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, 14.00 19.00 Grade table 0-25 U 26-35 3 36-45

More information

Lecture 7: Most Common Edge Detectors

Lecture 7: Most Common Edge Detectors #1 Lecture 7: Most Common Edge Detectors Saad Bedros sbedros@umn.edu Edge Detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the

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