![Page 1: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/1.jpg)
![Page 2: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/2.jpg)
A Gentle Introductionto Bilateral Filteringand its Applications
A Gentle Introductionto Bilateral Filteringand its Applications
07/10: Novel Variantsof the Bilateral Filter
Jack Tumblin – EECS, Northwestern University
![Page 3: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/3.jpg)
Review: Bilateral FilterReview: Bilateral Filter
A 2A 2--D filter window: weights vary with intensityD filter window: weights vary with intensity
cc
ss
DomainDomain
RangeRangef(x)f(x)
xx
2 Gaussian Weights:2 Gaussian Weights:product = product = ellisoidalellisoidal footprintfootprint
Normalize weights toNormalize weights toalways sum to 1.0always sum to 1.0
![Page 4: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/4.jpg)
Review: Bilateral FilterReview: Bilateral Filter
cc
ss
cc
ss
Why it works: graceful segmentationWhy it works: graceful segmentation•• Smoothing for Smoothing for ‘‘similarsimilar’’ parts parts ONLYONLY•• Range Gaussian Range Gaussian ss acts as a acts as a ‘‘filtered regionfiltered region’’ finderfinder DomainDomain
RangeRangef(x)f(x)
xx
![Page 5: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/5.jpg)
Bilateral Filter VariantsBilateral Filter Variants
• before the ‘Bilateral’ name :– Yaroslavsky (1985): T.D.R.I.M.
– Smith & Brady (1997): SUSAN
And now, a growing set of named variants:
• ‘Trilateral’ Filter (Choudhury et al., EGSR 2003)
• Cross-Bilateral (Petschnigg04, Eisemann04)
• NL-Means (Buades 05)
And more coming: application driven…
![Page 6: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/6.jpg)
Who was first? Many PioneersWho was first? Many Pioneers
• Elegant, Simple, Broad Idea
‘Invented’ several times
• Different Approaches, Increasing Clarity– Tomasi & Manduchi(1998): ‘Bilateral Filter’– Smith & Brady (1995): ‘SUSAN’
“Smallest Univalue Segment Assimilating Nucleus”
– Yaroslavsky(1985) ‘Transform Domain Image Restoration Methods’
![Page 7: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/7.jpg)
New Idea!New Idea!1985 1985 YaroslavskyYaroslavsky: :
A 2A 2--D filter window: D filter window: weights vary with intensity ONLYweights vary with intensity ONLY
cc
ss
DomainDomain
RangeRangef(x)f(x)
xx
Square neighborhood,Square neighborhood,Gaussian WeightedGaussian Weighted‘‘similaritysimilarity’’
Normalize weights toNormalize weights toalways sum to 1.0always sum to 1.0
![Page 8: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/8.jpg)
New Idea!New Idea!1995 Smith: 1995 Smith: ‘‘SUSANSUSAN’’ FilterFilter
A 2A 2--D filter window: weights vary with intensityD filter window: weights vary with intensity
cc
ss
DomainDomain
RangeRangef(x)f(x)
xx
2 Gaussian Weights:2 Gaussian Weights:product = product = ellisoidalellisoidal footprintfootprint
Normalize weights toNormalize weights toalways sum to 1.0always sum to 1.0
![Page 9: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/9.jpg)
Background:Background: ‘‘UnilateralUnilateral’’ FilterFiltere.g. traditional, linear, FIR filterse.g. traditional, linear, FIR filters
Key Idea:Key Idea: ConvolutionConvolution-- Output(x) = local weighted avg. of inputs.Output(x) = local weighted avg. of inputs.-- Weights vary within a Weights vary within a ‘‘windowwindow’’ of nearby xof nearby x
•• Smoothes away details, Smoothes away details, BUTBUT blurs resultblurs result
ccweight(x)weight(x)
Note that weightsNote that weightsalways sum to 1.0always sum to 1.0
![Page 10: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/10.jpg)
Piecewise smooth result Piecewise smooth result –– averages local small details, ignores outliersaverages local small details, ignores outliers–– preserves steps, largepreserves steps, large--scale ramps, and curves,...scale ramps, and curves,...
•• Equivalent to anisotropic diffusion and robust statisticsEquivalent to anisotropic diffusion and robust statistics[Black98,Elad02,Durand02][Black98,Elad02,Durand02]
•• Simple & Fast Simple & Fast (esp. w/ (esp. w/ [Durand02][Durand02] FFTFFT--based speedup)based speedup)
Bilateral Filter:Bilateral Filter: StrengthsStrengths
cc
ss
![Page 11: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/11.jpg)
Output at is Output at is average of a average of a tiny regiontiny region
Bilateral Filter:Bilateral Filter: 3 Difficulties3 Difficulties
•• Poor Smoothing in Poor Smoothing in High Gradient RegionsHigh Gradient Regions
•• Smoothes and bluntsSmoothes and bluntscliffs, valleys & ridgescliffs, valleys & ridges
•• Can combine disjoint Can combine disjoint signal regions signal regions
cc
ss
![Page 12: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/12.jpg)
Bilateral Filter:Bilateral Filter: 3 Difficulties3 Difficulties
•• Poor Smoothing in Poor Smoothing in High Gradient RegionsHigh Gradient Regions
•• Smoothes and bluntsSmoothes and bluntscliffs, valleys & ridgescliffs, valleys & ridges
•• Can combine disjoint Can combine disjoint signal regions signal regions
c
ss
![Page 13: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/13.jpg)
‘‘Blunted CornersBlunted Corners’’ Weak HalosWeak Halos
Bilateral :Bilateral :
![Page 14: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/14.jpg)
‘‘Blunted CornersBlunted Corners’’ Weak HalosWeak Halos
‘‘TrilateralTrilateral’’::
![Page 15: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/15.jpg)
Bilateral Filter:Bilateral Filter: 3 Difficulties3 Difficulties
•• Poor Smoothing in Poor Smoothing in High Gradient RegionsHigh Gradient Regions
•• Smoothes and bluntsSmoothes and bluntscliffs, valleys & ridgescliffs, valleys & ridges
•• Disjoint regions Disjoint regions can blend together can blend together
c
ss
![Page 16: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/16.jpg)
New Idea!New Idea!Trilateral Filter (Trilateral Filter (ChoudhuryChoudhury 2003)2003)
Goal:Goal:Piecewise linear smoothing, not piecewise constantPiecewise linear smoothing, not piecewise constant
Method:Method:Extensions to the Bilateral FilterExtensions to the Bilateral Filter
PositionPosition
IntensityIntensity
EXAMPLE:EXAMPLE: remove noise from a piecewise linear remove noise from a piecewise linear scanlinescanline
![Page 17: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/17.jpg)
Outline: BilateralOutline: Bilateral Trilateral FilterTrilateral FilterThree Key Ideas:Three Key Ideas:•• TiltTilt the filter windowthe filter window
according to bilaterallyaccording to bilaterally--smoothed gradientssmoothed gradients
•• LimitLimit the filter windowthe filter windowto connected regions to connected regions of similar smoothed gradient.of similar smoothed gradient.
•• AdjustAdjust Parameters Parameters from measurements from measurements of the windowed signalof the windowed signal
ccss
![Page 18: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/18.jpg)
Outline: BilateralOutline: Bilateral Trilateral FilterTrilateral FilterKey Ideas:Key Ideas:•• TiltTilt the filter windowthe filter window
according to bilaterallyaccording to bilaterally--smoothed gradientssmoothed gradients
•• LimitLimit the filter windowthe filter windowto connected regions to connected regions of similar smoothed gradient.of similar smoothed gradient.
•• AdjustAdjust Parameters Parameters from measurements from measurements of the windowed signalof the windowed signal
ccss
![Page 19: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/19.jpg)
Outline: BilateralOutline: Bilateral Trilateral FilterTrilateral FilterKey Ideas:Key Ideas:•• TiltTilt the filter windowthe filter window
according to bilaterallyaccording to bilaterally--smoothed gradientssmoothed gradients
•• LimitLimit the filter windowthe filter windowto connected regions to connected regions of similar smoothed gradient.of similar smoothed gradient.
•• AdjustAdjust Parameters Parameters from measurements from measurements of the windowed signalof the windowed signal
ccss
![Page 20: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/20.jpg)
Comparisons: Skylight DetailsComparisons: Skylight Details..
BilateralBilateral
![Page 21: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/21.jpg)
Comparisons: Skylight DetailsComparisons: Skylight Details..
TrilateralTrilateral
![Page 22: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/22.jpg)
. . •• ,,
![Page 23: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/23.jpg)
Trilateral Filter (Trilateral Filter (ChoudhuryChoudhury 2003)2003)•• StrengthsStrengths
–– Sharpens Sharpens cornerscorners–– Smoothes similar Smoothes similar gradientsgradients–– Automatic Automatic parameter parameter settingsetting–– 33--D D mesh demesh de--noisingnoising, too!, too!
•• WeaknessesWeaknesses–– SS--LL--OO--W;W; very costly connectedvery costly connected--region finderregion finder–– Shares Shares BilateralBilateral’’ss ‘‘SingleSingle--pixel regionpixel region’’ artifactsartifacts–– Noise ToleranceNoise Tolerance limits; disrupts limits; disrupts ‘‘tilttilt’’ estimatesestimates
![Page 24: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/24.jpg)
NEW IDEA : ‘Joint’ or ‘Cross’ Bilateral’Petschnigg(2004) and Eisemann(2004)NEW IDEA : ‘Joint’ or ‘Cross’ Bilateral’Petschnigg(2004) and Eisemann(2004)
Bilateral two kinds of weights
NEW : get them from two kinds of images.
• Smooth image A pixels locally, but
• Limit to ‘similar regions’ of image B
Why do this? To get ‘best of both images’
![Page 25: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/25.jpg)
Ordinary Bilateral FilterOrdinary Bilateral Filter
Bilateral two kinds of weights, one image A :
( ) ( )∑∈
−−=S
AAAGGW
ABFq
qqpp
p qp ||||||1][rs σσ
cc
ss
Image A:
DomainDomain
RangeRangef(x)f(x)
xx
![Page 26: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/26.jpg)
‘Joint’ or ‘Cross’ Bilateral Filter‘Joint’ or ‘Cross’ Bilateral Filter
NEW: two kinds of weights, two images
( ) ( )∑∈
−−=S
ABBGGW
ABFq
qqpp
p qp ||||||1][rs σσ
cc
ss
A: Noisy, dim(ambient image)
cc
ss
B: Clean,strong(Flash image)
![Page 27: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/27.jpg)
Image A: Warm, shadows, but too Noisy(too dim for a good quick photo)
Image A: Warm, shadows, but too Noisy(too dim for a good quick photo)(too dim for a good quick photo)
No-flash
![Page 28: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/28.jpg)
Image B: Cold, Shadow-free, Clean(flash: simple light, ALMOST no shadows)
Image B: Cold, Shadow-free, Clean(flash: simple light, ALMOST no shadows)(flash: simple light, ALMOST no shadows)
![Page 29: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/29.jpg)
MERGE BEST OF BOTH: apply‘Cross Bilateral’ or ‘Joint Bilateral’
MERGE BEST OF BOTH: apply‘Cross Bilateral’ or ‘Joint Bilateral’
![Page 30: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/30.jpg)
(it really is much better!)(it really is much better!)
![Page 31: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/31.jpg)
Recovers Weak Signals Hidden by NoiseRecovers Weak Signals Hidden by Noise
Noisy but Strong…
Noisy and Weak…
+ Noise =
+ Noise =
![Page 32: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/32.jpg)
Ordinary Bilateral Filter? Ordinary Bilateral Filter?
Noisy but Strong…
Noisy and Weak…
BF
BF
Step feature GONE!!Step feature GONE!!
![Page 33: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/33.jpg)
Ordinary Bilateral Ordinary Bilateral
Noisy but Strong…
Noisy and Weak…
Signal too small to rejectSignal too small to reject
Range filter preserves signalRange filter preserves signal
![Page 34: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/34.jpg)
‘Cross’ or ‘Joint’ Bilateral Idea:‘Cross’ or ‘Joint’ Bilateral Idea:
Noisy but Strong…
Noisy and Weak…
Range filter preserves signalRange filter preserves signal
Use stronger signalUse stronger signal’’s range s range filter weightsfilter weights……
![Page 35: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/35.jpg)
‘Joint’ or ‘Cross’ Bilateral FilterPetschnigg(2004) and Eisemann(2004)
‘Joint’ or ‘Cross’ Bilateral FilterPetschnigg(2004) and Eisemann(2004)
• Useful Residues. To transfer details,– CBF(A,B) to remove A’s noisy details
– CBF(B,A) to remove B’s clean details;
– add to CBF(A,B) – clean, detailed image!
•CBF(A,B): smoothes image A only;(e.g. no flash)
•Limits smoothing to stay within regions where Image B is ~uniform (e.g. flash)
![Page 36: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/36.jpg)
New Idea:NL-Means Filter (Buades 2005)
New Idea:NL-Means Filter (Buades 2005)
• Same goals: ‘Smooth within Similar Regions’
• KEY INSIGHT: Generalize, extend ‘Similarity’– Bilateral:
Averages neighbors with similar intensities;
– NL-Means:Averages neighbors with similar neighborhoods!
![Page 37: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/37.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
• For each and
every pixel p:
![Page 38: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/38.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
• For each and
every pixel p: – Define a small, simple fixed size neighborhood;
![Page 39: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/39.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
• For each and
every pixel p: – Define a small, simple fixed size neighborhood;
– Define vector Vp: a list of neighboring pixel values.
Vp = 0.740.320.410.55………
![Page 40: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/40.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
‘Similar’ pixels p, qSMALLvector distance;
|| Vp – Vq ||2p
q
![Page 41: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/41.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
‘Dissimilar’ pixels p, qLARGEvector distance;
|| Vp – Vq ||2p
q
q
![Page 42: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/42.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
‘Dissimilar’ pixels p, qLARGEvector distance;
Filter with this!
|| Vp – Vq ||2p
q
![Page 43: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/43.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
p, q neighbors define
a vector distance;
Filter with this:No spatial term!
|| Vp – Vq ||2 pq
( ) ( )∑∈
−−=S
IVVGGW
INLMFq
qqpp
p qp 2||||||||1][rs
ρρσσ
![Page 44: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/44.jpg)
NL-Means Method:Buades (2005)NL-Means Method:Buades (2005)
pixels p, q neighborsSet a vector distance;
Vector Distance to p sets weight for each pixel q
|| Vp – Vq ||2 pq
( )∑∈
−=S
IVVGW
INLMFq
qqpp
p2||||1][
r
ρρσ
![Page 45: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/45.jpg)
NL-Means Filter (Buades 2005)NL-Means Filter (Buades 2005)
• Noisysourceimage:
![Page 46: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/46.jpg)
NL-Means Filter (Buades 2005)NL-Means Filter (Buades 2005)
• GaussianFilter
Low noise,
Low detail
![Page 47: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/47.jpg)
NL-Means Filter (Buades 2005)NL-Means Filter (Buades 2005)
• AnisotropicDiffusion
(Note ‘stairsteps’:~ piecewiseconstant)
![Page 48: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/48.jpg)
NL-Means Filter (Buades 2005)NL-Means Filter (Buades 2005)
• BilateralFilter
(better, butsimilar‘stairsteps’:
![Page 49: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/49.jpg)
NL-Means Filter (Buades 2005)NL-Means Filter (Buades 2005)
• NL-Means:
Sharp,
Low noise,
Few artifacts.
![Page 50: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/50.jpg)
Many More Possibilities: EXPERIMENT!Many More Possibilities: EXPERIMENT!
• Bilateral goals are subjective;‘Local smoothing within similar regions’‘Edge-preserving smoothing’‘Separate large structure & fine detail’‘Eliminate outliers’‘Filter within edges, not across them’
• It’s simplicity invites new inventive answers.
![Page 51: A Gentle Introduction - MIT CSAILpeople.csail.mit.edu/sparis/bf_course/slides/07_variants.pdf · A Gentle Introduction to Bilateral Filtering and its Applications 07/10: Novel Variants](https://reader033.vdocuments.site/reader033/viewer/2022052720/5f095d987e708231d4267dc0/html5/thumbnails/51.jpg)