anchor.diff:  (defun edge-detect (img output)
      (format t "Converting to greyscale~%")
      (greyscale-image img)
  +   
      (format t "Bluring image~%")
  -   (blur-image img)
  -   ; perform sobel edge detect on image
  +   (setf img (blur-image img))
  +
  +   (format t "Dilate the image~%")
  +   (setf img (dilate (discrete-convolve img *edge-kernel*)
  +      (make-8-bit-rgb-image 3 3 :initial-element 3)))
  +
      (format t "Applying edge detect~%")
      (setf img (discrete-convolve img *edge-kernel*))
  +
      (format t "Threashold the image~%")
  -   (threashold-image img 60)
  -
  -   ;(format t "Label components~%~S~%" (label-components img))
  +   (threashold-image img 30)
   
      (format t "Edge thinning (long process)~%")
      (edge-thin img)
  
positive.code:                                  (pixel img (first f) (second f))
                                   (declare (type (unsigned-byte 8) r1 g1 b1))
                                      ;((and (eq _r 0) (eq r1 255)) (setf empty nil))
                                      ;((and (eq _r 255) (eq r1 255)) (setf empty nil))
                                      (if (and (eq _r 255) (eq r1 0)) (setf c (+ c 1)))
                                      ;(setf c 6)
                                   )))
                       (multiple-value-bind (r g b)
  
negative.code:                         (declare (type (unsigned-byte 8) r g b))
                             (setf v r)
                             (if (eq c 8) (setf v 0))
                             ;(if (eq c 2) (setf v 255))
                             ;(if (eq w 3) (setf v 0))
                             ;(if (eq l 2) (setf v 100))
                             ;(if (eq c 5) (setf v 100))
                             (setf (pixel img i j)
                                (values v v v))))))))))
  
  