3D visionComparison

Depth camera minimum distance vs FOV for close-range hand tracking

How a depth camera's minimum distance vs FOV trade plays out for hand tracking at 0.10-1.00 m: the two formulas, a fit example and the class comparison.

LumaSpec Vision11 min read Share on LinkedIn

On this page 9 sections
  1. 01Minimum depth distance: why stereo refuses close range
  2. 02FOV: why the frame clips the hand first
  3. 03Worked example: where a 20 cm hand fits on an 87° × 58° depth sensor
  4. 04The depth-sensing classes compared
  5. 05Tuning the near limit on a stereo module
  6. 06Which stocked depth cameras fit a 0.10-1.00 m hand station
  7. 07Checks before you order
  8. 08When the usual answer is wrong
  9. 09Questions

A depth camera fails twice at close range, and both walls arrive near the same distance. The disparity search refuses depths closer than the module's minimum depth distance, and the field of view gets too narrow to hold a spread hand. For a hand-pose station working from 0.10 to 1.00 m, the buying decision is therefore a single trade: pick the widest-FOV depth camera whose documented minimum depth distance sits at or below your closest hand position, then recover the near-range accuracy with disparity shift, reduced resolution and post-processing.

This comparison gives the two formulas that set the limits, a worked example for a 20 cm hand, the depth-sensing classes ranked for this range, and the tuning sequence that took a narrow stereo module from a documented 0.30 m to a measured 13 cm. For what happens after the capture, the hand and fingertip pose estimation guide covers the pipeline; this comparison decides the camera.

Minimum depth distance: why stereo refuses close range

A stereo depth camera matches each block of the left image to the same block in the right image. The shift between the two, the disparity d in pixels, grows as the object comes closer, and depth follows an inverse law: depth Z equals focal length f in pixels times baseline B, divided by disparity. The matching engine only searches disparity from 0, which is infinity, up to a maximum d_max, so the closest depth it can return is f·B/d_max. A hand nearer than that produces disparities the engine never tests, and the depth frame comes back full of holes at exactly the distance the application cares about.

Z = f × B / d Z_min = f × B / d_max

Two settings move that wall closer, and each one charges for the move:

  • Disparity shift translates the whole search window toward higher disparities. The near limit moves closer and the far limit moves closer with it, because the window keeps its width — far range is what you pay. The useful shift also shrinks as the true disparity of the working distance grows, so shift buys the last centimetres, not the last metre.
  • Resolution moves f. Focal length in pixels scales with the pixel count, so halving the linear resolution roughly halves Z_min at a fixed d_max. The charge is precision: fewer pixels per centimetre of hand.

Both knobs were exercised on the narrow-precision stereo module this comparison tracks. Its documented minimum depth distance is 0.30 m; at 480 × 270 resolution with a disparity shift of 30 it measured down to 13 cm. The tuning worked, and the capture still failed — because the hand no longer fitted the frame.

FOV: why the frame clips the hand first

The frame width at a distance Z is 2 × Z × tan(FOV/2), so the closer the hand, the narrower the frame, and the narrower the FOV, the further back the hand must sit. These are independent limits: the disparity shift that reaches the tuned 13 cm limit does nothing for the frame, and the frame gives out first. On that same narrow-precision module, tuned to its measured limit, the whole hand fitted the depth image only from 22 cm.

Two details make real depth frames tighter than the nominal FOV. Rectification aligns the depth image to the RGB image and crops it, so depth coverage is smaller than the RGB coverage a datasheet leads with. And blocks near the frame border match poorly, because part of the block falls outside the other sensor's view, so fingertips grazing the edge drop out even when the geometry says they fit. The depth-image FOV guide shows why stereo depth coverage comes out smaller than RGB coverage.

How sensor width, working distance and field of view set the focal length Rays from the edges of the sensor pass through the lens and spread to the edges of the field of view. The ratio of sensor width to field of view is the magnification m.CameraField of view (FOV)Working distance (WD)≈ fsensor width slensm = s / FOVf = WD × m / (1 + m)
How sensor width, working distance and field of view set the focal length. Rays from the edges of the sensor pass through the lens and spread to the edges of the field of view. The ratio of sensor width to field of view is the magnification m.

Worked example: where a 20 cm hand fits on an 87° × 58° depth sensor

Inputs, with their sources:

  • Hand span to fit, w = 0.20 m: an adult hand with fingers spread, the capture target of this use case.
  • Sensor class: wide-FOV stereo, 87° horizontal × 58° vertical.
  • Requirement: the cell wants hands as close as 0.10 m.

The rule: coverage per axis is 2 × Z × tan(half-angle), and the smaller coverage governs. Here the vertical half-angle is 29°, smaller than the horizontal 43.5°, so the vertical axis decides:

W(Z) = 2 × Z × tan(FOV / 2) Z_fit = w / (2 × tan(FOV / 2))

