My final project for Advanced Robotics was to draw pictures from an input photo using a Catalyst-5 robot arm. Standard edge detection algorithms were just the beginning of my processing pipeline, the real challenge was to connect these edgelets into continuous pencil strokes for the arm to draw in the most efficient manner.
To find the best pencil strokes I transform the image into a graph, where edge pixels are nodes and adjacent pixels are connected by edges. I then repeatedly selected and removed the longest shortest path from the graph, which I found to be the fastest and most accurate heuristic for human-like drawings.