SlideShare a Scribd company logo
1 of 12
Download to read offline
C A N O N C O N F I D E N T I A L
Asymmetric recursive Gaussian filtering for
space-variant artificial bokeh
Tuan Pham
Canon Information Systems Research Australia
Oral Session 5 15:45-16:00 on Thursday 13 December 2018
Overview
2
1. Recursive Gaussian filter
2. Space-variant recursive filter
3. Artificial bokeh application
FIR filter versus IIR (recursive) filter
3
Finite Impulse Response (FIR) filter
Output is a weighted average of input samples: O(N), where N is filter size
Xn-2 Xn-1 Xn Xn+1 Xn+2
ynyn-1yn-2 yn+1 yn+2
Impulse
input
Finite
impulse
response
0
0
w1
w2
w3
w4
w5
w1
w2
w3 w4 w5
Infinite Impulse Response (IIR) filter
Output is a weighted average of input and previous output samples
O(1) computation regardless of filter size
Xn-2 Xn-1 Xn
yn-2 yn-1 yn yn+1 yn+2
xn+1 xn+2
Infinite
impulse
response 0
Causal
direction
Xn-2 Xn-1Xn
yn-2 yn-1ynyn+1 yn+2
xn+1 xn+2
Anti-causal
direction
0
∑wi = 1
for a
normalised
filter
Recursive Gaussian filter
4
Second-order IIR filter [1] uses up to 2 previous taps
Anti-causal
filter
x + y
Causal
filter y+
y̶
𝑦 𝑛
+
= 𝑛0 𝑥 𝑛 + 𝑛1 𝑥 𝑛−1 − 𝑑1 𝑦 𝑛−1
+
− 𝑑2 𝑦 𝑛−2
+
𝑦 𝑛
−
= 𝑚1 𝑥 𝑛+1 + 𝑚2 𝑥 𝑛+2 − 𝑑1 𝑦 𝑛+1
−
− 𝑑2 𝑦 𝑛+2
−
𝑦 𝑛 = 𝑦 𝑛
+ + 𝑦 𝑛
−
Parallel IIR implementation of
Gaussian filter
4th-order filter is more accurate
𝑦 𝑛
+
= 𝑛0 𝑥 𝑛 + 𝑛1 𝑥 𝑛−1 + 𝑛2 𝑥 𝑛−2 + 𝑛3 𝑥 𝑛−3
− 𝑑1 𝑦 𝑛−1
+
− 𝑑2 𝑦 𝑛−2
+
− 𝑑3 𝑦 𝑛−3
+
− 𝑑4 𝑦 𝑛−4
+
𝑦 𝑛
−
= 𝑚1 𝑥 𝑛+1 + 𝑚2 𝑥 𝑛+2 + 𝑚3 𝑥 𝑛+3 + 𝑚4 𝑥 𝑛+4
− 𝑑1 𝑦 𝑛+1
−
− 𝑑2 𝑦 𝑛+2
−
− 𝑑3 𝑦 𝑛+3
−
− 𝑑4 𝑦 𝑛+4
−
𝑦 𝑛 = 𝑦 𝑛
+ + 𝑦 𝑛
−
-40 -20 0 20 40
10
-6
10
-5
10
-4
10
-3
10
-2
10
-1
t
h(t)
Gaussian =10
2nd
order, RMSE=2×10-3
4nd
order, RMSE=4×10-5
-40 -20 0 20 40
-0.01
0
0.01
0.02
0.03
0.04
0.05
t
h(t)
Gaussian
2nd
order
4nd
order
Log
space
Forth-order IIR filter [2]: use up to 4 previous taps
→ more accurate
where the filter coefficients ni, mi, and di (i=1...4) are
functions of the Gaussian smoothing scale σ
[2] Farnebäck and Westin, Improving Deriche-style recursive Gaussian filters, JMIV, 2006.
[1] Deriche, Fast algorithms for low-level vision, PAMI, 1990.
Space-variant IIR filter: the straightforward extension [3]
5
Vary the filter coefficients ni, mi, and di according to the varying σ
This isotropic filter works OK for smoothly varying σ
not OK for discontinuous blur: colour bleeds across blur discontinuities
foveation blur: 0 ≤ σ ≤ 20 discontinuous blur σ ∈ {0, 10}
[3] Tan, et al., Performance of three recursive algorithms for fast space-variant Gaussian filtering, 2003.
y+
Σ
0
1
1
0
0
1 Σ
σ
x σ=0 σ=1 σ=1
leakage
causal filters
y̶
Σ
0
1
1
0
0
1
σ=0 σ=0 σ=1
σ
x
anti-causal filters
causal pass: bleeding anti-causal pass: no bleeding
input
output
Colour bleeds to adjacent pixels if the blur difference is large enough
Our solution: constraining the rate of change of directional σ’s
6
xy-separable filtering, each with 2 directions -> 4 directional sigmas:
𝜎𝑥
+
, 𝜎𝑥
−
, 𝜎𝑦
+
, 𝜎𝑦
−
, which can be different at a pixel
Σ
0
1
1
0
0
1
σ ̶
x
y
Σ
anti-causal filterscausal filters
0
1
1
0
1
σ+
0
0
1
σ 0
σ+
=0
σ̶
=0
σ ̶
=1 σ+
= 1 σ̶
=.5σ+
=.1 σ+
=0
σ̶
=0
x
+
x
-
y
+
y
-
0
10
5
To minimise leakage, the rate of increase of 𝜎+
and the rate of decrease of 𝜎− is tapered to at
most 1/3 per pixel.
input
output
7
Bokeh = Japanese for visually pleasing out-of-focus blur
Application: artificial bokeh
Depth map
Large Depth-of-Field input
Deriche's 2-tap symmetric IIR Our 2-tap asymmetric IIR
Farneback's 4-tap symmetric IIR Our 4-tap asymmetric IIR
8
Application: artificial bokeh
Bokeh = Japanese for visually pleasing out-of-focus blur
Depth map
Summary
9
IIR filter is more efficient than FIR filter for large filter size
Naïve extension of existing IIR filters to space-varying Gaussian
filters produces artefacts at sudden blur discontinuities
We proposed asymmetric IIR filters that minimise intensity
leakage across blur discontinuities
Our asymmetric IIR filters produce good defocus blur for
scenes with depth discontinuities (e.g. portrait shot)
10
Thank you
tuan.pham@cisra.canon.com.au
Details: filter normalisation
11
0
0
0
0
0
0
0
Anti-causal
filter σ̶
x + y
Causal
filter σ+
y+
y̶
+
+
w+
δ
w̶
δ
×
×
2σ+
σ+
+ σ̶
2σ̶
σ+
+ σ̶
The asymmetric left & right blur weights may not add up to 1
Need to add a small delta response to normalise the total filter
Application: speeded-up anisotropic filtering
12
20 iterations of Perona-Malik
anisotropic diffusion with λ=0.25,
𝑔 𝛻𝐼 = exp (− 𝛻𝐼 /5)
Our edge-stopping blur with
𝜎 = 16 × exp − 𝛻𝐼 in the inset

More Related Content

What's hot

Introduction To Advanced Image Processing
Introduction To Advanced Image ProcessingIntroduction To Advanced Image Processing
Introduction To Advanced Image ProcessingSuren Kumar
 
Numerical integration;Gaussian integration one point, two point and three poi...
Numerical integration;Gaussian integration one point, two point and three poi...Numerical integration;Gaussian integration one point, two point and three poi...
Numerical integration;Gaussian integration one point, two point and three poi...vaibhav tailor
 
8.7 numerical integration
8.7 numerical integration8.7 numerical integration
8.7 numerical integrationdicosmo178
 
Numerical integration
Numerical integrationNumerical integration
Numerical integrationSunny Chauhan
 
Image formation
Image formationImage formation
Image formationpotaters
 
香港六合彩
香港六合彩香港六合彩
香港六合彩baoyin
 
Calculas IMPROPER INTEGRALS AND APPLICATION OF INTEGRATION ppt
Calculas IMPROPER  INTEGRALS AND  APPLICATION  OF INTEGRATION pptCalculas IMPROPER  INTEGRALS AND  APPLICATION  OF INTEGRATION ppt
Calculas IMPROPER INTEGRALS AND APPLICATION OF INTEGRATION pptDrazzer_Dhruv
 
Math 2 Application of integration
Math 2 Application of integrationMath 2 Application of integration
Math 2 Application of integrationlightspeed2
 
