hough transformation and kalman filter in tracking · 2018-11-20 · hough transformation...
TRANSCRIPT
![Page 1: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/1.jpg)
Alessio Piucci
05 April 2017 - HighRR meeting
Hough transformationand Kalman filter in tracking
![Page 2: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/2.jpg)
What today
Alessio Piucci
What you will NOT see today:- sensors- microchips- bonding substrates
So what?Hough transformation examples in tracking and Kalman filter* Hough transformation: what?* Hough transformation: why?* Hough transformation: where?
**Forward Tracking at LHCb* Generalised Hough transformation
** ‘Retina’ algorithm for track reconstruction * bonus track: track fitting
** Kalman fit
1/28
![Page 3: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/3.jpg)
Tracking
Alessio Piucci
Detector:hits from particles
Tracking:combine hits to reconstruct tracks
2/28
![Page 4: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/4.jpg)
Tracking
Detector:hits from particles
Tracking:combine hits to reconstruct tracks
→ find the tracks:pattern recognition
Alessio Piucci 2/28
![Page 5: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/5.jpg)
Tracking
Detector:hits from particles
Tracking:combine hits to reconstruct tracks
→ find the tracks:pattern recognition
→ measure track parameters:track fitting
Alessio Piucci 2/28
![Page 6: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/6.jpg)
Hough transformation
Wikipedia:“Feature extraction technique used in image analysis, computer vision, and digital image processing.”
Original idea“Method and means for recognizing complex patterns”Paul V. C. Hough, U.S. Patent 3,069,654 , 1962Analysis of photographs from bubble chambers
‘Modern’ Hough transform“Use of the Hough Transformation to Detect Lines and Curves in Pictures”R. Duda, P. Hart, Comm. ACN, Vol 15, 1972Vision system for (‘70…) robots
Generalized Hough transform“Generalizing the Hough transform to detect arbitrary shapes”D. H. Ballard, Pattern Recognition, Vol. 13, No. 2, 1981Computer vision
Alessio Piucci 3/28
![Page 7: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/7.jpg)
Hough transformation
Real space(framelet)
Transformed space
point-to-line
x
y
a
b
Alessio Piucci
single real point → family of straight lines → line of (a, b) parameters
4/28
![Page 8: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/8.jpg)
Hough transformation
Real space(framelet)
Transformed space
point-to-line
x
y
a
b
Alessio Piucci
“It is an exact theorem that, if a series of points in a framelet lieon a straight line, the corresponding lines in the plane transform
[sic] intersect in a point” (P. Hough)
single real point → family of straight lines → line of (a, b) parameters
4/28
![Page 9: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/9.jpg)
Hough transformation
Real space(framelet)
Transformed space
point-to-line
x
y
a
b
Alessio Piucci
single real point → family of straight lines → line of (a, b) parameters
5/28
![Page 10: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/10.jpg)
Hough transformation
Real space(framelet)
Transformed space
point-to-line
x
y
a
b
Alessio Piucci
single real point → family of straight lines → line of (a, b) parameters
5/28
![Page 11: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/11.jpg)
Hough transformation
Alessio Piucci
Transformed space
point-to-line
x
y
a
b
single real point → family of straight lines → line of (a, b) parameters
Real space(framelet)
5/28
![Page 12: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/12.jpg)
Hough transformation
Real space(framelet)
Transformed space
point-to-line
x
y
a
b
Alessio Piucci
single real point → family of straight lines → line of (a, b) parameters
point-to-line
single (a, b) point → line on the real space (track!)
5/28
![Page 13: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/13.jpg)
Hough transformation:why?
Alessio Piucci
![Page 14: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/14.jpg)
Hough transf.: robustness
Alessio Piucci
Robust against:- missing points in the real space (→ hit inefficiency)- misalignment of points (→ detector resolution, m. scattering)
a
b
votes
6/30
misalignment
noise
1) real → transf projection2) sum votes
![Page 15: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/15.jpg)
Hough transf.: robustness
Alessio Piucci
Robust against:- missing points in the real space (→ hit inefficiency)- misalignment of points (→ detector resolution, m. scattering)
a
votes
bthr. = 2
cluster size = 4
6/30
1) real → transf projection2) sum votes3) clustering
- clustering threshold- clustering window
misalignment
noise
![Page 16: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/16.jpg)
Hough transf.: parallelization
Alessio Piucci
Parallelization of projections
array of accumulators7/30
![Page 17: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/17.jpg)
Hough transf.: not optimal for...
Alessio Piucci 8/30
It needs ‘enough votes’:few available votes (= few detector planes)
→ sensitive to occupancy, reconstruction of fake lines
(It can be) sensitive to noise
Need exact parametrisation of the space
Complexity rising ~ dn-2 (n = number of parameters n,d = dimension of the real space)
a
bvotes
![Page 18: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/18.jpg)
Hough transformation:where?
Alessio Piucci
![Page 19: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/19.jpg)
Tracking @ LHCb
Alessio Piucci
Hough transformation to reconstruct lines→ pattern recognition in tracking!
9/28
![Page 20: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/20.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
10/28
x
zy
B
VELO
T
TT
![Page 21: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/21.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
Foward Tracking: VELO(TT) → T extrapolation
x
zy
B
VELO
T
TT
10/28
![Page 22: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/22.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
Foward Tracking: VELO(TT) → T extrapolation
x
zy
B
VELO
T
TT
10/28
![Page 23: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/23.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
Foward Tracking: VELO(TT) → T extrapolation
x
zy
B
VELO
T
TT
10/28
![Page 24: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/24.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
Foward Tracking: VELO(TT) → T extrapolation
x
zy
B
VELO
T
TT
10/28
![Page 25: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/25.jpg)
Forward Tracking
Alessio Piucci
LHCb: bending on xz plane (linear extrapolation on y)→ 2D problem
Foward Tracking: VELO(TT) → T extrapolation
x
zy
B
VELO
T
TT
10/28
![Page 26: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/26.jpg)
Hough clustering in Forward Tracking
Alessio Piucci
You know: track before B + B field
You want: complete track (after B)
B
11/28
![Page 27: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/27.jpg)
Hough clustering in Forward Tracking
Alessio Piucci
B
You know: track before B + B field
You want: complete track (after B)
You need: a single hit after B
11/28
![Page 28: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/28.jpg)
Hough clustering in Forward Tracking
Alessio Piucci
You know: track before B + B field
You want: complete track (after B)
You need: a single hit after BB
Hough-like clusterization:- define a reference plane- project all hits on it- all hits on the same track (...straight line...) cluster together
11/28
![Page 29: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/29.jpg)
Forward Tracking: some more details
Alessio Piucci 12/28
Hough-like clusterization in Forward Tracking:
2-dimensional real space (xz)
1 dimensional transformed space (x, fixed zref
)
12 available votes (detector hits)
transformation: depends on the input VELO track
all hits on T (not true…) must be projected againfor any VELO track
@LHCb Upgrade condition (~ x3.6 tracks wrt LHC Run 2):~ 250 tracks (on SciFi) / event ~ 70 cluster candidates / VELO track
![Page 30: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/30.jpg)
Alessio Piucci
Generalized Hough Transformation
![Page 31: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/31.jpg)
Alessio Piucci
Generalized Hough Transformationsearch for the model in the image?!
![Page 32: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/32.jpg)
Generalized Hough Transform
Alessio Piucci 13/28
Standard Hough transform:- good for low-dimensionality problems- need parametrization of the shape to reconstruct- search for an object described by a model, in the image
![Page 33: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/33.jpg)
Generalized Hough Transform
Alessio Piucci 13/28
Standard Hough transform:- good for low-dimensionality problems- need parametrization of the shape to reconstruct- search for an object described by a model, in the image
Generalized Hough Transform (GHT) idea:Model → templates of the model → template matching
search for the location of the model in the image?!
![Page 34: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/34.jpg)
GHT: get prepared...
Alessio Piucci 14/28
- get your (not analytic) sample shape Ψ(x, y)- define an angle Ω, with n values (Ω
1, Ω
2, …, Ω
n)
x
yΨ(x, y)
Ω1 = 0
Ω2 = 0.1
. . . (x, y)2ac
Ωn = 3.14
![Page 35: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/35.jpg)
GHT: get prepared...
Alessio Piucci 14/28
x
yΨ(x, y)
Ω1 = 0
Ω2 = 0.1
. . . (x, y)2ac
Ωn = 3.14
- get your (not analytic) sample shape Ψ(x, y)- define an angle Ω, with n values (Ω
1, Ω
2, …, Ω
n)
- define r(x, y), θ(x, y) wrt a reference point (x
c, y
c)
(xc, y
c) r
θ
![Page 36: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/36.jpg)
GHT: get prepared...
Alessio Piucci
x
yΨ(x, y)
Ω1 = 0
Ω2 = 0.1
. . . (x, y)2ac
Ωn = 3.14
- get your (not analytic) sample shape Ψ(x, y)- define an angle Ω, with n values (Ω
1, Ω
2, …, Ω
n)
- define r(x, y), θ(x, y) wrt a reference point (x
c, y
c)
- for each point of the shape,compute the gradient direction ω(r, θ)
(xc, y
c)
ω(r, θ)
r
θ
14/28
![Page 37: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/37.jpg)
GHT: get prepared...
Alessio Piucci
- get your (not analytic) sample shape Ψ(x, y)- define an angle Ω, with n values (Ω
1, Ω
2, …, Ω
n)
- define r(x, y), θ(x, y) wrt a reference point (x
c, y
c)
- for each point of the shape,compute the gradient direction ω(r, θ)
- find the closest Ω and fill the table with (r, θ)
x
yΨ(x, y)
(xc, y
c) r
θ
Ω1 = 0 (r, θ)
1a (r, θ)
1b (r, θ)
1c . . .
Ω2 = 0.1 (r, θ)
2a (r, θ)
2b (r, θ)
2c . . .
. . . (x, y)2ac
Ωn = 3.14 (r, θ)
na (r, θ)
nb (r, θ)
nc . . .
“all shape pointswith ω ≈ 0.1”
14/28
ω(r, θ)
![Page 38: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/38.jpg)
Alessio Piucci 15/28
GHT: now use it!
x
yω(x, y)
- for each point of the image (x,y), compute ω(x, y)
- find the closest Ω mapped
![Page 39: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/39.jpg)
Alessio Piucci 15/28
GHT: now use it!
x
yω(x, y)
(r1, θ
1)
(r2, θ
2)
- for each point of the image (x,y), compute ω(x, y)
- find the closest Ω mapped
- retrieve all (ri, θ
j) corresponding to Ω
![Page 40: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/40.jpg)
Alessio Piucci 15/28
GHT: now use it!
x
yω(x, y)
(r1, θ
1)
(r2, θ
2)
(xc1
, yc1
)
(xc2
, yc2
)
- for each point of the image (x,y), compute ω(x, y)
- find the closest Ω mapped
- retrieve all (ri, θ
j) corresponding to Ω
- compute the reference point ( x’c(x, y), y’
c(x, y) )
![Page 41: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/41.jpg)
Alessio Piucci 15/28
GHT: now use it!
x
yω(x, y)
(r1, θ
1)
(r2, θ
2)
(xc1
, yc1
)
(xc2
, yc2
)
- for each point of the image (x,y), compute ω(x, y)
- find the closest Ω mapped
- retrieve all (ri, θ
j) corresponding to Ω
- compute the reference point ( x’c(x, y), y’
c(x, y) )
- reference points from the same modelwill cluster together
![Page 42: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/42.jpg)
Alessio Piucci 15/28
- for each point of the image (x,y), compute ω(x, y)
- find the closest Ω mapped
- retrieve all (ri, θ
j) corresponding to Ω
- compute the reference point ( x’c(x, y), y’
c(x, y) )
- reference points from the same modelwill cluster together
- the local maxima (x’c, y’
c) give you
the positions of the model!
Do you want to rotate and scale?Just use 2 additional parameters
GHT: now use it!
x
y(x
c, y
c)
ω(x, y)
(r1, θ
1)
(r2, θ
2)
(xc1
, yc1
)
(xc2
, yc2
)
![Page 43: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/43.jpg)
Alessio Piucci 16/28
- any non-analytic shape you want
- no exact parametrization needed
- robust against noise/partial deformation of shapes
- handle multiple occurrences of the shape
- ‘easy’ implementation for > 2 dimensions
But...- storage and computation requirements can easily explode...
GHT: pro and cons
![Page 44: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/44.jpg)
Alessio Piucci
‘Retina’ algorithmfor track reconstruction
Conflict of interest:based on my master thesis :)
![Page 45: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/45.jpg)
Alessio Piucci 17/28
‘Retina’ algorithm for tracking
Original idea“An artificial retina for fast track finding”L. Ristori, NIM A, 452 (2000), 2000Inspired by mechanism of visual receptive fields
(D. H. Hubel, T. N. Wiesel, J. Physiol, 148 (1959))
~ variation of the Generalized Hough Transformation
First implementation (*):(software) 2014 – (hardware) on going
(*) A. Abba, P. Marino, M. J. Morello, N. Neri, D. Ninci, A. Piucci, G. Punzi, F. Spinella, L. Ristori, S. Stracka, D. Tonelli
![Page 46: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/46.jpg)
Alessio Piucci 18/28
‘Retina’: mapping
- construct your track phase space
- divide your phase space in cells
u
v
![Page 47: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/47.jpg)
Alessio Piucci 18/28
‘Retina’: mapping
- construct your track phase space
- divide your phase space in cells
- cell = a track in the space = a set of hits in the detector, the receptors
x
x
u
v
![Page 48: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/48.jpg)
Alessio Piucci 18/28
‘Retina’: mapping
z
x
- construct your track phase space
- divide your phase space in cells
- cell = a track in the space = a set of hits in the detector, the receptors
- map your detector with setsof receptors (template of tracks) u
v
![Page 49: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/49.jpg)
Alessio Piucci
‘Retina’: reconstruction
- hit on the detector:only near receptors are excited,with double weight ( exp(-d2/2σ2) )
- sum of responses of receptors
z
x
d
19/28
![Page 50: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/50.jpg)
Alessio Piucci
‘Retina’: reconstruction
z
x
- hit on the detector:only near receptors are excited,with double weight ( exp(-d2/2σ2) )
- sum of responses of receptors
- clusterization: local maxima are tracks
z
x
d
19/28
![Page 51: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/51.jpg)
Alessio Piucci
‘Retina’: reconstruction
z
x
- hit on the detector:only near receptors are excited,with double weight ( exp(-d2/2σ2) )
- sum of responses of receptors
- clusterization: local maxima are tracks
z
x
d
19/28
![Page 52: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/52.jpg)
Alessio Piucci 20/28
‘Retina’: realistic environment
- realistic benchmark:track reconstructionat LHCb Upgrade @ 40 MHz
- 3D tracks in magnetic field: 5D problem
Full LHCb Upgrade MC
![Page 53: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/53.jpg)
Alessio Piucci 21/28
‘Retina’: comments
- offline tracking quality with 25k cells only
- high-parallelizable algorithm, sub-μs latency
- (@ 40 MHz tracking) it requires throughput and bandwidth like hell:only feasible on last-generation FPGA (Stratix 10, Virtex UltraScale)(~150 chips, out bandwidth ~20 Tb/s, switching network = )
- needs deep hardware and software optimisation
![Page 54: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/54.jpg)
Alessio Piucci
Bonus track:track fitting
![Page 55: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/55.jpg)
Alessio Piucci 22/28
Kalman filter
Technique used to extract signal from noisy/missing measurements
“A new approah to linear filtering and prediction problems”R. E. Kálmán, Journal of Basing Engineering, 1960
Widely used in avionics and navigation systems:- Apollo missions- radar systems, to follow targets- cruise missiles, to reach targets- …
Based on Bayesian inference:- have some (a-priori) hypothesis- gain in evidences → update the hypothesis
![Page 56: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/56.jpg)
Alessio Piucci
Kalman fit
a
b
c
x1
x2
23/28
A-priori knowledge:- B map- detector material description
Recursive procedure:a) current state
b) prediction of next state c) update state
![Page 57: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/57.jpg)
Alessio Piucci
Kalman fit
a
b
c
x1
x2
A-priori knowledge:- B map- detector material description
Recursive procedure:a) current state
b) prediction of next state c) update state
23/28
![Page 58: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/58.jpg)
Alessio Piucci
Kalman fit
a
b
c
x1
x2
A-priori knowledge:- B map- detector material description
Recursive procedure:a) current state
b) prediction of next state c) update state
23/28
![Page 59: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/59.jpg)
Alessio Piucci
Kalman fit
a
b
c
x1
x2
A-priori knowledge:- B map- detector material description
Recursive procedure:a) current state
b) prediction of next state c) update state
23/28
![Page 60: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/60.jpg)
Alessio Piucci
Kalman fit
a
b
c
x1
x2
d) smoothingA-priori knowledge:- B map- detector material description
Recursive procedure:a) current state
b) prediction of next state c) update state
23/28
![Page 61: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/61.jpg)
Alessio Piucci 24/28
Kalman fit: formalism
State driven by a linear stochastic process:
State and measurement are related:x = particle statez = measurement
xk+1
= Akx
k + Bu
k + w
k
zk = H
kx
k + v
k
k k+1
![Page 62: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/62.jpg)
Alessio Piucci
Kalman fit: formalism
x = particle statez = measurement
xk+1
= Akx
k + Bu
k + w
k
zk = H
kx
k + v
k w = process noise v = meas. noise
w v
k k+1
State driven by a linear stochastic process:
State and measurement are related:
24/28
![Page 63: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/63.jpg)
Alessio Piucci
Kalman fit: formalism
x = particle statez = measurement
xk+1
= Akx
k + Bu
k + w
k
zk = H
kx
k + v
k
A = k → k+1 state transport matrixH = meas. → state connection matrix
w = process noise v = meas. noise
w v
k k+1
Ak
H
State driven by a linear stochastic process:
State and measurement are related:
24/28
![Page 64: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/64.jpg)
Alessio Piucci
Kalman fit: taxonomy
Bayesian inference approach:
xk+1
, ek+1
= a-priori state estimate and estimate error
→ Pk+1
(ek+1
) estimate error covariance matrix
a-posteriori x’k+1
as linear combination of a-priori xk+1
and weighted
difference of zk+1
measurement and its prediction Hk+1
xk+1
:
K(Hk+1
, Pk+1
, Rk+1
) = gain matrix,
minimizes the a-posteriori error covariance
x’k+1
= xk+1
+ Kk+1
(zk+1
- Hxk+1
)
25/28
![Page 65: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/65.jpg)
Alessio Piucci
Kalman fit: flowchart
a-priori xk , P
k
measurement update1) compute the Kalman gain K
k
2) update the state estimation
3) update the error covariance P’k
prediction1) project the state k → k+1
2) project the error covariance Pk+1
x’k = x
k + K
k(z
k - Hx
k)
xk+1
= Akx
k + Bu
k + w
k
26/28
![Page 66: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/66.jpg)
Alessio Piucci
Kalman fit: comments
- usually gives the best precision:* optimal estimator:
if Gaussian noise → minimises the mean square err of params* if not Gaussian noise → is the best linear estimator
- non linear formulations on the market (extended Kalman fit)
- (really) timing consuming→ code vectorisation, simplified geometry and B propagation
27/28
![Page 67: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/67.jpg)
Alessio Piucci
Final comments
- Hough clustering: powerful technique for pattern recognition* simple (and elegant) idea* fast* starting point for many custom and advanced solutions
- Kalman fit:* statistically solid* ‘standard solution’ for highest precision
Are not unique and universal solutions to life, universe and everything:first evaluate what do you need in your case
→ looking forward to see you at the incomingTrack reconstruction and fitting hands-on!
28/28
![Page 68: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/68.jpg)
Thanks!
![Page 69: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/69.jpg)
Backup
![Page 70: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/70.jpg)
‘Modern’ Hough transform
Alessio Piucci
Original algorithm: problem with vertical lines (in the real space)!
Generalized transform:Hesse normal form
r = x cosθ + y sinθ
x
y
r
θ
real point → sinusoid
![Page 71: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/71.jpg)
LHCb detector
Alessio Piucci
VELO TT TRICH1
RICH2
Muon stations
HCAL
ECAL
![Page 72: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/72.jpg)
Forward Tracking (in reality)
2016 real data, p – Pb collision
Alessio Piucci
![Page 73: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/73.jpg)
Forward Tracking (in reality)
2016 real data, p – Pb collision
Alessio Piucci
![Page 74: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/74.jpg)
Alessio Piucci
‘Retina’: the idea
Biological inspiration:
- visual cortex has specialized neurons (shape, colour, …)→ track templates
- each neuron is sensitive to a small region of the retina→ template the phase space into cells
- strength of the response prop. how close the actual image is to the tune→ weights from templates
![Page 75: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/75.jpg)
Alessio Piucci
‘Retina’: realistic environment
- realistic benchmark:track reconstruction at LHCb Upgrade @ 40 MHz
- 3D tracks in magnetic field: 5D problem
- 2D x 3D factorisation:
(u, v) x (d, z0, k)
main parameters2D pattern recognition
Full LHCb Upgrade MC
perturbationsinterpolation of lateral cells
u
v
![Page 76: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/76.jpg)
Alessio Piucci
Linearized fit
Based on principal component analysis:- take your complex n-dim space- define a linear transformation:
project first m ‘more important’ variables to m axis
Measure a track by m parameters:
pi = p
i(x)
→ pi ≈ p
i(x
0) + w
i * (x – x
0)
x0 = hits from template tracks
wi = pre-calculated constants
nhits
dim space
(nhits
- m) dim plane
![Page 77: Hough transformation and Kalman filter in tracking · 2018-11-20 · Hough transformation Wikipedia: “Feature extraction technique used in image analysis, computer vision, and digital](https://reader034.vdocument.in/reader034/viewer/2022050419/5f8efa720e648862231b12e0/html5/thumbnails/77.jpg)
Alessio Piucci
Linearized fit: comments
- is just a set of scalar products:highly-parallelizable on hardware (FPGA, GPU)
- suited for fast and precise online track fitting
- complexity of the system case-by-case depending:your detector and physics region defineshow many constants you will need
- it makes really sense only if you perform onlinetracking on hardware