def filterCanny(img, min_val=50, max_val=150, size=(5, 5), stdv=0):
    '\n    The Canny detector is a multi-stage algorithm optimized for fast real-time edge detection, \n        which will reduce complexity of the image much further.\n\n    The algorithm will detect sharp changes in luminosity and will define them as edges.\n\n    The algorithm has the following stages:\n        -   Noise reduction\n        -   Intensity gradient - here it will apply a Sobel filter along the x and y axis to detect if edges are horizontal vertical or diagonal\n        -   Non-maximum suppression - this shortens the frequency bandwith of the signal to sharpen it\n        -   Hysteresis thresholding\n    '
    if (not isCV(img)):
        raise ValueError('Image not in np.array format')
    if (min_val >= max_val):
        raise ValueError('filterCanny: Value order incorrect')
    gray_scale = toGrayScale(img)
    gaussian = filterGaussian(gray_scale, size=size, stdv=stdv)
    return cv.Canny(gaussian, min_val, max_val)
The Canny detector is a multi-stage algorithm optimized for fast real-time edge detection, 
    which will reduce complexity of the image much further.

The algorithm will detect sharp changes in luminosity and will define them as edges.

The algorithm has the following stages:
    -   Noise reduction
    -   Intensity gradient - here it will apply a Sobel filter along the x and y axis to detect if edges are horizontal vertical or diagonal
    -   Non-maximum suppression - this shortens the frequency bandwith of the signal to sharpen it
    -   Hysteresis thresholding
def filterCanny(img, min_val=50, max_val=150, size=(5, 5), stdv=0):
    '\n    The Canny detector is a multi-stage algorithm optimized for fast real-time edge detection, \n        which will reduce complexity of the image much further.\n\n    The algorithm will detect sharp changes in luminosity and will define them as edges.\n\n    The algorithm has the following stages:\n        -   Noise reduction\n        -   Intensity gradient - here it will apply a Sobel filter along the x and y axis to detect if edges are horizontal vertical or diagonal\n        -   Non-maximum suppression - this shortens the frequency bandwith of the signal to sharpen it\n        -   Hysteresis thresholding\n    '
    if (not isCV(img)):
        raise ValueError('Image not in np.array format')
    if (min_val >= max_val):
        raise ValueError('filterCanny: Value order incorrect')
    gray_scale = toGrayScale(img)
    gaussian = filterGaussian(gray_scale, size=size, stdv=stdv)
    return cv.Canny(gaussian, min_val, max_val)