Как я могу рассчитать градиент (направление x и y) изображения с помощью моей функции (функция Гауссаина)? - PullRequest
0 голосов
/ 09 апреля 2019

Я хочу получить градиент от моего изображения в направлении x и y. Но моя функция - функция Гаусса, и я не достиг градиента изображения. Можете ли вы предложить методы для градиента?

Вот мои пределы по Гауссу.

X_test = np.arange(-10, 10, 1)

Это моя гауссовская формула (производная гауссовская форма)

sigma = 5
x_direction = ((-2*X_test)*np.exp(-(np.square(X_test/2)/sigma)))/sigma

Общий код:

import cv2
import numpy as np
import math

np.set_printoptions(threshold=5)
img = cv2.imread("...\\test_2.jpg",0)
X_test = np.arange(-10, 10, 1)
sigma = 5
x_direction = ((-2*X_test)*np.exp(-(np.square(X_test/2)/sigma)))/sigma
dst1 = cv2.filter2D(img,cv2.CV_8U,x_direction)

cv2.imshow('gausssian_x',dst1)

Y_test = np.arange(-10, 10, 1)
y_direction = ((-2*Y_test)*np.exp(-(np.square(Y_test/2)/sigma)))/sigma
dst2 = cv2.filter2D(img,-1,y_direction)

cv2.imshow('gausssian_y',dst2)
cv2.waitKey(0)
cv2.destroyAllWindows()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...