def get_error()

in lib/model/HGPIFuMRNet.py [0:0]


    def get_error(self):
        '''
        return the loss given the ground truth labels and prediction
        '''

        error = {}
        if self.opt.train_full_pifu:
            if not self.opt.no_intermediate_loss:
                error['Err(occ)'] = 0.0
                for i in range(self.preds_low.size(0)):
                    error['Err(occ)'] += self.criteria['occ'](self.preds_low[i], self.labels, self.gamma, self.w)
                error['Err(occ)'] /= self.preds_low.size(0)

            error['Err(occ:fine)'] = 0.0
            for i in range(self.preds_interm.size(0)):
                error['Err(occ:fine)'] += self.criteria['occ'](self.preds_interm[i], self.labels, self.gamma, self.w)
            error['Err(occ:fine)'] /= self.preds_interm.size(0)

            if self.nmls is not None and self.labels_nml is not None:
                error['Err(nml:fine)'] = self.criteria['nml'](self.nmls, self.labels_nml)
        else:
            error['Err(occ:fine)'] = 0.0
            for i in range(self.preds_interm.size(0)):
                error['Err(occ:fine)'] += self.criteria['occ'](self.preds_interm[i], self.labels, self.gamma, self.w)
            error['Err(occ:fine)'] /= self.preds_interm.size(0)

            if self.nmls is not None and self.labels_nml is not None:
                error['Err(nml:fine)'] = self.criteria['nml'](self.nmls, self.labels_nml)
        
        return error