irtk.model.Model¶
- class irtk.model.Model(scene: Any)¶
Abstract base class for models. A model optimizes certain scene parameters and can be combined with other models to form an inverse rendering pipeline. Encapsulating an inverse rendering algorithm in a model promotes reusability. For example, you can combine existing models with your own to quickly form a new inverse rendering pipeline.
- scene¶
The scene object associated with the model.
- __init__(scene: Any) None ¶
Initialize the Model.
- Parameters:
scene – The scene object associated with the model.
- get_regularization() torch.Tensor ¶
Get the regularization term.
- Returns:
A torch tensor containing the regularization value.
- abstract get_results() Any ¶
Get the results of the model. Must be implemented by subclasses.
- initialize() None ¶
Initialize the model. Can be overridden by subclasses.
- load_states(state_path: str) None ¶
Load the model states from a file.
- Parameters:
state_path – The path to load the states from.
- save_states(state_path: str) None ¶
Save the model states to a file.
- Parameters:
state_path – The path to save the states to.
- schedule_lr(curr_iter: int) None ¶
Schedule the learning rate.
- Parameters:
curr_iter – The current iteration number.
- abstract set_data() None ¶
Set the data for the model. Must be implemented by subclasses.
- abstract step() None ¶
Perform a step in the model. Must be implemented by subclasses.
- abstract write_results(result_path: str) None ¶
Write the results to a file.
- Parameters:
result_path – The path to write the results to.
- abstract zero_grad() None ¶
Zero out the gradients. Must be implemented by subclasses.