"""The main file for the reconstruction. This file should NOT be modified except the body of the 'run_reconstruction' function. Students can call their functions (declared in others files of src/methods/your_name). """ import numpy as np from src.methods.Elmehdi_lahmar.malvar import malvar from src.forward_model import CFA def run_reconstruction(y: np.ndarray, cfa: str) -> np.ndarray: """ Run the demosaicing process using Malvar-He-Cutler algorithm for Bayer pattern. Args: y (np.ndarray): The mosaicked image to be reconstructed. cfa (str): Name of the CFA, expected to be 'bayer'. Returns: np.ndarray: The demosaicked image. """ if cfa != 'bayer': raise ValueError("Malvar-He-Cutler demosaicing only supports Bayer CFA pattern.") input_shape = (y.shape[0], y.shape[1], 3) op = CFA(cfa, input_shape) return malvar(y, op) #### #### #### #### #### #### ############# #### ###### #### ################## #### ######## #### #################### #### ########## #### #### ######## #### ############ #### #### #### #### #### ######## #### #### #### #### #### ######## #### #### #### #### #### ######## #### #### #### #### #### ## ###### #### #### ###### #### #### #### ## #### #### ############ #### #### ###### #### #### ########## #### #### ########## #### #### ######## #### #### ######## #### #### #### #### ############ #### #### #### ########## #### #### #### ######## #### #### #### ###### #### # 2023 # Authors: Mauro Dalla Mura and Matthieu Muller