|
|
|
|
@ -1083,5 +1083,28 @@ def wavelet(request):
|
|
|
|
|
return HttpResponse('请使用POST方法')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@csrf_exempt
|
|
|
|
|
def fourier(request):
|
|
|
|
|
if request.method == 'POST':
|
|
|
|
|
para = json.loads(request.body)
|
|
|
|
|
image = para['img']
|
|
|
|
|
img = cv2.imread(PREFIX + image, 0)
|
|
|
|
|
# 傅里叶
|
|
|
|
|
f = np.fft.fft2(img)
|
|
|
|
|
fshift = np.fft.fftshift(f)
|
|
|
|
|
magnitude_spectrum = 20 * np.log(np.abs(fshift))
|
|
|
|
|
# 逆傅里叶
|
|
|
|
|
ishift = np.fft.ifftshift(f)
|
|
|
|
|
iimg = np.fft.ifft2(ishift)
|
|
|
|
|
iimg = np.abs(iimg)
|
|
|
|
|
fourier_transform_name = getImageName() + DEFAULT_FORMAT
|
|
|
|
|
inverse_name = getImageName() + DEFAULT_FORMAT
|
|
|
|
|
cv2.imwrite(PREFIX + fourier_transform_name, magnitude_spectrum)
|
|
|
|
|
cv2.imwrite(PREFIX + inverse_name, iimg)
|
|
|
|
|
ret = [{"fourier_transform": fourier_transform_name, "inverse": inverse_name}]
|
|
|
|
|
return HttpResponse(ret)
|
|
|
|
|
return HttpResponse('请使用POST方法')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def r(request):
|
|
|
|
|
return render(request, 'upload.html')
|
|
|
|
|
|