Numerical integration
Numerical integrationNumerical integration
Numerical integrationTarun Gehlot
 
Application of Integrals
Application of IntegralsApplication of Integrals
Application of Integralssarcia
 
ICPR2014-Poster
ICPR2014-PosterICPR2014-Poster
ICPR2014-PosterBo Dong
 
Digital signal processing on arm new
Digital signal processing on arm newDigital signal processing on arm new
Digital signal processing on arm newIsrael Gbati
 
Comparing 3-D Interpolation Techniques
Comparing 3-D Interpolation TechniquesComparing 3-D Interpolation Techniques
Comparing 3-D Interpolation TechniquesBinu Enchakalody
 
Introduction to Image Processing
Introduction to Image ProcessingIntroduction to Image Processing
Introduction to Image ProcessingIsrael Gbati
 
Numerical Integration: Trapezoidal Rule
Numerical Integration: Trapezoidal RuleNumerical Integration: Trapezoidal Rule
Numerical Integration: Trapezoidal RuleVARUN KUMAR
 
Multi variable integral
Multi variable integralMulti variable integral
Multi variable integralJ M
 
Hidden lines & surfaces
Hidden lines & surfacesHidden lines & surfaces
Hidden lines & surfacesAnkur Kumar
 

What's hot (20)

Introduction To Advanced Image Processing
Introduction To Advanced Image ProcessingIntroduction To Advanced Image Processing
Introduction To Advanced Image Processing
 
Numerical integration;Gaussian integration one point, two point and three poi...
Numerical integration;Gaussian integration one point, two point and three poi...Numerical integration;Gaussian integration one point, two point and three poi...
Numerical integration;Gaussian integration one point, two point and three poi...
 
8.7 numerical integration
8.7 numerical integration8.7 numerical integration
8.7 numerical integration
 
Numerical integration
Numerical integrationNumerical integration
Numerical integration
 
Image formation
Image formationImage formation
Image formation
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
Calculas IMPROPER INTEGRALS AND APPLICATION OF INTEGRATION ppt
Calculas IMPROPER  INTEGRALS AND  APPLICATION  OF INTEGRATION pptCalculas IMPROPER  INTEGRALS AND  APPLICATION  OF INTEGRATION ppt
Calculas IMPROPER INTEGRALS AND APPLICATION OF INTEGRATION ppt
 
1519 differentiation-integration-02
1519 differentiation-integration-021519 differentiation-integration-02
1519 differentiation-integration-02
 
Math 2 Application of integration
Math 2 Application of integrationMath 2 Application of integration
Math 2 Application of integration
 
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
5th Semester Electronic and Communication Engineering (2013-June) Question Pa...
 
Numerical integration
Numerical integrationNumerical integration
Numerical integration
 
Application of Integrals
Application of IntegralsApplication of Integrals
Application of Integrals
 
ICPR2014-Poster
ICPR2014-PosterICPR2014-Poster
ICPR2014-Poster
 
Digital signal processing on arm new
Digital signal processing on arm newDigital signal processing on arm new
Digital signal processing on arm new
 
Comparing 3-D Interpolation Techniques
Comparing 3-D Interpolation TechniquesComparing 3-D Interpolation Techniques
Comparing 3-D Interpolation Techniques
 
Introduction to Image Processing
Introduction to Image ProcessingIntroduction to Image Processing
Introduction to Image Processing
 
