Image Processing BasicsWhat are images?Pixels as samplesImages are UbiquitousProperties of ImagesImage errorsTwo issuesSampling and reconstructionAliasingAliasing in computer graphicsSpatial AliasingSpatial aliasingSlide 13Temporal aliasingAntialiasingSampling TheorySpectral AnalysisFourier TransformSlide 19Sampling theoremFiltering and convolutionFiltering, sampling and image processingResamplingSlide 24Ideal low pass filterImage processing in practicePowerPoint PresentationFinite low pass filtersSlide 29Edge DetectionScalingImage processingSummaryImage Processing BasicsWhat are images?An image is a 2-d rectilinear array of pixelsPixels as samplesA pixel is a sample of a continuous functionImages are UbiquitousInputOptical photoreceptorsDigital camera CCD arrayRays in virtual camera (why?)OutputTVsComputer monitorsPrintersProperties of ImagesSpatial resolutionWidth pixels/width cm and height pixels/ height cmIntensity resolutionIntensity bits/intensity range (per channel)Number of channelsRGB is 3 channels, grayscale is one channelImage errorsSpatial aliasingNot enough spatial resolutionIntensity quantizationNot enough intensity resolutionTwo issuesSampling and reconstructionCreating and displaying images while reducing spatial aliasing errorsHalftoning techniquesDealing with intensity quantizationSampling and reconstructionAliasingArtifacts caused by too low sampling frequency (undersampling) or improper reconstructionUndersampling rate determined by Nyquist limit (Shannon’s sampling theorem)Aliasing in computer graphicsIn graphics, two major typesSpatial aliasingProblems in individual imagesTemporal aliasingProblems in image sequences (motion)Spatial Aliasing“Jaggies”Spatial aliasingRef: SIGGRAPH aliasing tutorialSpatial aliasingTexture disintegrationRef: SIGGRAPH aliasing tutorialTemporal aliasingStrobingStagecoach wheels in moviesFlickeringMonitor refresh too slowFrame update rate too slowCRTs seen on other video screensAntialiasingSample at a higher rateWhat if the signal isn’t bandlimited?What if we can’t do this, say because the sampling device has a fixed resolution?Pre-filter to form bandlimited signalLow pass filterTrades aliasing for blurringNon-uniform samplingNot always possible, done by your visual system, suitable for ray tracingTrades aliasing for noiseSampling TheoryTwo issuesWhat sampling rate suffices to allow a given continuous signal to be reconstructed from a discrete sample without loss of information?What signals can be reconstructed without loss for a given sampling rate?Spectral AnalysisSpatial (time) domain: Frequency domain:Any (spatial, time) domain signal (function) can be written as a sum of periodic functions (Fourier)Fourier TransformFourier TransformFourier transform:Inverse Fourier transform:dxexfuFxui2)()(dueuFxfxui2)()(Sampling theoremA signal can be reconstructed from its samples if the signal contains no frequencies above ½ the sampling frequency.-Claude ShannonThe minimum sampling rate for a bandlimited signal is called the Nyquist rateA signal is bandlimited if all frequencies above a given finite bound have 0 coefficients, i.e. it contains no frequencies above this bound.Filtering and convolutionConvolution of two functions (= filtering):Convolution theorem:Convolution in the frequency domain is the same as multiplication in the spatial (time) domain, andConvolution in the spatial (time) domain is the same as multiplication in the frequency domaindxhfxhxfxg )()()()()(Filtering, sampling and image processingMany image processing operations basically involve filtering and resampling.BlurringEdge detectionScalingRotationWarpingResamplingConsider reducing the image resolution:ResamplingThe problem is to resample the image in such a way as to produce a new image, with a lower resolution, without introducing aliasing.Strategy-Low pass filter transformed image by convolution to form bandlimited signalThis will blur the image, but avoid aliasingIdeal low pass filterFrequency domain:Spatial (time) domain:xxxsync)sin()( Image processing in practiceUse finite, discrete filters instead of infinite continous filtersConvolution is a summation of a finite number of terms rather than in integral over an infinite domainA filter can now be represented as an array of discrete terms (the kernel)nnxhfxhxfxg)()()()()(Discrete ConvolutionFinite low pass filtersTriangle filterFinite low pass filtersGaussian filterEdge DetectionConvolve image with a filter that finds differences between neighboring pixels 111181111filterScalingResample with a gaussian or triangle filterImage processingSome other filtersSummaryImages are discrete objectsPixels are samplesImages have limited resolutionSampling and reconstructionReduce visual artifacts caused by aliasingFilter to avoid undersamplingBlurring (and noise) are preferable to
View Full Document