Detecting empty spaces in car parking using a camera at lamp-post angle. Video explanation: https://www.youtube.com/watch?v=y1M5dNkvCJc&t. Also check my new video in the same series, Easy Street Parking: https://www.youtube.com/watch?v=1aNT6S_VBNc
For a step-by-step explanation, youtube video can be referred. It explains the approach and also the high-level functionality of code.
Ipython Notebook should be treated as the 'main' program which calls uses all the other modules.