Arithmetic for the vertical axis: tan 29° = 0.554, so coverage = 2 × 0.554 × Z = 1.109·Z, and Z_fit = 0.20 m / 1.109 = 0.18 m. Horizontal check: tan 43.5° = 0.949, coverage = 1.898·Z, so that span needs 0.20 m / 1.898, about 0.11 m. The vertical axis governs at 0.18 m.

The outcome: an 87° × 58° depth sensor frames this spread hand from about 18 cm. At the working point the vertical frame is 1.109 × 0.20 m = 22 cm, about 2 cm of total clearance, so keep the fingertips off the border, where matching drops out first.

The decision, with thresholds:

  • Full-hand pose at a 10 cm closest position does not exist in this FOV class — geometry needs 18 cm and no setting changes that. Set the closest full-hand working point at 20 cm and require a documented minimum depth distance at or below that same figure.
  • Palm-only close-up: a 10 cm palm fits from 0.10 m / 1.109, about 9 cm, so the tuned stereo limit leaves margin there. Palm capture from the tuned limit works; full-hand capture does not start until 18-20 cm.

The depth-sensing classes compared

Coded light belongs in this comparison even though the dedicated short-range class of that generation is no longer offered: it projected a known pattern per pixel, which is why it held the accuracy benchmark on bare skin, and projected structured light carries the same idea into current modules. The classes still available for a 0.10-1.00 m hand station:

Depth-sensing class FOV (H × V) Minimum depth distance Hand fits whole from Character near 0.20 m
Narrow-precision stereo narrow 0.30 m documented; 13 cm tuned 22 cm measured Most accurate stereo here; more pixels per cm of hand
Wide-FOV stereo 87° × 58° specified below 0.30 m 18 cm geometric Wider frame, softer precision; post-processing recovers most of it
Long-baseline wide stereo wide 0.40 m documented none — its nearest depth sits beyond the fit distance The pick once hands stay beyond 0.50 m
Time-of-flight wide, fixed optics the documented range gate — No disparity search to starve; tolerates fast motion; softer finger-gap edges

Which class for which case:

  • Whole-hand pose with the closest position at 20 cm: wide-FOV stereo. Its 18 cm fit distance clears the hand and its specified minimum sits below the narrow module's documented 0.30 m.
  • Palm-only close-ups from the tuned limit: narrow-precision stereo, trading width you do not use for accuracy you do.
  • Hands that never come closer than 0.50 m: the long-baseline member. Its 0.40 m minimum clears the range, and the longer baseline tightens depth precision, which scales inversely with baseline.
  • Fast full-hand gestures from 0.30 to 1.00 m: time-of-flight, accepting softer edges for motion tolerance.

Tuning the near limit on a stereo module

The sequence, ordered so each step costs the least accuracy:

  1. Drop the depth resolution first, by decimation, at capture time if the pipeline allows per-capture control. Halving the linear resolution roughly halves the nearest measurable depth. The decimation guide shows how the pixel count shrinks before you blame the sensor, and the capture-time resolution and FOV guide covers changing both per capture.
  2. Add disparity shift in small steps. Every step moves the near limit closer and cuts the far limit, and the useful shift shrinks as the working disparity grows.
  3. Re-tune exposure and gain for the near window: at 13-30 cm the projected light is far stronger than at 1.00 m. The near-range gain and exposure guide walks the manual IR gain tune.
  4. Post-process for the pose pipeline: temporal filtering for flicker, hole filling for finger gaps. Re-check the depth scale while you are there — a point cloud cut off at close range is usually a scale mismatch, not a hardware fault.
  5. Accept the accuracy left over. Depth precision degrades with the square of distance and inversely with baseline and focal length, so the tuned near range stays usable; the disparity-quantization guide quantifies the residual height error, and the stereo edge accuracy guide covers edge deformation at distance.

Which stocked depth cameras fit a 0.10-1.00 m hand station

The largest 3D group in the store, laser profilers, is the wrong class for people: a profiler sweeps a laser line across a static part, and a moving hand needs an area depth sensor with exposed disparity controls. The stocked classes that match a hand station are projected structured light, which throws a known pattern so matching survives bare skin and motion, and time-of-flight, which measures per-pixel travel time with no disparity search to run out:

3D sensorsHikrobot MV-DPS200P-02 Projected structured-light 3D cameraMV-DPS200P-02
Type
Stereo / structured light
$8,829.00 · quotedView and quote
3D sensorsHikrobot MV-DT01WMU ToF sensing cameraMV-DT01WMU
Type
Depth / ToF camera
Price on requestView and quote
Specification MV-DPS200P-02 MV-DT01WMU
Repeatability (Z-axis) 0.02 mm @ 300 mm ±(10+0.5%depth1)mm
Resolution 3200 × 1944 @ RGB image; 1632 × 1264 @ depth map Depth map: 640 × 480 @ 30 fps; RGB image: 1280 × 1024 @ 30 fps
Data type Raw image (mono + color), Depth map, RGB-D image Intensity image, Color image, Depth map
Image output latency 0.5 ~ 1.2 s 133 ms
Dimension 126 mm × 90 mm × 50 mm 91 mm × 26 mm × 31.2 mm
Weight 0.74 kg Approx. 70 g
Temperature Working temperature: 0 °C to 45 °C (32 °F to 113 °F); Storage temperature: –30 °C to 80 °C (–22 °F to 176 °F) Working temperature: 0 °C to 45 °C (32 °F to 113 °F); Storage temperature: –30 °C to 80 °C (–22 °F to 176 °F)
Humidity 20% to 85% RH (non-condensing) 20% RH to 85% RH (no condensation)
Data interface Gigabit Ethernet (1000 Mbit/s) USB3.0
Power supply 24 V DC 5 VDC (USB-powered)
Power consumption 11 W @ 24 V DC 4.7 W @ 5 VDC (USB-powered)
Client software RobotPilot, HiViewer HiViewer
Price $8,829.00 · quoted Price on request

