Я хочу повторить функцию обнаружения edge()
MATLAB в Python.
Имеются две известные мне Python функции, реализующие фильтр Канни:
import cv2
edges = cv2.Canny(image)
и
from skimage import feature
edges = feature.canny(image)
Однако ни одна из этих Python функций не способна вычислять верхний и нижний пороги фильтра так же, как MATLAB. Согласно здесь .
MATLAB Code
farm = imread('small_farms.JPG');%change this to the
file path of image
imshow(farm);%this shows the original image
gfarm = rgb2gray(farm);
figure,
imshow(gfarm);%show grayscaled image
A = medfilt2(gfarm,[4 4]);
figure,
imshow(A);
B = edge(A,'log');
figure,
imshow(B,[]);