diff --git a/app_generate.py b/app_generate.py index a74a2e8..7164c1e 100644 --- a/app_generate.py +++ b/app_generate.py @@ -1,8 +1,10 @@ from PytorchBoot.application import PytorchBootApplication from runners.strategy_generator import StrategyGenerator +from runners.data_generator import DataGenerator @PytorchBootApplication("generate") class Generator: @staticmethod def start(): - StrategyGenerator("configs\generate_config.yaml").run() \ No newline at end of file + #StrategyGenerator("configs\strategy_generate_config.yaml").run() + DataGenerator("configs/data_generate_config.yaml").run() \ No newline at end of file diff --git a/configs/data_generate_config.yaml b/configs/data_generate_config.yaml new file mode 100644 index 0000000..720978e --- /dev/null +++ b/configs/data_generate_config.yaml @@ -0,0 +1,24 @@ + +runner: + general: + seed: 0 + device: cpu + cuda_visible_devices: "0,1,2,3,4,5,6,7" + + + experiment: + name: debug + root_dir: "experiments" + + generate: + voxel_threshold: 0.005 + overlap_threshold: 0.3 + dataset_list: + - OmniObject3d + +datasets: + OmniObject3d: + model_dir: "/media/hofee/data/data/object_meshes" + output_dir: "/media/hofee/data/data/omni_sample_output" + + diff --git a/configs/generate_config.yaml b/configs/strategy_generate_config.yaml similarity index 79% rename from configs/generate_config.yaml rename to configs/strategy_generate_config.yaml index 148efe5..7f97753 100644 --- a/configs/generate_config.yaml +++ b/configs/strategy_generate_config.yaml @@ -19,6 +19,5 @@ runner: datasets: OmniObject3d: root_dir: "C:\\Document\\Local Project\\nbv_rec\\sample_dataset" - output_dir: "C:\\Document\\Local Project\\nbv_rec\\sample_output" diff --git a/runners/data_generator.py b/runners/data_generator.py new file mode 100644 index 0000000..ad07db4 --- /dev/null +++ b/runners/data_generator.py @@ -0,0 +1,34 @@ +import os +import json +from PytorchBoot.runners.runner import Runner +from PytorchBoot.config import ConfigManager +from PytorchBoot.utils import Log +import PytorchBoot.stereotype as stereotype + + +@stereotype.runner("data_generator", comment="unfinished") +class DataGenerator(Runner): + def __init__(self, config): + super().__init__(config) + self.load_experiment("generate") + + def run(self): + dataset_name_list = ConfigManager.get("runner", "generate" ,"dataset_list") + for dataset_name in dataset_name_list: + self.generate(dataset_name) + + def generate(self, dataset_name): + dataset_config = ConfigManager.get("datasets", dataset_name) + model_dir = dataset_config["model_dir"] + output_dir = dataset_config["output_dir"] + Log.debug(model_dir) + Log.debug(output_dir) + + def create_experiment(self, backup_name=None): + super().create_experiment(backup_name) + output_dir = os.path.join(str(self.experiment_path), "output") + os.makedirs(output_dir) + + def load_experiment(self, backup_name=None): + super().load_experiment(backup_name) + \ No newline at end of file