Моя цель - создать двумерный массив, в котором на каждой позиции i,j
имеется преобразование Фурье сегмента изображения с image[i][j]
в качестве пикселя верхнего левого угла. Я думал, что это можно вычислить довольно просто. Предположим, что наше изображение имеет размер m,n
, а размер сегментов (или, скорее, квадратов) равен s
.
A = numpy.empty(shape=(m,n),dtype='object')
for i in range(m):
for j in range(n):
if (m-i >= s) and (n-j >= s):
A[i][j] = numpy.fft.fftn(image[i:i+s,j:j+s]
Затем в пределах al oop я хочу установить коэффициенты под определенным порогом, чтобы ноль:
x = A[i][j]
x[np.absolute(x) <= z] = 0
Проблема теперь в том, что он также меняет A
, но использование глубокого копирования заключается в замедлении для большого l oop. В основном A
не должен меняться, но мне нужна быстрая копия его элементов. Как решить проблему?