Defining error where the camera actually sees it
Image-Based Visual Servoing keeps the entire control problem inside the 2D image plane. Instead of asking where the target is in 3D space, it tracks a handful of visual features, corners, edges, markers, or blob centroids, directly in the pixels the camera captures. The controller compares the current position of those features against their desired position in the image and drives that pixel-space error toward zero, adjusting robot motion step by step until the features land where they're supposed to be.
Because IBVS never needs to reconstruct a full 3D pose, it sidesteps a whole category of errors that come from camera calibration and 3D estimation. If the camera's calibration is slightly off, or the target's exact geometry isn't perfectly known, IBVS can still converge, because it's only ever reasoning about pixels it can directly observe, not a reconstructed model that calibration error would corrupt.
