OpenCV provides a module called highgui that handles all the high-level user interface operations. Let's say you are working on a problem, and you want to check what the image looks like before you proceed to the next step. This module has functions that can be used to create windows to display images and/or videos.
There is a waiting function that will wait until you hit a key on your keyboard before it goes on to the next step. There is also a function that can detect mouse events. This is very useful in developing interactive applications.
Using this functionality, you can draw rectangles on those input windows, and then proceed based on the selected region. Consider the following screenshot:
As you can see, we drew a green rectangle ...