The createMask method of the ROI tools was designed for the case in which you want to generate a binary image that is one where a specific ROI tool lies over an image or axes.
h = imellipse(gca,[5 5 40 40]);
mask = h.createMask();
You can interactively or programmatically (as done above) any of the ROI tools, and then call the createMask method. In the case above, imellipse expects the bounding rectangle of an ellipse as the position argument. Don't know if that helps, but I thought it might be relevant to this problem.