Again, this was created from an assignment. I did it in GNU Octave. But, I want to try doing it in JavaScript.
There are one point detector and three edge detector: Sobel operator, Prewitt operator, and Robert cross.
It seems like Sobel operator is the brightest. This is a reason to use thresholding after edge detection.