@Andrei1penguin1

Какую функцию numpy выбрать?

Доброго времени суток, есть задача для каждого элемента массива подсчитать градиент по x и y:
Пример:
Есть матрица
[10, 20, 30],
[15, 25, 35],
[20, 40, 60]

Соответственно для числа 25 (по центру) градиент по x будет равняться |35-15| = 20, а по y |20-40|=20
Можно реализовать свои руками в несколько строк, но может есть какие-то функции в numpy, позволяющие сделать это быстрее?
  • Вопрос задан
  • 61 просмотр
Решения вопроса 1
@Andy_U
Ну, тогда как-нибудь так:

import numpy


if __name__ == '__main__':

    a = numpy.array([[10, 20, 30],
                     [15, 25, 35],
                     [20, 40, 60]])

    xdiff = numpy.zeros_like(a)
    xdiff[:, 1:-1] = a[:, 2:]-a[:, :-2]
    print(xdiff)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
25 нояб. 2024, в 18:39
30000 руб./за проект
25 нояб. 2024, в 18:35
30000 руб./за проект
25 нояб. 2024, в 18:33
10000 руб./за проект