The purpose of this project is to design and implement a program for the production of interactive videos. The application must separate the background area from the foreground area by receiving an input video file or receiving online images from a camera (such as a laptop camera) and display it by adding a graphic effect to the video. In the image below you can see an example of the output of such a program.

In the first level, the program must be able to process and generate output on a pre-recorded file. In this case, you can identify the scene by analyzing the entire background file. The result of adding new effects to the program is also saved in a new file. In the second level, the program must learn and recognize the background by receiving online frames from a camera, and also display the output online.