Learned

Further optimizing Lazy Snapping and working on GrabCut has vastly improved my understanding of the image segmentation problem and the methods used to solve it. I feel I also have a very good understanding about different color clustering techniques, including K-means and also Gaussian Mixture Models, and what the advantages and disadvantages of each are. This project also helped further solidify my knowledge and understanding of the Graph Cut algorithm and how it can be used to solve the image segmentation problem. More specifically, this has also been an incredibly beneficial project for improving my C++ programming skills, especially in the area of handling raw image data. The problems I have needed to solve over the course of this project have required a much sharper understanding of the programming language and how to write things with an emphasis on performance and efficiency than any work I have done in the past. I feel that this is the most important thing that I will take away from this project.