Values as printed in each product's data sheet; open a part for its drawing and full specifications.

The MV-DPS200P-02 is the projected structured-light 3D camera of the pair; the MV-DT01WMU is the time-of-flight sensing camera. Take whichever suits the motion profile, then read its printed minimum-range row against the 20 cm full-hand threshold or the tuned palm threshold, and its FOV rows against the 18 cm fit distance of the worked example.

Checks before you order

  • Measure the largest hand you must fit. The fit distance scales linearly with span: 17 cm fits a 58° vertical from 15 cm, 19 cm from 17 cm, 20 cm from 18 cm.
  • Fix the closest working distance in the cell, then require the documented minimum depth distance at or below it: 20 cm for a full hand, the tuned limit for a palm, 10 cm only where a module documents it.
  • Read the vertical FOV, not the horizontal: 29° of half-angle is what produced the 18 cm figure.
  • Match the depth frame rate to hand speed, and expect smear on fast fingers from the wrong shutter type; the global vs rolling shutter guide explains the trade for moving targets.
  • Confirm the SDK exposes the disparity search and shift controls if you plan to work closer than the documented minimum.
  • Mount with the projector clear of the hand's nearest pose, and fix the working distance as a repeatable position — the working distance and positioning guide covers the mount check.

When the usual answer is wrong

  • Palm-only or single-finger close-up: tuned narrow-precision stereo wins; the wide frame buys nothing you use and costs pixels per centimetre.
  • Hands that never come closer than 0.50 m: the long-baseline module clears that range with its 0.40 m minimum and tightens precision at distance.
  • Bare, textureless skin with no projector: matching starves and near-range depth drops out on fuzzy surfaces before geometry even matters — the close-range dropout guide covers the surface physics.
  • A static part instead of a person: laser profilers and fixed structured light do that job properly, and the pin-feature point cloud workflow is the right door into it.

Measure the hand, fix the closest distance, and shortlist by the two printed rows — minimum depth distance and FOV. The 3D sensors category and its camera finder filter by the printed ranges, the configurator's camera step builds the station around the two numbers from the worked example, and the 3D topic guides carry the integration details from here. If the row you need is missing from a data sheet, ask through the contact page.

Questions

What minimum depth distance does hand tracking need?

Set it from your closest hand position, not from a category label. Fix the nearest point the hand reaches in the cell, add about 10-20% margin, and shortlist modules whose documented minimum depth distance sits below that number. In practice that means 20 cm or less for full-hand pose, 13-15 cm for tuned palm close-ups, and 10 cm only where a module states it outright.

How wide does the FOV need to be to fit a whole hand?

Work from the vertical FOV, because it is the tighter axis. An 87° × 58° sensor frames a 20 cm spread hand from about 18 cm, a 19 cm hand from 17 cm, and a 17 cm hand from 15 cm — each computed as span divided by 1.109. Palm-only capture at a 10 cm span fits from about 9 cm.

Does lowering resolution really bring the minimum depth distance closer?

Yes, mechanically: the nearest measurable depth is focal length in pixels times baseline divided by maximum disparity, and focal length in pixels scales with resolution, so halving the linear resolution roughly halves the minimum. The measured pair here went from a documented 0.30 m to 13 cm with resolution plus disparity shift. The cost is depth precision, roughly doubled per pixel at the same distance.

Why was coded light more accurate than stereo on skin?

A coded-light projector paints a known pattern onto the scene, so every pixel carries a unique code and correspondence no longer depends on what the surface looks like. Passive stereo must find texture to match, and bare skin, nails and motion give it little to work with. Projected structured-light modules apply the same idea in current hardware.

Is a time-of-flight camera good for hands at 0.10-1.00 m?

For the upper part of the range, usually. Time-of-flight measures per-pixel travel time, so there is no disparity search to run out and fast hand motion is tolerated well. Its near limit is the documented range gate, and beyond the unambiguous range a phase-based module wraps distance, so confirm the gate covers your band. Fine finger gaps come out with softer edges than stereo.

What does disparity shift cost?

It slides the disparity search window toward higher disparities, so the nearest measurable depth improves while the far limit moves closer by the same proportion — you exchange far depth for near depth. The usable shift also shrinks as the true disparity of the working distance grows, so tune in small steps and log the far end of the range each time.