From fa3013b4e5b14e4e119ab184a1e22f0d9a14f3b3 Mon Sep 17 00:00:00 2001
From: Yoann Schneider <yschneider@teklia.com>
Date: Fri, 23 Jun 2023 11:33:28 +0000
Subject: [PATCH] Remove deepcopy when I can

---
 dan/manager/ocr.py      | 3 +--
 dan/manager/training.py | 5 ++---
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/dan/manager/ocr.py b/dan/manager/ocr.py
index da1db034..0ee834d0 100644
--- a/dan/manager/ocr.py
+++ b/dan/manager/ocr.py
@@ -1,5 +1,4 @@
 # -*- coding: utf-8 -*-
-import copy
 import os
 import pickle
 
@@ -62,7 +61,7 @@ class OCRDataset(GenericDataset):
         self.collate_function = OCRCollateFunction
 
     def __getitem__(self, idx):
-        sample = copy.deepcopy(self.samples[idx])
+        sample = dict(**self.samples[idx])
 
         if not self.load_in_memory:
             sample["img"] = self.get_sample_img(idx)
diff --git a/dan/manager/training.py b/dan/manager/training.py
index 27bdf224..3b472a2b 100644
--- a/dan/manager/training.py
+++ b/dan/manager/training.py
@@ -1,8 +1,8 @@
 # -*- coding: utf-8 -*-
-import copy
 import json
 import os
 import random
+from copy import deepcopy
 from time import time
 
 import numpy as np
@@ -481,8 +481,7 @@ class GenericTrainingManager:
         path = os.path.join(self.paths["results"], "params")
         if os.path.isfile(path):
             return
-        params = copy.deepcopy(self.params)
-        params = class_to_str_dict(params)
+        params = class_to_str_dict(my_dict=deepcopy(self.params))
         total_params = 0
         for model_name in self.models.keys():
             current_params = compute_nb_params(self.models[model_name])
-- 
GitLab