One 3D camera gives you one side of an object: whatever faces the sensor at that working distance, sampled at that sensor's spacing. When a single part needs every face — threads, undercuts, the far flank — you capture from several viewpoints, and each cloud lands in its own camera frame at that moment. Merging is a registration problem: find the rigid transform that carries each capture into one common reference frame, then concatenate. Done right, the seams disappear; done by eye, you get doubled walls and a cloud that will not measure. This walkthrough covers one camera and one part: where each transform comes from, how much overlap the views need, the error budget in pixels, and the checks that say the merged cloud can be trusted.
The decision: transform first, concatenate second
Merging is never an averaging operation the software invents. It is one transform per view into a shared frame, followed by a concatenation, and the whole quality argument lives in the accuracy of those transforms. Choose the source of the transform by the shape of the job:
- A repeat job, part always in the same seat: fixed, pre-calibrated camera stand poses — or, for round parts, a fixed camera and a rotary stage turning the part by a known angle.
- A one-off part, or one that may be repositioned between captures: a calibration board or markers imaged in every capture.
- Nothing rigid available: iterative closest point (ICP) refinement seeded with a rough manual pre-alignment — workable, and the only one of the three that can converge onto a wrong answer.
The budget that decides success: registration error at or below 2 px of the sensor's XY resolution for every view, with ICP refinement landing at 1 px or better. Stay inside it and a seam vanishes into the cloud's own sampling; exceed it and you see doubled edges where views meet.
This is the single-camera, sequential case. When several cameras capture the same scene at the same time, the workflow is different and calibration comes first: see stitching point clouds from multiple cameras and calibrating two depth cameras for combined 3D point clouds.
Where each per-view transform comes from
| Transform source | What you calibrate | Best when | Weak point |
|---|---|---|---|
| Fixed stand poses | Every seat, once, into a shared frame | Repeat job, part in the same seat | A bumped stand invalidates every pose |
| Rotary stage, camera fixed | The stage axis, once | Round parts, full circumference | Part size limited by the stage |
| Board or markers in view | Nothing per run — a pose is solved each capture | One-off or repositionable parts | Every viewpoint must see the board |
| ICP from a rough guess | Nothing — pre-align, then refine | Nothing else available | Wrong local minimum; slips on flat or symmetric faces |
Fixed stand poses
Seat the camera at a small set of repeatable positions and calibrate each one into a shared frame, once. The maths is the same shared-frame workflow described for multi camera extrinsic calibration in one shared coordinate frame, applied to one camera in several seats instead of several cameras at once. The reward is speed on the floor: capture, look up the seat's transform, merge. The risk is mechanical — one knock to the stand and every pose carries an offset.
A heavy slide-table stand holds a seat repeatable. The LS-MNT-0040 is a professional slide-table stand, height 700 mm, on a 400 x 450 mm base.
- Type
- Camera stands
Rotate the part instead
The cleaner variant for round parts: fix the camera and turn the part. The transform is then pure geometry, not a calibration per seat:
Here p_i is a point from capture i, a is any point on the rotation axis, Δθ is the step angle, and R_axis rotates about that axis. Calibrate the axis once: put a marker off the axis, capture it at three stage angles, and fit the circle through the three observations — its centre is the axis. After that, every capture's transform is exact arithmetic. The LS-MNT-0220 is a manual XY + rotation stage on a 60 mm diameter base.
- Type
- Rotary stages
Board or markers in every capture
Fix a calibration board or a set of markers beside the part where every planned viewpoint can see it. For each capture, solve the board's pose in that view and chain the transforms into the board's frame. Nothing is calibrated per run, and the method tolerates a camera that travels by hand — the board, not the arm, carries the frame. Two conditions: every viewpoint really must include the board in its field of view, and markers need matte surfaces to read cleanly.
ICP from a rough initial guess
With no board and no stage, pre-align each new cloud to the previous one by hand — drag it roughly into place, or pick three corresponding points — then let ICP refine. ICP iterates nearest-neighbour correspondences and minimises their distances:
It is a local method: the initial guess decides whether it converges to the true alignment at all, and a poor guess lands it in a wrong local minimum — the reason published ICP research keeps returning to initialisation. It also slips along flat and rotationally symmetric faces, where sliding costs the objective nothing. Seed it with the best guess you have and read the residual before accepting the result.
Plan the viewpoints before you capture
Three numbers decide the capture plan:
- Overlap: at least 30% of a view's points shared with each neighbour. Below about 15%, ICP runs out of correspondences and starts to slide.
- Usable arc: count on clean returns out to roughly ±60° from the camera direction. Beyond that the triangulation angle goes shallow and points thin out — rotate or reseat rather than push.
- Coverage: merging cannot invent surfaces no viewpoint saw. Occluded holes survive the merge as holes, so plan seats the way the multi-sensor 3D capture planning walkthrough plans coverage — the same arithmetic with one sensor in several seats.
Working distance sets both the field of view and the sampling, so fix it before planning seats; the 3D camera working distance and positioning guide covers that choice. For the camera itself, pick a structured-light or galvanometer model from 3D sensors, because dense per-view clouds are what make a merge worth doing; the 3D camera finder filters by type. The MV-DLS300P-04 is a laser galvanometer stereo camera of that type.
- Type
- Stereo / structured light
Step by step: capture, register, merge
- Name the merge frame before the first capture: view 0, the board, or the stage axis. Every transform later points into that one frame — the same discipline as transforming depth point clouds between the optical frame and the camera frame.
- Fixture the part so it cannot shift between captures. Elastic mounts and cloth move; a rigid fixture does not.
- Lock the capture parameters — exposure, filtering, any multi-exposure count — and leave them alone for the whole set. If a parameter must change, discard the first capture after the change: a 3D camera needs two captures after a parameter change before settings settle.
- Capture view 0 and inspect it before going further: point density, holes, specular blowout. Fix exposure or geometry now, not after ten captures.
- Step through the planned viewpoints — or rotate the stage by Δθ — capturing at each, and log the transform source for every capture: seat number, stage angle, or board pose.
- Transform each cloud into the merge frame from the logged source. Use the computed transform; an eyeballed drag is not a transform.
- Refine each transformed cloud with ICP seeded by that value, and read the RMS residual in pixels against the budget.
- Concatenate the registered clouds into one, and only then downsample if you need a smaller file.
Worked example: 48 mm housing, six views at 0.05 mm/px
The case: a machined housing, 48 mm across, whose full circumference has to land in one cloud. Example inputs: a close-range structured-light camera with 2400 px across the sensor, a field of view 120 mm wide at the chosen working distance, the camera fixed on the stand, and the part on the rotary stage.
Rules in words: XY resolution is field-of-view width divided by pixels across; the merge budget is 2 px of XY resolution; clean returns extend to about ±60° from the camera direction; neighbours overlap by at least 30%.
The arithmetic:
- XY resolution: 120 mm ÷ 2400 px = 0.05 mm/px.
- Registration budget: 2 px × 0.05 mm/px = 0.1 mm per view; the ICP target is 1 px, which is 0.05 mm.
- Usable arc per capture: 2 × 60° = 120° of the circumference.
- Step angle: 30% overlap allows up to 0.7 × 120° = 84°. Choose 60° instead, which gives (120° − 60°) ÷ 120° = 50% overlap and margin where patches thin out.
- Captures: 360° ÷ 60° = 6, with transforms R_axis(-i·60°) for i = 0…5.
The check: the housing has a machined 48.00 mm diameter that straddles a seam. The merged cloud reads 48.05 mm across it — a deviation of 0.05 mm, exactly 1 px, inside the 0.1 mm budget. Accept the merge. Had it read 48.15 mm, which is 3 px, the suspect is the stage-axis calibration, not the camera: recalibrate the axis and re-run before touching anything else.
Decision for this case: six captures at 60°, stage-geometry transforms, ICP refinement held at or below 0.05 mm residual, merged and verified against one known dimension. That is a production-worthy merge of one object from one camera.
Check the merge with a number
Three checks, all numeric:
- ICP RMS residual at or below 1 px, with 2 px as the ceiling.
- One known dimension measured across a seam, inside the 2 px budget.
- A slice through a seam plane shows one surface, not two. A doubled wall means one view's transform is outside budget — find the offending view by hiding views one at a time.
If a check fails, the order of suspicion is: axis or seat calibration, marker or board readability, then the camera. Cameras rarely drift mid-run; mounts do.
When merging is the wrong answer
- The part fits one field of view at full sampling: take one capture and stop. Several structured-light cameras also fuse multi-exposure captures into a single cloud in one shot, which covers moderately shiny parts without a rig — read the capture modes before building one.
- A rotationally symmetric part with ICP alone: the algorithm will happily register it rotated. Use the stage geometry or a fiducial to pin the angle.
- A hand-carried camera with no board in view: no refinement recovers those transforms to the 2 px budget. Mount the camera on a stand or put markers in view.
- Pinholes from specular reflections: registered views do fill some, but combining frames against noise is its own technique — merging multiple depth frames into one gap-free point cloud covers it.
Checklist before the first capture
- Merge frame chosen and written down: view 0, board, or stage axis.
- Part rigidly fixtured; board or markers visible from every planned viewpoint.
- Overlap of at least 30% between neighbours, derived from the stage angle or seat spacing you command.
- Capture parameters locked; any capture taken right after a change is discarded.
- Budget computed and posted at the station: 2 px of XY resolution.
- One known dimension picked for the seam check.
When the plan is set, configure the full setup in one pass, browse camera stands for the seat or stage, or ask the applications team through the contact page — expert support comes with every order.
Questions
Can I merge the clouds with ICP alone and skip calibration?
You can, for a qualitative model. Give each pair a manual pre-alignment — three corresponding points or a dragged rough pose — then refine with ICP. Expect a residual of a few pixels rather than one: good enough to visualize the part or export a mesh for CAD reference, not to hold a measurement tolerance. For anything you will measure, add a board, a stage, or calibrated seats.
Why not just move the camera back until one capture sees the whole part?
Because sampling scales with distance. Pull back to triple the field of view and the same sensor covers three times the width with the same pixels: XY resolution drops from 0.05 mm/px to 0.15 mm/px. Six close captures at full sampling beat one distant capture whenever fine features are the reason you are scanning the part at all.
How should I downsample the merged cloud?
After registration, run a voxel-grid filter at about twice the point spacing — 0.1 mm on a 0.05 mm/px setup. That removes doubled surface samples along the seams and cuts file size, while anything coarser starts erasing the fine features you merged for. Downsample only the final merged copy, and keep the full-resolution registered clouds archived.
The part may shift between captures — which method still works?
Board or marker registration, provided the markers ride on the part's fixture rather than on the table: the board pose solved in each capture then absorbs any shift of the fixture. Fixed seat poses and stage geometry both assume a stationary part, so a shift there lands directly in the registration error of every view that follows it.
Can I reuse one set of calibrated seats for every part?
Yes — that is what makes fixed poses the production choice. The one-time calibration covers every part that sits in the same fixture at the same station. Recalibrate after anything is unbolted, bumped, or swapped: a moved seat keeps returning data with a constant offset that looks exactly like part variation on the trend chart.


