def validate_anno_format(gt_annos, dt_annos):
        """Verify that the format/dimensions for the annotations are correct.
        Keys correspond to defintions here:
        https://github.com/NVIDIA/DIGITS/blob/v4.0.0-rc.3/digits/extensions/data/objectDetection/README.md
        """
        necessary_keys = ['name', 'alpha', 'bbox', 'dimensions', 'location', 'rotation_y', 'score']
        for i, (gt_anno, dt_anno) in enumerate(zip(gt_annos, dt_annos)):
            for key in necessary_keys:
                assert key in gt_anno, "{} not present in GT {}".format(key, i)
                assert key in dt_anno, "{} not present in prediction {}".format(key, i)
                if key in ['bbox', 'dimensions', 'location']:
                    # make sure these fields are 2D numpy array
                    assert len(gt_anno[key].shape) == 2, key
                    assert len(dt_anno[key].shape) == 2, key

            for key in ['truncated', 'occluded', 'alpha', 'rotation_y', 'score']:
                if len(gt_anno[key].shape) == 2:
                    gt_anno[key] = np.squeeze(gt_anno[key], axis=0)
                if len(dt_anno[key].shape) == 2:
                    dt_anno[key] = np.squeeze(dt_anno[key], axis=0)
        return gt_annos, dt_annos
Verify that the format/dimensions for the annotations are correct.
        Keys correspond to defintions here:
        https://github.com/NVIDIA/DIGITS/blob/v4.0.0-rc.3/digits/extensions/data/objectDetection/README.md
        
tridet/evaluators/kitti_3d_evaluator.py