Classical Machine Learning
Put the camera views together
BOTIE
Examples, experiments and workspace controls
Connect a tool's inputs to see what it produces. You can try a branch before connecting it to Result.
Try your own inputs
Use a copy of the example to try your own data. Keep the problem's assumptions in mind, and predict the effect of a change before checking the output. You can also add another branch to compare two ways of doing the calculation.
Context for this challenge
Subtract each source point from its proposed match and take the median separately for each coordinate.
Let's put two camera views into the same coordinates. Some proposed point matches are wrong, so trusting the first match could move the whole image incorrectly. In our small example, most matches agree on a translation. We will use the middle proposed shift on each coordinate, then apply that translation to another point.
Inspect the component calculation
Median within each column(
Rows of proposed shifts: Subtract(
Starting value: Proposed matching points (pixels)
Value to remove: Source points (pixels)
)
)Examples and results
- Proposed matching points (pixels)
4 1 5 2 30 20 - Source points (pixels)
1 2 2 3 4 5 - Required result
- 03
- 1-1
Try a fresh construction
This clears this draft, including its undo history. Earlier successful attempts stay recorded. Build again without opening hints to record an independent attempt.
Stuck? Inspect a worked construction
The tools below form one possible solution. You can assemble it, follow its signals, and undo that change to return to your own construction.
Assumptions and test precision
This handles translation only, with a majority of exactly agreeing matches. Coordinate medians are a small robust estimator, not the full RANSAC procedure or a solution for rotation and perspective. Numerical tests allow a difference of 0.001. Lists and structures must also have the right shape.
Your last tested pieces can start the full construction. An existing draft there keeps its own pieces.
Five proposed matches with two bad correspondences
This check uses the pieces from “Apply the supported translation to another point”.
BOTIE
- Source points (pixels)
0 0 4 2 2 5 6 1 3 3 - Proposed matching points (pixels)
-2 3 2 5 0 8 100 100 -40 80 - Point to align (pixels)
- 08
- 12
Use a number, text, or an array matching the requested result. For a matrix, put each row in brackets. Saving your prediction runs your current construction on these inputs and checks the earlier examples too.
Build a construction in the workspace above first. This case will test those pieces.
Why does the median work for these three proposals, and which changes in camera geometry cannot be represented by one translation vector?
Robust estimation depends on the transformation model and the pattern of inliers; this coordinate-median example is not full RANSAC.
This handles translation only, with a majority of exactly agreeing matches. Coordinate medians are a small robust estimator, not the full RANSAC procedure or a solution for rotation and perspective.
Work through the Python challenges →