瀏覽代碼

feat(zhch): 更新 ppstructurev3 调度器功能

- 在处理输出目录时添加时间戳,避免文件覆盖
- 调整默认配置中的进程数量
- 注释掉部分冗余的配置代码
- 优化日志输出顺序
zhch158_admin 3 月之前
父節點
當前提交
c9dbe977ca
共有 1 個文件被更改,包括 11 次插入11 次删除
  1. 11 11
      zhch/ppstructurev3_scheduler.py

+ 11 - 11
zhch/ppstructurev3_scheduler.py

@@ -242,7 +242,7 @@ def run_single_process(args: Tuple[List[str], Dict[str, Any], int]) -> Dict[str,
     
     try:
         # 创建进程专用的输出目录
-        process_output_dir = Path(config["output_dir"]) / f"process_{process_id}"
+        process_output_dir = Path(config["output_dir"]) / f"process_{process_id}_{time.strftime('%Y%m%d_%H%M%S')}"
         process_output_dir.mkdir(parents=True, exist_ok=True)
         
         # 构建命令行参数
@@ -396,11 +396,11 @@ def main():
                 print(f"❌ Input directory does not exist: {input_dir}")
                 return 1
 
+            print(f"Input dir: {input_dir}")
             image_files = get_image_files_from_dir(input_dir, args.max_files)
 
         output_dir = Path(args.output_dir).resolve()
 
-        print(f"Input dir: {input_dir}")
         print(f"Output dir: {output_dir}")
         
         # 限制文件数量
@@ -525,7 +525,7 @@ def main():
         }
         
         # 保存结果
-        output_file = output_dir / f"scheduler_results_{args.num_processes}procs.json"
+        output_file = output_dir / f"scheduler_results_{args.num_processes}procs_{time.strftime('%Y%m%d_%H%M%S')}.json"
         with open(output_file, 'w', encoding='utf-8') as f:
             json.dump(final_results, f, ensure_ascii=False, indent=2)
         
@@ -557,18 +557,18 @@ if __name__ == "__main__":
         default_config = {
             "input_dir": "../../OmniDocBench/OpenDataLab___OmniDocBench/images",
             "output_dir": "./OmniDocBench_Results_Scheduler",
-            "num_processes": 4,
+            "num_processes": 2,
             "devices": "gpu:0,gpu:1,gpu:2,gpu:3",
             "batch_size": 2,
         }
         
-        default_config = {
-            "input_csv": "./OmniDocBench_Results_Scheduler/processed_files_4procs_20250814_182650.csv",
-            "output_dir": "./OmniDocBench_Results_Scheduler",
-            "num_processes": 4,
-            "devices": "gpu:0,gpu:1,gpu:2,gpu:3",
-            "batch_size": 2,
-        } 
+        # default_config = {
+        #     "input_csv": "./OmniDocBench_Results_Scheduler/processed_files_4procs_20250814_213138.csv",
+        #     "output_dir": "./OmniDocBench_Results_Scheduler",
+        #     "num_processes": 4,
+        #     "devices": "gpu:0,gpu:1,gpu:2,gpu:3",
+        #     "batch_size": 2,
+        # } 
 
         sys.argv = [sys.argv[0]]
         for key, value in default_config.items():