Numerical Integration: Trapezoidal Rule
Numerical Integration: Trapezoidal RuleNumerical Integration: Trapezoidal Rule
Numerical Integration: Trapezoidal Rule
 
Final
FinalFinal
Final
 
Multi variable integral
Multi variable integralMulti variable integral
Multi variable integral
 
Hidden lines & surfaces
Hidden lines & surfacesHidden lines & surfaces
Hidden lines & surfaces
 

Similar to Oral presentation on Asymmetric recursive Gaussian filtering for space-variant artificial bokeh

Design of digital filters
Design of digital filtersDesign of digital filters
Design of digital filtersNaila Bibi
 
Design Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionDesign Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionIOSR Journals
 
Design Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionDesign Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionIOSR Journals
 
Spatial Domain Filtering.pdf
Spatial Domain Filtering.pdfSpatial Domain Filtering.pdf
Spatial Domain Filtering.pdfswagatkarve
 
EC8553 Discrete time signal processing
EC8553 Discrete time signal processing EC8553 Discrete time signal processing
EC8553 Discrete time signal processing ssuser2797e4
 
06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIPbabak danyal
 
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...IJERA Editor
 
Dss
Dss Dss
Dss nil65
 
Image_filtering (1).pptx
Image_filtering (1).pptxImage_filtering (1).pptx
Image_filtering (1).pptxwdwd10
 
DSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersDSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersAmr E. Mohamed
 
Chapter10. Realization of Digital Filter.pptx
Chapter10. Realization of Digital Filter.pptxChapter10. Realization of Digital Filter.pptx
Chapter10. Realization of Digital Filter.pptxRajGopalMishra4
 
1531 fourier series- integrals and trans
1531 fourier series- integrals and trans1531 fourier series- integrals and trans
1531 fourier series- integrals and transDr Fereidoun Dejahang
 
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter DesignDSP_2018_FOEHU - Lec 06 - FIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter DesignAmr E. Mohamed
 

Similar to Oral presentation on Asymmetric recursive Gaussian filtering for space-variant artificial bokeh (20)

Design of digital filters
Design of digital filtersDesign of digital filters
Design of digital filters
 
Lecture 6
Lecture 6Lecture 6
Lecture 6
 
Design Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionDesign Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window Function
 
Design Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window FunctionDesign Technique of Bandpass FIR filter using Various Window Function
Design Technique of Bandpass FIR filter using Various Window Function
 
Spatial Domain Filtering.pdf
Spatial Domain Filtering.pdfSpatial Domain Filtering.pdf
Spatial Domain Filtering.pdf
 
EC8553 Discrete time signal processing
EC8553 Discrete time signal processing EC8553 Discrete time signal processing
EC8553 Discrete time signal processing
 
Design of Filters PPT
Design of Filters PPTDesign of Filters PPT
Design of Filters PPT
 
Av 738- Adaptive Filtering - Wiener Filters[wk 3]
Av 738- Adaptive Filtering - Wiener Filters[wk 3]Av 738- Adaptive Filtering - Wiener Filters[wk 3]
Av 738- Adaptive Filtering - Wiener Filters[wk 3]
 
06 spatial filtering DIP
06 spatial filtering DIP06 spatial filtering DIP
06 spatial filtering DIP
 
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...
Analysis of Non Linear Filters with Various Density of Impulse Noise for Diff...
 
Glowworm Swarm Optimisation
Glowworm Swarm OptimisationGlowworm Swarm Optimisation
Glowworm Swarm Optimisation
 
Dss
Dss Dss
Dss
 
Image_filtering (1).pptx
Image_filtering (1).pptxImage_filtering (1).pptx
Image_filtering (1).pptx
 
digital filter design
digital filter designdigital filter design
digital filter design
 
IIR filter
IIR filterIIR filter
IIR filter
 
Deep learning
Deep learningDeep learning
Deep learning
 
DSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersDSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital Filters
 
Chapter10. Realization of Digital Filter.pptx
Chapter10. Realization of Digital Filter.pptxChapter10. Realization of Digital Filter.pptx
Chapter10. Realization of Digital Filter.pptx
 
