fix(v5): reconstruct inverse fft from saved spectrum
This commit is contained in:
@@ -30,6 +30,14 @@ def save_image_array(image, prefix="image"):
|
||||
return filename
|
||||
|
||||
|
||||
def save_fft_array(spectrum, prefix="fft"):
|
||||
filename = f"sessions/{prefix}-{uuid4().hex}.npz"
|
||||
path = Path(settings.MEDIA_ROOT) / filename
|
||||
path.parent.mkdir(parents=True, exist_ok=True)
|
||||
np.savez_compressed(path, spectrum=spectrum)
|
||||
return filename
|
||||
|
||||
|
||||
def load_image_array(relative_path):
|
||||
path = Path(settings.MEDIA_ROOT) / relative_path
|
||||
if not path.exists():
|
||||
@@ -45,6 +53,17 @@ def load_image_array(relative_path):
|
||||
return cv2.cvtColor(image, cv2.COLOR_BGR2RGB).astype(np.uint8)
|
||||
|
||||
|
||||
def load_fft_array(relative_path):
|
||||
path = Path(settings.MEDIA_ROOT) / relative_path
|
||||
if not path.exists():
|
||||
raise ProcessingError("FFT data file is missing or unreadable.")
|
||||
try:
|
||||
with np.load(path) as payload:
|
||||
return payload["spectrum"]
|
||||
except (OSError, KeyError, ValueError) as exc:
|
||||
raise ProcessingError("FFT data file is missing or unreadable.") from exc
|
||||
|
||||
|
||||
def delete_relative_file(relative_path):
|
||||
if not relative_path:
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user