From a0c1a650b0c84d3bef17f3d3d39cc2cc27dd0f34 Mon Sep 17 00:00:00 2001 From: Mark Hoekveen Date: Sun, 12 May 2024 10:44:15 +0200 Subject: [PATCH] Only reconstruct on debug --- src/descriptors/dct.rs | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/src/descriptors/dct.rs b/src/descriptors/dct.rs index a9144c7..c453f33 100644 --- a/src/descriptors/dct.rs +++ b/src/descriptors/dct.rs @@ -1,7 +1,7 @@ use image::{save_buffer, GenericImageView}; use std::f64::consts::{PI, SQRT_2}; use crate::descriptors::{Descriptor, DCT, print_matrix}; -use log::debug; +use log::{debug, log_enabled, Level}; impl DCT { @@ -114,23 +114,25 @@ impl Descriptor for DCT { } debug!("DCT-coefficients, quantized:\n {}", print_matrix(dct_values)); - // De-quantization: - for i in 0..64 { - dct_values[i] = dct_values[i] * self.quantization_matrix[i] as f64; + if log_enabled!(Level::Debug) { + // De-quantization: + for i in 0..64 { + dct_values[i] = dct_values[i] * self.quantization_matrix[i] as f64; + } + debug!("DCT-coefficients, de-quantized:\n {}", print_matrix(dct_values)); + + // Reconstruction original pixel values: + let reconstructed = self.idct(dct_values); + debug!("Reconstructed pixel values:\n{}", print_matrix(reconstructed)); + + save_buffer( + "reconstructed.png", + &reconstructed, + 8, + 8, + image::ColorType::L8 + ).expect("Error saving buffer"); } - debug!("DCT-coefficients, de-quantized:\n {}", print_matrix(dct_values)); - - // Reconstruction original pixel values: - let reconstructed = self.idct(dct_values); - debug!("Reconstructed pixel values:\n{}", print_matrix(reconstructed)); - - save_buffer( - "reconstructed.png", - &reconstructed, - 8, - 8, - image::ColorType::L8 - ).expect("Error saving buffer"); // Calculating descriptor from dct values: let mut mask: u64 = 0;