1531 fourier series- integrals and trans
1531 fourier series- integrals and trans1531 fourier series- integrals and trans
1531 fourier series- integrals and trans
 
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter DesignDSP_2018_FOEHU - Lec 06 - FIR Filter Design
DSP_2018_FOEHU - Lec 06 - FIR Filter Design
 

More from Tuan Q. Pham

Asymmetric recursive Gaussian filtering for space-variant artificial bokeh
 Asymmetric recursive Gaussian filtering for space-variant artificial bokeh Asymmetric recursive Gaussian filtering for space-variant artificial bokeh
Asymmetric recursive Gaussian filtering for space-variant artificial bokehTuan Q. Pham
 
Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Tuan Q. Pham
 
Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Tuan Q. Pham
 
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Tuan Q. Pham
 
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Tuan Q. Pham
 
Non-maximum suppression using fewer than two comparison per pixels
Non-maximum suppression using fewer than two comparison per pixelsNon-maximum suppression using fewer than two comparison per pixels
Non-maximum suppression using fewer than two comparison per pixelsTuan Q. Pham
 
Paper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingPaper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingTuan Q. Pham
 
Paper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingPaper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingTuan Q. Pham
 
Bidirectional bias correction for gradient-based shift estimation
Bidirectional bias correction for gradient-based shift estimationBidirectional bias correction for gradient-based shift estimation
Bidirectional bias correction for gradient-based shift estimationTuan Q. Pham
 
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error norm
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error normRobust Super-Resolution by minimizing a Gaussian-weighted L2 error norm
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error normTuan Q. Pham
 
Resolution enhancement of low-quality videos using a high-resolution frame
Resolution enhancement of low-quality videos using a high-resolution frameResolution enhancement of low-quality videos using a high-resolution frame
Resolution enhancement of low-quality videos using a high-resolution frameTuan Q. Pham
 
Separable bilateral filtering for fast video preprocessing
Separable bilateral filtering for fast video preprocessingSeparable bilateral filtering for fast video preprocessing
Separable bilateral filtering for fast video preprocessingTuan Q. Pham
 
Performance of Optimal Registration Estimator
Performance of Optimal Registration EstimatorPerformance of Optimal Registration Estimator
Performance of Optimal Registration EstimatorTuan Q. Pham
 
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...Tuan Q. Pham
 
Normalized averaging using adaptive applicability functions with applications...
Normalized averaging using adaptive applicability functions with applications...Normalized averaging using adaptive applicability functions with applications...
Normalized averaging using adaptive applicability functions with applications...Tuan Q. Pham
 

More from Tuan Q. Pham (15)

Asymmetric recursive Gaussian filtering for space-variant artificial bokeh
 Asymmetric recursive Gaussian filtering for space-variant artificial bokeh Asymmetric recursive Gaussian filtering for space-variant artificial bokeh
Asymmetric recursive Gaussian filtering for space-variant artificial bokeh
 
Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...
 
Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...Parallel implementation of geodesic distance transform with application in su...
Parallel implementation of geodesic distance transform with application in su...
 
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
 
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
Multi-hypothesis projection-based shift estimation for sweeping panorama reco...
 
Non-maximum suppression using fewer than two comparison per pixels
Non-maximum suppression using fewer than two comparison per pixelsNon-maximum suppression using fewer than two comparison per pixels
Non-maximum suppression using fewer than two comparison per pixels
 
Paper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingPaper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matching
 
Paper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matchingPaper fingerprinting using alpha-masked image matching
Paper fingerprinting using alpha-masked image matching
 
Bidirectional bias correction for gradient-based shift estimation
Bidirectional bias correction for gradient-based shift estimationBidirectional bias correction for gradient-based shift estimation
Bidirectional bias correction for gradient-based shift estimation
 
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error norm
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error normRobust Super-Resolution by minimizing a Gaussian-weighted L2 error norm
Robust Super-Resolution by minimizing a Gaussian-weighted L2 error norm
 
