You might want to fine-tune the control points you selected using cpselect. Using cross-correlation, you can sometimes improve the points you selected by eye using the Control Point Selection Tool.
To use cross-correlation, pass sets of control points in the moving and fixed images, along with the images themselves, to the cpcorr function.
moving_pts_adj= cpcorr(movingPoints, fixedPoints, moving, fixed);
The cpcorr function defines 11-by-11 regions around each control point in the moving image and around the matching control point in the fixed image, and then calculates the correlation between the values at each pixel in the region. Next, the cpcorr function looks for the position with the highest correlation value and uses this as the optimal position of the control point. The cpcorr function only moves control points up to 4 pixels based on the results of the cross-correlation.
If cpcorr cannot correlate some of the control points, it returns their values in movingPoints unmodified.