Real-time Stereo on Commodity Graphics Hardware
by Ruigang Yang and Marc
Pollefeys
Introduction ||
Performance || Publications ||| Software
|| Acknowledgment
What's
new
- 10/25/2005: Linux version available (Courtesy of
Philippe Martin)
- 06/25/2003: Updated demo available.
- 06/23/2003: Major page update.
We demonstrate a stereo algorithm that is implemented using only the
OpenGL APIs. It allows a standard Graphic Processor Unit (GPU), which can be
found in every commodity PC with an accelerated graphics card, to perform
over one hundred millions of disparity evaluations per second.
At the heart of our method is a multi-resolution approach
to achieve good results close to depth discontinuities as well as on low
texture areas. We combine the sum-of-square-differences (SSD) dissimilarity
measures for windows of different sizes. This is, in fact, equivalent to using
a large weighted correlation kernel with a pyramid shape. By utilizing the
mipmap functionality on the graphics hardware, we can compute this
dissimilarity measure very efficiently.
 |
|
Output size
|
Search range
|
Time
|
Img. Update
(ms)
|
Read back
(ms)
|
Disp. Calc.
(M/sec)
|
|
(ms)
|
(hz)
|
|
5122
|
20
|
30.9
|
32.3
|
0.4x2
(VGA)
|
6.0
|
139
|
|
50
|
73.1
|
13.7
|
164
|
|
100
|
142
|
7.04
|
176
|
|
2562
|
20
|
9.9
|
101
|
0.16x2
(QVGA)
|
1.5
|
78.5
|
|
50
|
23.1
|
43.3
|
110
|
|
100
|
46.1
|
21.7
|
124
|
|
Performance
data on a Radeon 9700 card with overhead to update images and
read back results.
|
Ruigang
Yang and Marc Pollefeys. Multi-Resolution
Real-Time Stereo on Commodity Graphics Hardware,
page 211-217, CVPR 2003
Accompanying Video
Demo version 2.0 (06/2003) : Download.
(Linux version)
- Use FRAGMENT_PROGRAM (requiring a card supporting
FRAGMENT_PROGRAM, for example, ATI Radeon 9700 and above)
- It is a preliminary version with little polish. It has
been tested on an ATI Radeon 9700 card and a GeForce Fx5900 card. The
main binary must start in the same directory where the text files for
fragment programs (ps*.txt)
exist.
Demo version 1.0 (03/2003) Download
- Use NV_REGISTER_COMBINER (requiring
GeForce2 and above)
This work was supported in part by the NSF grant
ISS-0237533, and by a generous 2002-2003 Link
Foundation fellowship
Hua Yang
ported demo version 1.0
Justin Hensley ported demo version
2.0 to Linux and added firewire support (this code is available upon request)
Last updated:
10/25/2005
BACK-->