Resolution enhancement of low-quality videos using a high-resolution frame
Resolution enhancement of low-quality videos using a high-resolution frameResolution enhancement of low-quality videos using a high-resolution frame
Resolution enhancement of low-quality videos using a high-resolution frame
 
Separable bilateral filtering for fast video preprocessing
Separable bilateral filtering for fast video preprocessingSeparable bilateral filtering for fast video preprocessing
Separable bilateral filtering for fast video preprocessing
 
Performance of Optimal Registration Estimator
Performance of Optimal Registration EstimatorPerformance of Optimal Registration Estimator
Performance of Optimal Registration Estimator
 
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...
Influence of Signal-to-Noise Ratio and Point Spread Function on Limits of Sup...
 
Normalized averaging using adaptive applicability functions with applications...
Normalized averaging using adaptive applicability functions with applications...Normalized averaging using adaptive applicability functions with applications...
Normalized averaging using adaptive applicability functions with applications...
 

Recently uploaded

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 

Recently uploaded (20)

APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 

Oral presentation on Asymmetric recursive Gaussian filtering for space-variant artificial bokeh

  • 1. C A N O N C O N F I D E N T I A L Asymmetric recursive Gaussian filtering for space-variant artificial bokeh Tuan Pham Canon Information Systems Research Australia Oral Session 5 15:45-16:00 on Thursday 13 December 2018
  • 2. Overview 2 1. Recursive Gaussian filter 2. Space-variant recursive filter 3. Artificial bokeh application
  • 3. FIR filter versus IIR (recursive) filter 3 Finite Impulse Response (FIR) filter Output is a weighted average of input samples: O(N), where N is filter size Xn-2 Xn-1 Xn Xn+1 Xn+2 ynyn-1yn-2 yn+1 yn+2 Impulse input Finite impulse response 0 0 w1 w2 w3 w4 w5 w1 w2 w3 w4 w5 Infinite Impulse Response (IIR) filter Output is a weighted average of input and previous output samples O(1) computation regardless of filter size Xn-2 Xn-1 Xn yn-2 yn-1 yn yn+1 yn+2 xn+1 xn+2 Infinite impulse response 0 Causal direction Xn-2 Xn-1Xn yn-2 yn-1ynyn+1 yn+2 xn+1 xn+2 Anti-causal direction 0 ∑wi = 1 for a normalised filter
  • 4. Recursive Gaussian filter 4 Second-order IIR filter [1] uses up to 2 previous taps Anti-causal filter x + y Causal filter y+ y̶ 𝑦 𝑛 + = 𝑛0 𝑥 𝑛 + 𝑛1 𝑥 𝑛−1 − 𝑑1 𝑦 𝑛−1 + − 𝑑2 𝑦 𝑛−2 + 𝑦 𝑛 − = 𝑚1 𝑥 𝑛+1 + 𝑚2 𝑥 𝑛+2 − 𝑑1 𝑦 𝑛+1 − − 𝑑2 𝑦 𝑛+2 − 𝑦 𝑛 = 𝑦 𝑛 + + 𝑦 𝑛 − Parallel IIR implementation of Gaussian filter 4th-order filter is more accurate 𝑦 𝑛 + = 𝑛0 𝑥 𝑛 + 𝑛1 𝑥 𝑛−1 + 𝑛2 𝑥 𝑛−2 + 𝑛3 𝑥 𝑛−3 − 𝑑1 𝑦 𝑛−1 + − 𝑑2 𝑦 𝑛−2 + − 𝑑3 𝑦 𝑛−3 + − 𝑑4 𝑦 𝑛−4 + 𝑦 𝑛 − = 𝑚1 𝑥 𝑛+1 + 𝑚2 𝑥 𝑛+2 + 𝑚3 𝑥 𝑛+3 + 𝑚4 𝑥 𝑛+4 − 𝑑1 𝑦 𝑛+1 − − 𝑑2 𝑦 𝑛+2 − − 𝑑3 𝑦 𝑛+3 − − 𝑑4 𝑦 𝑛+4 − 𝑦 𝑛 = 𝑦 𝑛 + + 𝑦 𝑛 − -40 -20 0 20 40 10 -6 10 -5 10 -4 10 -3 10 -2 10 -1 t h(t) Gaussian =10 2nd order, RMSE=2×10-3 4nd order, RMSE=4×10-5 -40 -20 0 20 40 -0.01 0 0.01 0.02 0.03 0.04 0.05 t h(t) Gaussian 2nd order 4nd order Log space Forth-order IIR filter [2]: use up to 4 previous taps → more accurate where the filter coefficients ni, mi, and di (i=1...4) are functions of the Gaussian smoothing scale σ [2] Farnebäck and Westin, Improving Deriche-style recursive Gaussian filters, JMIV, 2006. [1] Deriche, Fast algorithms for low-level vision, PAMI, 1990.
  • 5. Space-variant IIR filter: the straightforward extension [3] 5 Vary the filter coefficients ni, mi, and di according to the varying σ This isotropic filter works OK for smoothly varying σ not OK for discontinuous blur: colour bleeds across blur discontinuities foveation blur: 0 ≤ σ ≤ 20 discontinuous blur σ ∈ {0, 10} [3] Tan, et al., Performance of three recursive algorithms for fast space-variant Gaussian filtering, 2003. y+ Σ 0 1 1 0 0 1 Σ σ x σ=0 σ=1 σ=1 leakage causal filters y̶ Σ 0 1 1 0 0 1 σ=0 σ=0 σ=1 σ x anti-causal filters causal pass: bleeding anti-causal pass: no bleeding input output Colour bleeds to adjacent pixels if the blur difference is large enough
  • 6. Our solution: constraining the rate of change of directional σ’s 6 xy-separable filtering, each with 2 directions -> 4 directional sigmas: 𝜎𝑥 + , 𝜎𝑥 − , 𝜎𝑦 + , 𝜎𝑦 − , which can be different at a pixel Σ 0 1 1 0 0 1 σ ̶ x y Σ anti-causal filterscausal filters 0 1 1 0 1 σ+ 0 0 1 σ 0 σ+ =0 σ̶ =0 σ ̶ =1 σ+ = 1 σ̶ =.5σ+ =.1 σ+ =0 σ̶ =0 x + x - y + y - 0 10 5 To minimise leakage, the rate of increase of 𝜎+ and the rate of decrease of 𝜎− is tapered to at most 1/3 per pixel. input output
  • 7. 7 Bokeh = Japanese for visually pleasing out-of-focus blur Application: artificial bokeh Depth map Large Depth-of-Field input
  • 8. Deriche's 2-tap symmetric IIR Our 2-tap asymmetric IIR Farneback's 4-tap symmetric IIR Our 4-tap asymmetric IIR 8 Application: artificial bokeh Bokeh = Japanese for visually pleasing out-of-focus blur Depth map
  • 9. Summary 9 IIR filter is more efficient than FIR filter for large filter size Naïve extension of existing IIR filters to space-varying Gaussian filters produces artefacts at sudden blur discontinuities We proposed asymmetric IIR filters that minimise intensity leakage across blur discontinuities Our asymmetric IIR filters produce good defocus blur for scenes with depth discontinuities (e.g. portrait shot)
  • 11. Details: filter normalisation 11 0 0 0 0 0 0 0 Anti-causal filter σ̶ x + y Causal filter σ+ y+ y̶ + + w+ δ w̶ δ × × 2σ+ σ+ + σ̶ 2σ̶ σ+ + σ̶ The asymmetric left & right blur weights may not add up to 1 Need to add a small delta response to normalise the total filter
  • 12. Application: speeded-up anisotropic filtering 12 20 iterations of Perona-Malik anisotropic diffusion with λ=0.25, 𝑔 𝛻𝐼 = exp (− 𝛻𝐼 /5) Our edge-stopping blur with 𝜎 = 16 × exp − 𝛻𝐼 in the inset