gtc template poster-submission …...0.00001 0.0001 0.001 0.01 0.1 1 10 0 10 20 30 40 50 60 esidual...
TRANSCRIPT
0.00001
0.0001
0.001
0.01
0.1
1
10
0 10 20 30 40 50 60
Squa
redno
rmofthe
residu
al
Itera3ons
ChoiceoflinearsolverRed‐blackGaussSeidelCG‐blockJacobiprecondi>onerCG‐NoPrecondi>oner
Algorithmic Exploration
0
20
40
60
80
100
120
140
160
CPU(IntelQ9550) GPU(GTX480)
second
s
Run3me
78x speedup
0
1
2
3
4
KLT LDOF
Trackingerror
With occlusion Without occlusion
1.E+00
1.E+01
1.E+02
1.E+03
1.E+04
1.E+05
1.E+06
KLT LDOF
Pointstracked
KLT tracker cannot track the foot
LDOF tracker tracks large displacements 2 2.5 3 3.5 4
CPU version
GPU version
Average Angular Error (Middlebury dataset)
Application Accuracy
With the amount of video material, e.g. on YouTube, increasing rapidly, there is growing interest in video analysis tools. Motion analysis is a pre-requisite for video applications such as semantic video analysis, intelligent video editing, video summarization etc. All these applications require the ability to track long range motion. Such analysis requires tracking points densely over many frames accurately. Optical flow provides the means to achieve this.
Optical Flow involves computing the motion vectors (“flow field”) between the consecutive frames of a video. Optical flow computation solves a non-linear optimization (energy minimization) problem. We use the Large Displacement Optical Flow (LDOF) algorithm, which is crucial for point tracking in real world videos. Our CUDA-implementation of the LDOF algorithm provides a 78x runtime improvement over an auto-vectorized single-threaded implementation, enabling its use in a highly accurate point tracker.
Video Point tracking
• For more detailed information, please refer to the following paper: Narayanan Sundaram, Thomas Brox, Kurt Keutzer, “Dense Point Trajectories by GPU-accelerated Large Displacement Optical Flow”, European Conference on Computer Vision, Greece, September 2010.
• Point tracker based on LDOF outperforms other trackers - 46% better than Kanade-Lucas-Tomasi (KLT) tracker and tracks up to 3 orders of magnitude more points - 66% more accurate than the Particle Video tracker while handling large displacements and tracking an order of magnitude more points
• Runtime for computing LDOF on a pair of 640x480 frames is only 1.8 seconds (comparable to other GPU-based optical flow algorithms)
400X points tracked
46% more accurate
ASPALDOF Application Architecture
InputFrames
Computedu,dv
Updateu,v
ComputeData,Smoothness,
HOGMatchfactors
AssemblematrixA
SolveA.x=b
Warpframe
Interpolateu,v
Updatedu,dv
Downsampleframes
SparseMatrix‐VectorMul>ply
BLAS1
ApplyPrecondi>oner
Preconditioned Conjugate gradient solver
Fixed point iterations
Coarse to fine refinement
OutputFlowfield
BLAS1BLAS1
BLAS1BLAS1BLAS1
HistogramofGradients(Densematching)
Results
Conclusion ComparisontoKanade‐Lucas‐Tomasitracker
ComparisontoPar3cleVideotracker1
10
100
1000
Gauss-Seidel Red-black Precond. Conj. Gradient
mill
isec
onds
Time for convergence (Residual < 10-2)
PCG is 47x faster than GS for similar accuracy
Timebreakdown
HOG Creation
HOG Match
Linear solver
Matrix creation
Interpolation &
Warping Downsampling
Filter
Other
HOG Creation!
HOG Match!
Linear solver!
Matrix creation!
Interpolation &
Warping!
Downsampling!
Filter!
Other!
Memcopy CPU-GPU!
Serial Parallel
0
0.5
1
1.5
2
2.5
3
Particle Video LDOF
Tracking Error
66% more accurate
1.E+00
1.E+01
1.E+02
1.E+03
1.E+04
1.E+05
1.E+06
Particle Video
LDOF
Pointstracked
• The linear solver is a significant component of the overall application.
• Detailed algorithmic exploration is necessary to pick the right solvers for serial and parallel platforms.