Professional Documents
Culture Documents
COMP.SGN-320
3D and Virtual Reality
Autumn 2022
Introduction
• Previous lectures were about how HVS
perceives visual scenes in 3D and how
such scenes are formally represented
• This one is about how to acquire the
content to be represented
• Computer graphics content is typically
modelled, not sensed (TBD in the next
lecture)
8.11.2022 2
Introduction
Coding
Real Sen
sin
g
Representation Rendering Display
odeling
M
Synthetic
11/8/22 3
Depth sensing: Passive
• Passive Range Sensors
– Do not require any direct control or contact
over the observation to acquire depth data
– Rely only on sources of indirect natural
occurrence such as ambient light
– Various approaches: Depth from focus, Depth
from Shape, Depth from motion, etc.
Depth Capture: Active
• Use properties of some controlled sensing
signal emitted by the sensing device to estimate
the properties of observed objects
• Distance, shape, pose, direction of motion, etc.
• Active Triangulation, Interferometry, Structured
Light, Time-of-Flight
Capture models
8.11.2022 6
Pinhole camera model (again)
• Ideal model based on the concept of the
pinhole camera (camera obscura)
• No lens
• No defocus blur, images are perfectly
sharp
• Equivalent to a camera with a small
aperture (large f-number)
8.11.2022 7
Pinhole model equation (again)
y
f P(x,y,z)
I(u,v)
Optical Optical axis
center z Principal point
u
x
Image plane
11/8/22 9
Pinhole model as a matrix
𝑢𝑧 𝑓! 0 𝑐! 𝑥
𝑣𝑧 = 0 𝑓# 𝑐# 𝑦
𝑧 0 0 1 𝑧
𝑢𝑧 1 𝑢
𝑣𝑧 = 𝑣
𝑧 𝑧 1
11/8/22 10
Camera intrinsics
• The internal parameters of the camera are referred to as
camera intrinsics
• The matrix is often referred to as K
• K moves points from global 𝑥, 𝑦, 𝑧 -space to the
camera coordinate system
• Division by z (in some sources, k) projects the
points to (u, v) coordinates on the image plane
11/8/22 11
y
Camera pose in space
x
z P(x,y,z)
I(u,v)
Optical Optical axis
center Principal point
u
O(xc,yc,zc) Image plane
11/8/22 13
y
Op
Camera pose in space
cen tical
ter
x
z
I(u
,v )
u P ri
nc
ipa
lp
oin
Im
t P(x
ag
ep Op ,y,z
lan
e
tic
al
ax
is
)
• Solution: move everything else in the scene to the opposite
direction and rotation
• Functionally equivalent, it is the relative pose that matters
11/8/22 14
y
Camera pose in space
x
z P(x,y,z)
I(u,v)
Optical Optical axis
center Principal point
u
O(xc,yc,zc) Image plane
Op
Camera pose in space
cen tical
ter
x
z
I(u
,v )
u P ri
nc
ipa
lp
oin
Im
t P(x
ag
ep Op ,y,z
lan
e
tic
al
ax
is
)
• Solution: move everything else in the scene to the opposite
direction and rotation
• Functionally equivalent, it is the relative pose that matters
11/8/22 16
Camera projection matrix
• Combines both camera intrinsics and extrinsics
• Describes completely how a point with position (𝑥, 𝑦, 𝑧) in the world
coordinate system is captured by a camera setup
𝑃 = 𝐾 𝑅#×# 𝑇#×%
• The pixel position (𝑢, 𝑣) of world point (𝑥, 𝑦, 𝑧) is found in
𝑥
𝑢′ 𝑦
homogeneous coordinate notation 𝑣′ = P ,
𝑧
𝑘 1
&
𝑢, 𝑣 = 𝑢 ⁄𝑘, 𝑣 ⁄𝑘&
11/8/22 17
Multi-camera configurations
• The camera projection matrices can be used to project
data between multiple cameras
– “What does this the scene shot from camera A look like from
camera position B?”
– E.g. range sensor data to a color camera
• Need to know
– Intrinsic parameters of all cameras
– Extrinsic parameters between all cameras (relative to each
other)
– Distance of the points from the camera(!)
11/8/22 18
Lens distortion models
• Pinhole model does not account for any lens effects
• Even with small aperture, lenses still affect the direction
of incoming light rays
– Not because they are supposed to, but because optics are not
ideal
• Can be considered
– Explicitly effect by effect (physics)
– Implicitly by the resulting net effect (image processing)
8.11.2022 19
Radial distortion
Barrel distortion Pincushion distortion
8.11.2022 20
Tangential distortion
• Caused by miss-alignment of the lens vs sensor
8.11.2022 21
Camera calibration
• Extraction of camera parameters
• Parameters correspond to the pinhole model
• Intrinsic parameters
– How the camera forms the image
– Camera matrix; lens distortions
• Extrinsic parameters (relative to something)
– Position
– Rotation
https://www.vision.caltech.edu/bouguetj/calib_doc/htmls/example.html
8.11.2022 24
Corner extraction
8.11.2022 25
Corner extraction
8.11.2022 26
Model fit
8.11.2022 27
Intrinsic calibration
8.11.2022 28
Calibration quality
8.11.2022 29
Calibration quality (corrected)
8.11.2022 30
Extrinsic (single camera)
8.11.2022 31
Distortion models
8.11.2022 32
Stereo calibration
8.11.2022 33
Extrinsic stereo parameters
8.11.2022 34
Thin lens model
• Real cameras have lenses
https://en.wikipedia.org/wiki/File:Lens3.svg
8.11.2022 35
Thin lens model
• Objects at different distances create blurs of
different sizes
https://en.wikipedia.org/wiki/File:DefocusBlur.png
8.11.2022 36
Sensing methods
Passive - Active
8.11.2022 37
Triangulation
8.11.2022 39
Stereo matching (sparse)
• Sometimes it is enough to find depth information
which doesn’t cover the whole scene
– Object detection
– Self-calibration
– Depth range estimation
• Certain things in images are easier to detect and
match
• Focusing on them is fast and robust
=> Feature matching
8.11.2022 40
Feature matching
• Invariant features
– Gradient-based, e.g. corners
– Scale-space based, e.g. SIFT (DoG),
Laplacians, multiscale differentiators
8.11.2022 41
Feature matching
8.11.2022 42
Interest point detection
• Define a measure to measure how interesting a point (+
it’s neighborhood) is
• For example:
– Change of gradient direction along an edge contour (Kitchen-
Rosenfield)
– Change of gradient direction along an edge contour over a
bicubic polynomial surface (Zuniga-Haralick)
– Magnitude of change of gradient (Harris-Stephens)
– Response to elementary corner models (Trajkovic-Hedley)
• Threshold the values to pick interesting points
8.11.2022 43
Harris-Stephens corners
2
8.11.2022 44
Harris-Stephens corners
8.11.2022 45
Harris-Stephens corners
8.11.2022 46
Feature computation
• Computing a description of the local neighborhood
• E.g. describing the intensity distribution around the point
or aggregate of filter responses etc.
• Depending on the feature, it may (try to) be invariant to
– Scale
– Rotation
– Perspective
– Exposure
• Similarity between points is determined based on
similarity of the descriptors
8.11.2022 47
Rotational invariance
8.11.2022 48
Rotational invariance
• E.g. rotate image patches to align the gradient direction
with a common axis
8.11.2022 49
Scale invariance
8.11.2022 50
Scale invariance
• Searching for features in multiple scales
8.11.2022 51
Affine invariance
8.11.2022 52
Camera self-calibration
• Rely on the captured images only
• Fundamental matrix reconstruction
8.11.2022 54
The epipolar geometry
e e’
C,C’,x,x’ and X are coplanar
8.11.2022 56
The epipolar geometry
8.11.2022 57
Fundamental matrix
• The fundamental matrix satisfies the condition
that for any corresponding points 𝒖7 and 𝒖8 in
two images A and B
𝒖!" 𝐹𝒖# = 0
𝑢#
𝑢! 𝑣! 1 𝐹 𝑣# = 0
1
8.11.2022 58
Examples of epipolar lines
8.11.2022 59
Examples of epipolar lines
• Geometric derivation
8.11.2022 61
Finding F
• If you need to find the fundamental matrix, you
likely don’t know much of the cameras
𝑢#
𝑢! 𝑣! 1 𝐹 𝑣# = 0
1
8.11.2022 63
Finding F
• We need 7 (theoretically)
– 9 parameters, but F is rank 2 and we forget scale
8.11.2022 64
Random Sample Consensus
(RANSAC)
1. Obtain list of tentative matches
2. Select a few
3. Recover the fundamental matrix
4. See if a significant number of tentative matches
agree
5. If not, goto 2.
8.11.2022 65
Essential matrix
• If you know the cameras, but not their pose
• Applying the inverse of the camera matrix K to
the coordinates normalizes them
8.11.2022 66
Essential matrix
• Unlike F, can be decomposed to R and t (kinda)
• Singular Value Decomposition of E leads to 4 possible
solutions (after skipping some matrix magic)
• Only one of them produces all points in front of both
cameras
• Even then, scale is not recovered
– We know in which direction the camera is, but not how far
– Can’t be solved without some extra information
8.11.2022 67
Stereo matching (dense)
Right view
8.11.2022 68
Stereo camera pose
• To do efficient stereo, certain requirements are in place
1 0 0 𝑏
– Relative camera pose should be 𝑅 = 0 1 0 , 𝒕 = 0
0 0 1 0
– I.e. optical axis are parallel (in 3D space)
– Camera location differs only in horizontal direction
– Horizontal pixel rows are parallel
8.11.2022 69
Stereo rectification
• Usually before doing any correspondence search, stereo
pairs are rectified
– Not an absolute requirement, but makes the task easier to
implement
• Rectification is the process of post processing already
captured data to be as if it had been captured with an
ideal setup
• Necessary input: intrinsic and extrinsic calibration data
• Since we don’t have depth information, only 2D images,
what can be done?
8.11.2022 70
Stereo rectification
ty R?
R?
R? tz
ty
ght Camera
Rf
Left Camera
tx
R?
tz
• Reordering (resampling) of the captured rays
• Rotation does reveal areas which weren’t captured
8.11.2022 71
t
Stereo triangulation
• The relation between the
P = ( x, z )
displacement (disparity)
$∗&
and the depth is 𝑧 =
'
d = xL* - xR*
xL* x R*
z
f
(0,0)
b
8.11.2022 72
Stereo matching (dense)
• Practical stereo pipeline includes
– Matching cost computation
– Cost aggregation
– Disparity computation
– Disparity refinement
Rectified
stereo pair Cost volume Cost volume Disparity map Disparity map
8.11.2022 73
Global methods
• Based on e.g Hidden Markov models
• Minimize the cost volume function together with
additional smoothness term
• Csmooth - define a smoothness penalty e.g. with
respect to 4-connected neighborhood
y
d
x
Matching cost computation
• In order to determine which points are the same,
a similarity measure (matching cost) must be
defined
• Several variants exist
– L1, L2
– Normalized cross correlation
– Census
– …
8.11.2022 75
Dense stereo - Cost volume
• 3D Cost Volume matrix, specified as a per-pixel
differences of left and right channels
𝐶()*+ (𝑥, 𝑦, 𝑑) = 𝐿 𝑥, 𝑦 − 𝑅(𝑥 − 𝑑, 𝑦)
• Dissimilarity metrics, such
as SSD or SAD
height
• More comprehensive metrics
– mutual Information
dissimilarity
– cross-correlation
– rank-transformed window
difference
width
disparity
Cost aggregation
• Per-pixel matching costs are usually not reliable
– same pixel value can appear multiple times in
different points
– noise in images
– uniform areas
– repetitive patterns
– non-Lambertian reflections in the scene
8.11.2022 77
Cost aggregation
• Assumption: nearby pixels are likely parts of the
same object and thus with similar depths
• Enforced by cost aggregation
• Implemented by filtering the costs
– Averaging, edge-aware, color-guided…
– The more filtering, the more robust result, but less
details are preserved
Global versus local methods
• The bulk of computations for the local methods
goes for the cost volume aggregation
• Global methods are more precise for the price of
higher complexity
• Global methods spend time optimizing the cost
volume based on some criteria
Graph cuts
• Energy minimization via graph theory
t cut
labels
Disparity labels
“cut”
L(p)
y
y
s
p
x
x
Cost aggregation
• Pure Cost Volume usually produces extremely
noisy depth estimates
– noise in images
– uniform areas
– repetitive patterns
– non-Lambertian reflections in the scene
n RGB, sum the absolute differences of the three channels and use that as a cost.
Cost aggregation
regation
e aggregation is per-slice filtering of the Cost Volume to make it more consistent withi
• Aggregated
mension. cost isonathe
Performing this operation filtered costis equivalent to block matchin
cost volume
• estimation).
motion For example, The filterusing
windowlocal neighborhood
size should be a parameter in your implement
𝐶 , , 𝐶 , , 𝑊 , ,
, ∈ ,
𝐶 , , 𝐶 , , 𝑊 , ,
, ∈ ,
Cost aggregation
they follow the normal distribution. In the case of color weighted filtering, the weights are computed
from the associated color image. Hint: help imfilter, guidedfilter
Spatial proximity (Euclidian distance) between pixels p and q in coordinate space (u,v):
Δ𝑐 𝐿 𝐿 𝑎 𝑎 𝑏 𝑏
Weights:
𝑐
W p, q exp exp
A suitable starting point for the values of and is for instance 10 (assuming the image intensities a
Examples of cost aggregation
a gmin
ation, it would be possible to fit a quadratic function to the cost vector along the
Cost Value
ed). MINb
y
MINa
d
disparity
x
fferent aggregation
• Confidence approaches
measures
regation methods for different
– Left-to-Right window sizes
correspondence: in terms
marks of the
occluded BAD metric
pixels
– Peak Ratio: shows how ‘sharp’ the minimum is
block matching) PKR = |MINb-MINa|/MINb
w (only considering spatial proximity)
Stereo matching summary
• Passive, low energy consumption
• Uses conventional cameras, cheap
• Depth precision drops inversely to distance
• Small baseline: robust, low depth resolution
• Large baseline: occlusions, higher resolution
• Sensitive to texture of the scene
8.11.2022 87
Estimating depth
08/11/2022
Occlusion filling and refinement
• Occlusion filling is required for areas
where there is no line of sight for both
cameras
Problems
• Not all content is visible from both cameras
– Occluded areas have no correct matching result
– Occlusions must be at least detected, and optionally
filled with some reasonable data
• Matching points relies on texture
– No texture, no matches, no depth
– Texture can be superimposed by lighting (“active
stereo”)
8.11.2022 90
Occlusion filling and refinement
• Methods include
– Median / weighted median
– Color segmentation of the associated image
(smoothness, plane fitting)
– Iterative filling by propagating high-confidence
disparity from well-matched areas
Stereo depth resolution
• Due to the inverse relation (disparity ~ 1/depth),
depth resolution is a function of depth
𝑏∗𝑓
𝑧=
𝑑
8.11.2022 92
Multiview depth
• What if you have multiple views
with arbitrary camera locations?
• Rectification gets problematic
• Plane sweeping1
– Sweep hypothetical depth planes through the volume
– At each reference image pixel, which plane provides the lowest
cost?
– That is the best estimate of depth for that pixel
[1] Collins, R.T., "A space-sweep approach to true multi-image matching," Computer Vision and Pattern Recognition, 1996.
Proceedings CVPR '96, 1996 IEEE Computer Society Conference on , pp.358,363, 18-20 Jun 1996
8.11.2022 93
MULTIVIEW DEPTH ESTIMATION
Plane sweeping
Olli Suominen, Atanas Gotchev
Plane sweeping
Olli Suominen, Atanas Gotchev
Plane sweeping
Olli Suominen, Atanas Gotchev
Plane sweeping
Olli Suominen, Atanas Gotchev
Plane sweeping
Olli Suominen, Atanas Gotchev
Plane sweeping
Olli Suominen, Atanas Gotchev
8.11.2022 100
Optical markers
• Sometimes the objective can be to capture 3D
information from known objects
• Then it may be enough to have only a few
captured depth points
• However, those points should be robust and
always the same points
– Rules out feature based matching
• Optical markers can be used to make sure
certain points are very reliably detected
8.11.2022 101
Case: Motion capture
• Movie & game industry standard for creating digital
animations
• Optical markers are worn by an actor
• Markers are tracked through cameras
• Known object model is fit on the tracked point cloud
8.11.2022 102
Optical markers
• Most optical tracking systems operate in the (near)
infrared spectrum to avoid distracting human observers
• Infrared cameras are positioned around the capture
space
8.11.2022 103
Optical markers
• Location of cameras is pre-calibrated
• Each camera has their own IR-source
– Optical markers are retro-reflective spheres
• Can also be done with active markers
– Higher cost, more maintenance (batteries)
– Allows larger distances, more robust
8.11.2022 104
Optical markers:
Blob detection
• Each marker is seen as a high intensity spot on each
camera
• For all camera images:
1) Threshold the image to detect bright blobs
2) Remove too small or too large blobs
3) Remove non-circular blobs
4) Extract the centroid of each blob (assumed to be a
marker)
• End result: a number of 2D locations for markers on
each camera plane
8.11.2022 105
Optical markers:
3D reconstruction
• Each camera location is known based on pre-
calibration
• It becomes the familiar triangulation problem
• Each marker position marks a ray of potential
locations from each camera
8.11.2022 106
Optical markers:
3D reconstruction
• However, there are no identifying features in the
markers
• Additionally: noise, calibration error
– Rays from each marker do not intersect correctly
even when markers are labeled correctly
• Which bright spot is which?
• Which configuration of markers in 3D best
explains the detected 2D marker locations
8.11.2022 108
Optical markers:
Model fitting
• Optimization result: probable locations of
markers in 3D space
• Prior information: Properties of the object the
markers are attached to
• Simple case: object is rigid and has a rigid
constellation of a few markers attached to it
– Object has 6 degrees of freedom
– Just need to match the observed constellation to the
template
– Iterative Closest Point (ICP) or similar
8.11.2022 109
Optical markers:
Model fitting
• A more challenging case: Object consists of several
parts moving in relation to each other with markers in all
parts
– Such as a human actor
• Still, certain constraints apply
– Joints are in known locations and can rotate in specific ways
– Bones have fixed length
• The outcome: full motion of the actor
– Expressed as the individual movement of joints and bones
– Can be mapped to virtual models with the same skeletal
structure
8.11.2022 110
Coded aperture
• Lens blur is also a depth cue
• Distance of object can be determined from the size of
the blur
• For a single point light source, it’s simple
– Measure the size of the circle
– Focus blur (from symmetric aperture)
is symmetric
8.11.2022 111
Coded aperture
8.11.2022 112
Coded aperture
C. Zhou and S. Nayar, "What are good apertures for defocus deblurring?," Computational Photography (ICCP), 2009 IEEE International
Conference on, San Francisco, CA, 2009, pp. 1-8.
8.11.2022 113
Structured light
z
f
8.11.2022 114
Structured light
8.11.2022 115
Gray code pattern
• Something unique can be a complex pattern
(e.g. pseudorandom)
• There are ways to unambiguously label points in
the scene
– Avoids correspondence search
– Needs time multiplexing
x http://www.cs.middlebury.edu/~schar/papers/structlight/p1.html
8.11.2022 116
Time-of-flight cameras
ACTIVE SENSING
8.11.2022 117
Sampling via scanning
• A 1D range detector is used with a 1D or 2D deflection
unit (rotating mirrors)
rotating mirror
Target
laser
range
detector
8.11.2022 118
Sampling via scanning
8.11.2022 119
Sampling via matrix
• Same distance measurement principles
• Instead of a single sensitive element, matrix of
elements (CCD / CMOS sensor)
• Some methods require very sensitive or very
fast sensing
– Doing it in a matrix is more challenging, more
expensive
– Typically, depth sensors have lower spatial resolution
to compensate
8.11.2022 120
Interferometry
Laser
Pulser
Receiver
TDC Channel
(Time to digital
Converter) Receiver
Channel
Target
Optics
Pulsed Modulation Systems
• Short period of the pulse
• Effective transmission of high amount of energy
• Improves quality of scattered signal
• Enables operation of long distance range and use of
cheap low-sensitivity sensors
Laser
Pulser
Receiver
TDC Channel
(Time to digital
Converter)
Receiver
Channel
Target
Optics
Pulsed Modulation Systems
• Short periods of pulses allows emitting signals of
low optical power (important for the eye-safety)
• Difficulties in providing good repetition rates of
short high energy pulses
• Currently, the practical implementation requires
expensive laser diodes
– The repetition rate is too low (~10 kHz)
for real-time camera solutions
• Currently used in laser range-finders
Direct time of flight measurement
• Measuring the round trip time, the distance is
calculated by
t 8 m
d= ; c = 3 ×10
2c sec.
• 1 ns corresponds to a distance of 15 cm
• Time measurement is critical and has to be very
accurate
08.11.22 126
Direct time of flight measurement
08.11.22 127
Indirect time of flight
measurement
• The problem of measuring time can be converted to
measuring amplitude
• E.g use of an optical shutter in front of the receiver,
triggered to close a short time after the laser pulse was
emitted
– The earlier the impulse returns, the more of it will be allowed to
pass through the shutter to the receiver
08.11.22 128
Optical Shutter Systems
• Based on indirect measurement of the time of flight using
a fast shutter technique
• The basic concept utilizes a short Near-Infra-Red (NIR)
light pulse, which represents a light front-wave called
“light wall”
• Light wall has properties of a spherical thick
surface with a finite width
8.11.2022 129
Optical Shutter Systems
8.11.2022 130
Continuous Wave Methods
• CW techniques are based on the idea that the phase of
the reflected signal is shifted according to the distance to
the target
• It is possible to use the light waves directly for the
measurement (interferometry)
• Another possibility is to modulate the optical carrier
(laser) intensity using RF (radio frequency) signals
– A.k.a. “optical RF interferometry”
•
08.11.22 131
Continuous Wave Methods
• Phase shift measurement
– Light is modulated with sine wave
– Received signal contains sine wave
– Phase is compared to phase of sender signal with
electrical mixer
Modulated Oscillator
Transmitter
Phase
Mixer / &
Receiver LowPass Amplitude
08.11.22 132
Continuous Wave Methods
• Problem:
– Ambiguity: (modulo l/2), we need large l
– Accuracy: (proportional to l), we need small l
• Solution:
– use two or several sine waves
+ =
08.11.22 133
Continuous Wave Methods
• Chirp Modulation
– Light is modulated with sine wave of linear growing
frequency
– Mixing of sender and receiver signal results in beat
frequency proportional to delay and thus proportional
to distance
chirp signal
frequency of
above signal
08.11.22 134
Photonic Mixer Device Camera
Captured Scene
8.11.2022 141
Camera Depth Resolution
Calibration
• Depth estimation by PMD cameras in most
cases produces noisy results
• Such noise has complex nature and depends on
many different aspects of ToF capturing
– Ambient light, wrap-around error, sensor noise,
wiggling, motion, etc
CWT Camera Depth Resolution
• The active range resolution depends on the chosen modulation
frequency: NIR wave with 20 MHz is about 40cm - 7.5m
• Reflected signal attenuates depending on the distance
• Amplitude attenuation is used as confidence metric
Chapter 2. Preliminaries
CWT Camera Wrap-Around Error
• PMD cameras cannot directly detect whether a
measurement of depth is beyond the operating range
• Demodulation process of phase shift experiences
aliasing which arises from the periodicity of modulation
signal
• Depth aliasing is called wrap-around error
8.11.2022 145
CWT Camera Object Reflectivity
Noise
• Dark painted objects have low reflectivity for
NIR wavelengths, and may be masked by ambient
signals
• Reflectivity from glossy objects can easily over-saturate
the detector
Synchronization, interfaces,
bandwidth
8.11.2022 149
Camera synchronization
• If anything in the scene is dynamic, synchronization of
cameras is essential for 3D sensing
• Frames have to be
taken at the same time
– Motion of objects
between frames
– Motion of camera
08/11/2022
Camera synchronization
• Requires implementing some kind of triggering
mechanism (master-slave, etc.)
• Best case: sync two sensors on the same chip
(e.g. mobile phone)
• Worst case: sync several different sensors
attached to different sensors (e.g. acquisition
cluster)
08/11/2022
Camera interfaces (external)
• Gigabit Ethernet
• USB 3.0
• CameraLink
• CoaxPress
• FireWire
8.11.2022 152
Camera sync: external
• Some cameras allow sending an external trigger
signal which takes the shot
• Daisy chaining: one camera triggers another
• Special-purpose hardware
– Device dedicated to propagating external
synchronization signals for triggering the cameras;
– Precise synchronization;
– Expensive, technically complex, not very flexible
08/11/2022
Camera sync: software
• Send the sync signal through the image data
interface/channel
• Depends on the interface
• Affected by latency, quality of the connection,
support by devices
08/11/2022
Data throughput
• Sensors produce lots of data (24 bit FHD@30Hz
~180 MB/s)
• That data should go somewhere from the sensor
• Interface bandwidth
– Gigabit Ethernet (125 MB/s)
– USB 3.0 (625 MB/s)
– CameraLink (255-680 MB/s)
– CoaxPress (780 MB/s)
– FireWire (98 MB/s)
– Internal custom bus (?? MB/s)
08/11/2022
Data throughput
• Storage bandwidth
– HDD (60-150 MB/s)
– SSD SATA3 (200-550 MB/s)
– SSD PCI-express ( 2700 MB/s)
– Gigabit network stream ( 125 MB/s)
• Bandwidth limits the choice of
– frame rate ( 24, 30, 48, 60, 120 Hz...)
– frame resolution (VGA, HD, FullHD, 4K, 8K...)
– dynamic range (8b, 12b, 16b...)
– number of cameras (stereo, 2+2, 40, 300...)
08/11/2022