Используя OpenCv, я преобразовал зеленые области в белые (255) и черные (0): см. ТЕКУЩИЙ ВЫВОД.
Использование обнаружения ребер Канни, Лапласа и Собеля дало много маленьких ребер вместо длинного согласованного ребра, см. Пример CANNY EDGE.
Как я могу добиться одного длинного края, как показано на желаемом выходе?
Соответствующий код:
image = cv.imread('grass pic.jpg')
lane_image = np.copy(image)
pic = cv.cvtColor(lane_image ,cv.COLOR_BGR2RGB)
lower = np.array([24,0,0])
upper = np.array([177, 194, 20])
green_selection = cv.inRange(pic, lower, upper)
canny= cv.Canny(green_selection,50,150)
plt.imshow(canny, cmap='gray')
ТЕКУЩИЙ ВЫХОД:
CANNY EDGE Пример
ЖЕЛАЕМЫЙ РЕЗУЛЬТАТ: