diff --git a/src/algorithms/FuzzyChoquetIntegral.cpp b/src/algorithms/FuzzyChoquetIntegral.cpp
index 96fa890b6ecc182cd6aac2b65da597ed773d40a3..18494f85dc9681f4f771856a281a9dc561e070a7 100644
--- a/src/algorithms/FuzzyChoquetIntegral.cpp
+++ b/src/algorithms/FuzzyChoquetIntegral.cpp
@@ -152,6 +152,10 @@ void FuzzyChoquetIntegral::process(const cv::Mat &img_input, cv::Mat &img_output
     cv::Mat img_updated_background_f3 = cv::cvarrToMat(updated_background_f3);
     img_updated_background_f3.copyTo(img_background_f3);
 
+    cvReleaseImage(&input_f3);
+    cvReleaseImage(&input_f1);
+    cvReleaseImage(&background_f3);
+    cvReleaseImage(&background_f1);
     cvReleaseImage(&lbp_input_f1);
     cvReleaseImage(&lbp_background_f1);
     cvReleaseImage(&sim_texture_f1);
diff --git a/src/algorithms/FuzzySugenoIntegral.cpp b/src/algorithms/FuzzySugenoIntegral.cpp
index a43dfbaf16b01bc344c1d3c9e3439d089a02d566..ff03451130e898c102556eb9f52d8dd261d221fc 100644
--- a/src/algorithms/FuzzySugenoIntegral.cpp
+++ b/src/algorithms/FuzzySugenoIntegral.cpp
@@ -151,6 +151,10 @@ void FuzzySugenoIntegral::process(const cv::Mat &img_input, cv::Mat &img_output,
     cv::Mat img_updated_background_f3 = cv::cvarrToMat(updated_background_f3);
     img_updated_background_f3.copyTo(img_background_f3);
 
+    cvReleaseImage(&input_f3);
+    cvReleaseImage(&input_f1);
+    cvReleaseImage(&background_f3);
+    cvReleaseImage(&background_f1);
     cvReleaseImage(&lbp_input_f1);
     cvReleaseImage(&lbp_background_f1);
     cvReleaseImage(&sim_texture_f1);