Spaces:
Runtime error
Runtime error
# coding=utf-8 | |
# Copyright 2021 The Deeplab2 Authors. | |
# | |
# Licensed under the Apache License, Version 2.0 (the "License"); | |
# you may not use this file except in compliance with the License. | |
# You may obtain a copy of the License at | |
# | |
# http://www.apache.org/licenses/LICENSE-2.0 | |
# | |
# Unless required by applicable law or agreed to in writing, software | |
# distributed under the License is distributed on an "AS IS" BASIS, | |
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
# See the License for the specific language governing permissions and | |
# limitations under the License. | |
"""This file contains common methods and constants used across this framework.""" | |
# Prediction keys used by the model output dictionary. | |
PRED_PANOPTIC_KEY = 'panoptic_pred' | |
PRED_SEMANTIC_KEY = 'semantic_pred' | |
PRED_INSTANCE_KEY = 'instance_pred' | |
PRED_INSTANCE_CENTER_KEY = 'instance_center_pred' | |
PRED_SEMANTIC_LOGITS_KEY = 'semantic_logits' | |
PRED_SEMANTIC_PROBS_KEY = 'semantic_probs' | |
PRED_INSTANCE_SCORES_KEY = 'instance_scores' | |
PRED_CENTER_HEATMAP_KEY = 'center_heatmap' | |
PRED_OFFSET_MAP_KEY = 'offset_map' | |
PRED_FRAME_OFFSET_MAP_KEY = 'frame_offset_map' | |
PRED_NEXT_OFFSET_MAP_KEY = 'next_offset_map' | |
PRED_NEXT_PANOPTIC_KEY = 'next_panoptic_pred' | |
PRED_CONCAT_NEXT_PANOPTIC_KEY = 'concat_next_panoptic_pred' | |
PRED_PIXEL_SPACE_NORMALIZED_FEATURE_KEY = 'pixel_space_normalized_feature' | |
PRED_PIXEL_SPACE_MASK_LOGITS_KEY = 'pixel_space_mask_logits' | |
PRED_TRANSFORMER_CLASS_LOGITS_KEY = 'transformer_class_logits' | |
# Ground-truth keys used by the model. | |
GT_PANOPTIC_KEY = 'panoptic_gt' | |
GT_SEMANTIC_KEY = 'semantic_gt' | |
GT_INSTANCE_CENTER_KEY = 'instance_center_gt' | |
GT_INSTANCE_REGRESSION_KEY = 'instance_regression_gt' | |
GT_FRAME_OFFSET_KEY = 'frame_offset_gt' | |
GT_IS_CROWD = 'is_crowd_gt' | |
GT_THING_ID_MASK_KEY = 'thing_id_mask_gt' | |
GT_THING_ID_CLASS_KEY = 'thing_id_class_gt' | |
GT_NEXT_INSTANCE_REGRESSION_KEY = 'next_instance_regression_gt' | |
# Raw labels. | |
GT_PANOPTIC_RAW = 'panoptic_raw' | |
GT_SEMANTIC_RAW = 'semantic_raw' | |
GT_IS_CROWD_RAW = 'is_crowd_raw' | |
GT_SIZE_RAW = 'size_raw' | |
GT_NEXT_PANOPTIC_RAW = 'next_panoptic_raw' | |
# Loss keys. | |
SEMANTIC_LOSS = 'semantic_loss' | |
CENTER_LOSS = 'center_loss' | |
REGRESSION_LOSS = 'regression_loss' | |
MOTION_LOSS = 'motion_loss' | |
NEXT_REGRESSION_LOSS = 'next_regression_loss' | |
PQ_STYLE_LOSS = 'pq_style_loss' | |
# The PQ-style loss consists of a class term and a mask dice term. | |
PQ_STYLE_LOSS_CLASS_TERM = 'pq_style_loss_class_term' | |
PQ_STYLE_LOSS_MASK_DICE_TERM = 'pq_style_loss_mask_dice_term' | |
MASK_ID_CROSS_ENTROPY_LOSS = 'mask_id_cross_entropy_loss' | |
INSTANCE_DISCRIMINATION_LOSS = 'instance_discrimination_loss' | |
TOTAL_LOSS = 'total_loss' | |
# Weight keys used by the model. | |
SEMANTIC_LOSS_WEIGHT_KEY = 'semantic_loss_weight' | |
CENTER_LOSS_WEIGHT_KEY = 'center_loss_weight' | |
REGRESSION_LOSS_WEIGHT_KEY = 'regression_loss_weight' | |
FRAME_REGRESSION_LOSS_WEIGHT_KEY = 'frame_regression_loss_weight' | |
NEXT_REGRESSION_LOSS_WEIGHT_KEY = 'next_regression_loss_weight' | |
# Misc. | |
RESIZED_IMAGE = 'resized_image' | |
IMAGE = 'image' | |
IMAGE_NAME = 'image_name' | |
SEQUENCE_ID = 'sequence_id' | |
NEXT_IMAGE = 'next_image' | |
# TfExample keys. | |
KEY_ENCODED_IMAGE = 'image/encoded' | |
KEY_ENCODED_PREV_IMAGE = 'prev_image/encoded' | |
KEY_ENCODED_NEXT_IMAGE = 'next_image/encoded' | |
KEY_IMAGE_FILENAME = 'image/filename' | |
KEY_IMAGE_FORMAT = 'image/format' | |
KEY_IMAGE_HEIGHT = 'image/height' | |
KEY_IMAGE_WIDTH = 'image/width' | |
KEY_IMAGE_CHANNELS = 'image/channels' | |
KEY_ENCODED_LABEL = 'image/segmentation/class/encoded' | |
KEY_ENCODED_PREV_LABEL = 'prev_image/segmentation/class/encoded' | |
KEY_ENCODED_NEXT_LABEL = 'next_image/segmentation/class/encoded' | |
KEY_LABEL_FORMAT = 'image/segmentation/class/format' | |
KEY_SEQUENCE_ID = 'video/sequence_id' | |
KEY_FRAME_ID = 'video/frame_id' | |
KEY_ENCODED_DEPTH = 'image/depth/encoded' | |
KEY_DEPTH_FORMAT = 'image/depth/format' | |
# Checkpoint Items | |
# All models | |
CKPT_SEMANTIC_LAST_LAYER = 'semantic_last_layer' | |
# DeepLabV3 | |
CKPT_DEEPLABV3_ASPP = 'deeplab_v3_aspp' | |
CKPT_DEEPLABV3_CLASSIFIER_CONV_BN_ACT = 'classifier_conv_bn_act' | |
# DeepLabV3+ | |
CKPT_DEEPLABV3PLUS_ASPP = 'deeplab_v3plus_aspp' | |
CKPT_DEEPLABV3PLUS_PROJECT_CONV_BN_ACT = 'deeplab_v3plus_project_conv_bn_act' | |
CKPT_DEEPLABV3PLUS_FUSE = 'deeplab_v3plus_fuse' | |
# Panoptic-DeepLab | |
CKPT_SEMANTIC_DECODER = 'semantic_decoder' | |
CKPT_SEMANTIC_HEAD_WITHOUT_LAST_LAYER = 'semantic_head_without_last_layer' | |
CKPT_INSTANCE_DECODER = 'instance_decoder' | |
CKPT_INSTANCE_CENTER_HEAD_WITHOUT_LAST_LAYER = ('instance_center_head' | |
'_without_last_layer') | |
CKPT_INSTANCE_CENTER_HEAD_LAST_LAYER = 'instance_center_head_last_layer' | |
CKPT_INSTANCE_REGRESSION_HEAD_WITHOUT_LAST_LAYER = ('instance_regression_head' | |
'_without_last_layer') | |
CKPT_INSTANCE_REGRESSION_HEAD_LAST_LAYER = 'instance_regression_head_last_layer' | |
# Motion-DeepLab | |
CKPT_MOTION_REGRESSION_HEAD_WITHOUT_LAST_LAYER = ('motion_regression_head' | |
'_without_last_layer') | |
CKPT_MOTION_REGRESSION_HEAD_LAST_LAYER = 'motion_regression_head_last_layer' | |
# ViP-DeepLab | |
CKPT_NEXT_INSTANCE_DECODER = 'next_instance_decoder' | |
CKPT_NEXT_INSTANCE_REGRESSION_HEAD_WITHOUT_LAST_LAYER = ( | |
'next_instance_regression_head_without_last_layer') | |
CKPT_NEXT_INSTANCE_REGRESSION_HEAD_LAST_LAYER = ( | |
'next_instance_regression_head_last_layer') | |
# MaX-DeepLab | |
CKPT_PIXEL_SPACE_HEAD = 'pixel_space_head' | |
CKPT_TRANSFORMER_MASK_HEAD = 'transformer_mask_head' | |
CKPT_TRANSFORMER_CLASS_HEAD = 'transformer_class_head' | |
CKPT_PIXEL_SPACE_FEATURE_BATCH_NORM = 'pixel_space_feature_batch_norm' | |
CKPT_PIXEL_SPACE_MASK_BATCH_NORM = 'pixel_space_mask_batch_norm' | |
# Supported Tasks | |
TASK_PANOPTIC_SEGMENTATION = 'panoptic_segmentation' | |
TASK_INSTANCE_SEGMENTATION = 'instance_segmentation' | |
TASK_VIDEO_PANOPTIC_SEGMENTATION = 'video_panoptic_segmentation' | |
TASK_DEPTH_AWARE_VIDEO_PANOPTIC_SEGMENTATION = ( | |
'depth_aware_video_panoptic_segmentation') | |