def METHOD_NAME(self, inputs, outputs):
    """
    Args:
        inputs: the inputs to a model.
            It is a list of dicts. Each dict corresponds to an image and
            contains keys like "height", "width", "file_name".
        outputs: the outputs of a model. It is either list of semantic segmentation predictions
            (Tensor [H, W]) or list of dicts with key "sem_seg" that contains semantic
            segmentation prediction in the same format.
    """
    values = []
    for input, output in zip(inputs, outputs):
        output = output["sem_seg"].argmax(dim=0).to(self._cpu_device)
        pred = np.array(output, dtype=np.int)
        with PathManager.open(self.input_file_to_gt_file[input["file_name"]], "rb") as f:
            gt = np.array(Image.open(f), dtype=np.int)
        gt[gt == self._ignore_label] = self._num_classes
        self._conf_matrix += np.bincount(
            self._N * pred.reshape(-1) + gt.reshape(-1), minlength=self._N**2
        ).reshape(self._N, self._N)
        values.extend(self.encode_json_sem_seg(pred, input["file_name"]))
    return {self.evaluator_name: {"predictions": values, "conf_matrix": self._conf_matrix}}