Original image and edges of sketch with reference points
Original example image and edges of sketch. Try spotting the mistakes.
Original example image
Edges detected using DoodleFix
Have you ever tried following a step-by-step drawing tutorial? If you have, you probably know that the result usually does not look quite like the example. If you haven't tried following one, have a go and see for yourself. What happens usually is you draw something that has the general idea and is recognisable, but often looks odd or weird and it is not always obvious to a beginner where exactly they have gone wrong.
What it does
DoodleFix walks you through a drawing tutorial step-by-step. Once you are finished, you are prompted to upload a good quality photo of your drawing and it will give you feedback on things you have done wrong, e.g. proportions, elements relative positions etc., which are common, not so obvious, reasons for odd-looking pictures. It is worth noting that this does not actually work at the moment, currently the program can apply good edge detection on a photo of a sketch and allows you to select reference points. The rest is in our heads and we wish we had the time and skills to actually do it. Coming soon though!
How we built it
We used python as our main codebase. We used the opencv package to apply different filtering mechanisms to manipulate the photo and to obtain edges of the drawing for comparing. There is also a version with GUI that is implemented with Tkinter and PIL images.
Challenges we ran into
Python libraries, main SIFT algorithm for feature detection is no longer compatible with opencv and the two cannot really work together, lack of sufficient knowledge .
Accomplishments that we're proud of
What we learned
Image processing is hard, Python is crazy, we need to make better life choices.
What's next for DoodleFix
Try to finish the basic functionality and make it flexible