55
66import mmcv
77import mmengine
8- from mmengine .fileio import get_file_backend
8+ import mmengine .fileio as fileio
99from mmengine .hooks import Hook
1010from mmengine .runner import Runner
1111from mmengine .visualization import Visualizer
@@ -72,14 +72,7 @@ def __init__(
7272 self .enable = enable
7373 self .out_dir = out_dir
7474 self ._test_index = 0
75-
76- if backend_args is None :
77- # lazy init at loading
78- self .backend_args = None
79- self .file_backend = None
80- else :
81- self .backend_args = backend_args .copy ()
82- self .file_backend = get_file_backend (backend_args = backend_args )
75+ self .backend_args = backend_args
8376
8477 def after_val_iter (self , runner : Runner , batch_idx : int , data_batch : dict ,
8578 outputs : Sequence [PoseDataSample ]) -> None :
@@ -94,10 +87,6 @@ def after_val_iter(self, runner: Runner, batch_idx: int, data_batch: dict,
9487 if self .enable is False :
9588 return
9689
97- if self .file_backend is None :
98- self .file_backend = get_file_backend (
99- backend_args = self .backend_args )
100-
10190 self ._visualizer .set_dataset_meta (runner .val_evaluator .dataset_meta )
10291
10392 # There is no guarantee that the same batch of images
@@ -106,7 +95,7 @@ def after_val_iter(self, runner: Runner, batch_idx: int, data_batch: dict,
10695
10796 # Visualize only the first data
10897 img_path = data_batch ['data_samples' ][0 ].get ('img_path' )
109- img_bytes = self . file_client . get (img_path )
98+ img_bytes = fileio . get (img_path , backend_args = self . backend_args )
11099 img = mmcv .imfrombytes (img_bytes , channel_order = 'rgb' )
111100 data_sample = outputs [0 ]
112101
@@ -144,17 +133,13 @@ def after_test_iter(self, runner: Runner, batch_idx: int, data_batch: dict,
144133 self .out_dir )
145134 mmengine .mkdir_or_exist (self .out_dir )
146135
147- if self .file_backend is None :
148- self .file_backend = get_file_backend (
149- backend_args = self .backend_args )
150-
151136 self ._visualizer .set_dataset_meta (runner .test_evaluator .dataset_meta )
152137
153138 for data_sample in outputs :
154139 self ._test_index += 1
155140
156141 img_path = data_sample .get ('img_path' )
157- img_bytes = self . file_client . get (img_path )
142+ img_bytes = fileio . get (img_path , backend_args = self . backend_args )
158143 img = mmcv .imfrombytes (img_bytes , channel_order = 'rgb' )
159144 data_sample = merge_data_samples ([data_sample ])
160145
0 commit comments