- 15 Jul, 2019 1 commit
-
-
pkulzc authored
257914648 by lzc: Internal changes -- 257525973 by Zhichao Lu: Fixes bug that silently prevents checkpoints from loading when training w/ eager + functions. Also sets up scripts to run training. -- 257296614 by Zhichao Lu: Adding detection_features to model outputs -- 257234565 by Zhichao Lu: Fix wrong order of `classes_with_max_scores` in class-agnostic NMS caused by sorting in partitioned-NMS. -- 257232002 by ronnyvotel: Supporting `filter_nonoverlapping` option in np_box_list_ops.clip_to_window(). -- 257198282 by Zhichao Lu: Adding the focal loss and l1 loss from the Objects as Points paper. -- 257089535 by Zhichao Lu: Create Keras based ssd + resnetv1 + fpn. -- 257087407 by Zhichao Lu: Make object_detection/data_decoders Python3-compatible. -- 257004582 by Zhichao Lu: Updates _decode_raw_data_into_masks_and_boxes to the latest binary masks-to-string encoding format. -- 257002124 by Zhichao Lu: Make object_detection/utils Python3-compatible, except json_utils. The patching trick used in json_utils is not going to work in Python 3. -- 256795056 by lzc: Add a detection_anchor_indices field to detection outputs. -- 256477542 by Zhichao Lu: Make object_detection/core Python3-compatible. -- 256387593 by Zhichao Lu: Edit class_id_function_approximations builder to skip class ids not present in label map. -- 256259039 by Zhichao Lu: Move NMS to TPU for FasterRCNN. -- 256071360 by rathodv: When multiclass_scores is empty, add one-hot encoding of groundtruth_classes as multiclass scores so that data_augmentation ops that expect the presence of multiclass_scores don't have to individually handle this case. Also copy input tensor_dict to out_tensor_dict first to avoid inplace modification. -- 256023645 by Zhichao Lu: Adds the first WIP iterations of TensorFlow v2 eager + functions style custom training & evaluation loops. -- 255980623 by Zhichao Lu: Adds a new data augmentation operation "remap_labels" which remaps a set of labels to a new label. -- 255753259 by Zhichao Lu: Announcement of the released evaluation tutorial for Open Images Challenge 2019. -- 255698776 by lzc: Fix rewrite_nn_resize_op function which was broken by tf forward compatibility movement. -- 255623150 by Zhichao Lu: Add Keras-based ResnetV1 models. -- 255504992 by Zhichao Lu: Fixing the typo in specifying label expansion for ground truth segmentation file. -- 255470768 by Zhichao Lu: 1. Fixing Python bug with parsed arguments. 2. Adding capability to parse relevant columns from CSV header. 3. Fixing bug with duplicated labels expansion. -- 255462432 by Zhichao Lu: Adds a new data augmentation operation "drop_label_probabilistically" which drops a given label with the given probability. This supports experiments on training in the presence of label noise. -- 255441632 by rathodv: Fallback on groundtruth classes when multiclass_scores tensor is empty. -- 255434899 by Zhichao Lu: Ensuring evaluation binary can run even with big files by synchronizing processing of ground truth and predictions: in this way, ground truth is not stored but immediatly used for evaluation. In case gt of object masks, this allows to run evaluations on relatively large sets. -- 255337855 by lzc: Internal change. -- 255308908 by Zhichao Lu: Add comment to clarify usage of calibration parameters proto. -- 255266371 by Zhichao Lu: Ensuring correct processing of the case, when no groundtruth masks are provided for an image. -- 255236648 by Zhichao Lu: Refactor model_builder in faster_rcnn.py to a util_map, so that it's possible to be overwritten. -- 255093285 by Zhichao Lu: Updating capability to subsample data during evaluation -- 255081222 by rathodv: Convert groundtruth masks to be of type float32 before its used in the loss function. When using mixed precision training, masks are represented using bfloat16 tensors in the input pipeline for performance reasons. We need to convert them to float32 before using it in the loss function. -- 254788436 by Zhichao Lu: Add forward_compatible to non_max_suppression_with_scores to make it is compatible with older tensorflow version. -- 254442362 by Zhichao Lu: Add num_layer field to ssd feature extractor proto. -- 253911582 by jonathanhuang: Plumbs Soft-NMS options (using the new tf.image.non_max_suppression_with_scores op) into the TF Object Detection API. It adds a `soft_nms_sigma` field to the postprocessing proto file and plumbs this through to both the multiclass and class_agnostic versions of NMS. Note that there is no effect on behavior of NMS when soft_nms_sigma=0 (which it is set to by default). See also "Soft-NMS -- Improving Object Detection With One Line of Code" by Bodla et al (https://arxiv.org/abs/1704.04503) -- 253703949 by Zhichao Lu: Internal test fixes. -- 253151266 by Zhichao Lu: Fix the op type check for FusedBatchNorm, given that we introduced FusedBatchNormV3 in a previous change. -- 252718956 by Zhichao Lu: Customize activation function to enable relu6 instead of relu for saliency prediction model seastarization -- 252158593 by Zhichao Lu: Make object_detection/core Python3-compatible. -- 252150717 by Zhichao Lu: Make object_detection/core Python3-compatible. -- 251967048 by Zhichao Lu: Make GraphRewriter proto extensible. -- 251950039 by Zhichao Lu: Remove experimental_export_device_assignment from TPUEstimator.export_savedmodel(), so as to remove rewrite_for_inference(). As a replacement, export_savedmodel() V2 API supports device_assignment where user call tpu.rewrite in model_fn and pass in device_assigment there. -- 251890697 by rathodv: Updated docstring to include new output nodes. -- 251662894 by Zhichao Lu: Add autoaugment augmentation option to objection detection api codebase. This is an available option in preprocessor.py. The intended usage of autoaugment is to be done along with random flipping and cropping for best results. -- 251532908 by Zhichao Lu: Add TrainingDataType enum to track whether class-specific or agnostic data was used to fit the calibration function. This is useful, since classes with few observations may require a calibration function fit on all classes. -- 251511339 by Zhichao Lu: Add multiclass isotonic regression to the calibration builder. -- 251317769 by pengchong: Internal Change. -- 250729989 by Zhichao Lu: Fixing bug in gt statistics count in case of mask and box annotations. -- 250729627 by Zhichao Lu: Label expansion for segmentation. -- 250724905 by Zhichao Lu: Fix use_depthwise in fpn and test it with fpnlite on ssd + mobilenet v2. -- 250670379 by Zhichao Lu: Internal change 250630364 by lzc: Fix detection_model_zoo footnotes -- 250560654 by Zhichao Lu: Fix static shape issue in matmul_crop_and_resize. -- 250534857 by Zhichao Lu: Edit class agnostic calibration function docstring to more accurately describe the function's outputs. -- 250533277 by Zhichao Lu: Edit the multiclass messages to use class ids instead of labels. -- PiperOrigin-RevId: 257914648
-
- 07 Mar, 2019 1 commit
-
-
pkulzc authored
236813471 by lzc: Internal change. -- 236507310 by lzc: Fix preprocess.random_resize_method config type issue. The target height and width will be passed as "size" to tf.image.resize_images which only accepts integer. -- 236409989 by Zhichao Lu: Config export_to_tpu from function parameter instead of HParams for TPU inference. -- 236403186 by Zhichao Lu: Make graph file names optional arguments. -- 236237072 by Zhichao Lu: Minor bugfix for keyword args. -- 236209602 by Zhichao Lu: Add support for PartitionedVariable to get_variables_available_in_checkpoint. -- 235828658 by Zhichao Lu: Automatically stop evaluation jobs when training is finished. -- 235817964 by Zhichao Lu: Add an optional process_metrics_fn callback to eval_util, it gets called with evaluation results once each evaluation is complete. -- 235788721 by lzc: Fix yml file tf runtime version. -- 235262897 by Zhichao Lu: Add keypoint support to the random_pad_image preprocessor method. -- 235257380 by Zhichao Lu: Support InputDataFields.groundtruth_confidences in retain_groundtruth(), retain_groundtruth_with_positive_classes(), filter_groundtruth_with_crowd_boxes(), filter_groundtruth_with_nan_box_coordinates(), filter_unrecognized_classes(). -- 235109188 by Zhichao Lu: Fix bug in pad_input_data_to_static_shapes for num_additional_channels > 0; make color-specific data augmentation only touch RGB channels. -- 235045010 by Zhichao Lu: Don't slice class_predictions_with_background when add_background_class is false. -- 235026189 by lzc: Fix import in g3doc. -- 234863426 by Zhichao Lu: Added fixes in exporter to allow writing a checkpoint to a specified temporary directory. -- 234671886 by lzc: Internal Change. -- 234630803 by rathodv: Internal Change. -- 233985896 by Zhichao Lu: Add Neumann optimizer to object detection. -- 233560911 by Zhichao Lu: Add NAS-FPN object detection with Resnet and Mobilenet v2. -- 233513536 by Zhichao Lu: Export TPU compatible object detection model -- 233495772 by lzc: Internal change. -- 233453557 by Zhichao Lu: Create Keras-based SSD+MobilenetV1 for object detection. -- 233220074 by lzc: Update release notes date. -- 233165761 by Zhichao Lu: Support depth_multiplier and min_depth in _SSDResnetV1FpnFeatureExtractor. -- 233160046 by lzc: Internal change. -- 232926599 by Zhichao Lu: [tf.data] Switching tf.data functions to use `defun`, providing an escape hatch to continue using the legacy `Defun`. There are subtle differences between the implementation of `defun` and `Defun` (such as resources handling or control flow) and it is possible that input pipelines that use control flow or resources in their functions might be affected by this change. To migrate majority of existing pipelines to the recommended way of creating functions in TF 2.0 world, while allowing (a small number of) existing pipelines to continue relying on the deprecated behavior, this CL provides an escape hatch. If your input pipeline is affected by this CL, it should apply the escape hatch by replacing `foo.map(...)` with `foo.map_with_legacy_function(...)`. -- 232891621 by Zhichao Lu: Modify faster_rcnn meta architecture to normalize raw detections. -- 232875817 by Zhichao Lu: Make calibration a post-processing step. Specifically: - Move the calibration config from pipeline.proto --> post_processing.proto - Edit post_processing_builder.py to return a calibration function. If no calibration config is provided, it None. - Edit SSD and FasterRCNN meta architectures to optionally call the calibration function on detection scores after score conversion and before NMS. -- 232704481 by Zhichao Lu: Edit calibration builder to build a function that will be used within a detection model's `postprocess` method, after score conversion and before non-maxima suppression. Specific Edits: - The returned function now accepts class_predictions_with_background as its argument instead of detection_scores and detection_classes. - Class-specific calibration was temporarily removed, as it requires more significant refactoring. Will be added later. -- 232615379 by Zhichao Lu: Internal change -- 232483345 by ronnyvotel: Making the use of bfloat16 restricted to TPUs. -- 232399572 by Zhichao Lu: Edit calibration builder and proto to support class-agnostic calibration. Specifically: - Edit calibration protos to include path to relevant label map if required for class-specific calibration. Previously, label maps were inferred from other parts of the pipeline proto; this allows all information required by the builder stay within the calibration proto and remove extraneous information from being passed with class-agnostic calibration. - Add class-agnostic protos to the calibration config. Note that the proto supports sigmoid and linear interpolation parameters, but the builder currently only supports linear interpolation. -- 231613048 by Zhichao Lu: Add calibration builder for applying calibration transformations from output of object detection models. Specifically: - Add calibration proto to support sigmoid and isotonic regression (stepwise function) calibration. - Add a builder to support calibration from isotonic regression outputs. -- 231519786 by lzc: model_builder test refactor. - removed proto text boilerplate in each test case and let them call a create_default_proto function instead. - consolidated all separate ssd model creation tests into one. - consolidated all separate faster rcnn model creation tests into one. - used parameterized test for testing mask rcnn models and use_matmul_crop_and_resize - added all failures test. -- 231448169 by Zhichao Lu: Return static shape as a constant tensor. -- 231423126 by lzc: Add a release note for OID v4 models. -- 231401941 by Zhichao Lu: Adding correct labelmap for the models trained on Open Images V4 (*oid_v4 config suffix). -- 231320357 by Zhichao Lu: Add scope to Nearest Neighbor Resize op so that it stays in the same name scope as the original resize ops. -- 231257699 by Zhichao Lu: Switch to using preserve_aspect_ratio in tf.image.resize_images rather than using a custom implementation. -- 231247368 by rathodv: Internal change. -- 231004874 by lzc: Update documentations to use tf 1.12 for object detection API. -- 230999911 by rathodv: Use tf.batch_gather instead of ops.batch_gather -- 230999720 by huizhongc: Fix weight equalization test in ops_test. -- 230984728 by rathodv: Internal update. -- 230929019 by lzc: Add an option to replace preprocess operation with placeholder for ssd feature extractor. -- 230845266 by lzc: Require tensorflow version 1.12 for object detection API and rename keras_applications to keras_models -- 230392064 by lzc: Add RetinaNet 101 checkpoint trained on OID v4 to detection model zoo. -- 230014128 by derekjchow: This file was re-located below the tensorflow/lite/g3doc/convert -- 229941449 by lzc: Update SSD mobilenet v2 quantized model download path. -- 229843662 by lzc: Add an option to use native resize tf op in fpn top-down feature map generation. -- 229636034 by rathodv: Add deprecation notice to a few old parameters in train.proto -- 228959078 by derekjchow: Remove duplicate elif case in _check_and_convert_legacy_input_config_key -- 228749719 by rathodv: Minor refactoring to make exporter's `build_detection_graph` method public. -- 228573828 by rathodv: Mofity model.postprocess to return raw detections and raw scores. Modify, post-process methods in core/model.py and the meta architectures to export raw detection (without any non-max suppression) and raw multiclass score logits for those detections. -- 228420670 by Zhichao Lu: Add shims for custom architectures for object detection models. -- 228241692 by Zhichao Lu: Fix the comment on "losses_mask" in "Loss" class. -- 228223810 by Zhichao Lu: Support other_heads' predictions in WeightSharedConvolutionalBoxPredictor. Also remove a few unused parameters and fix a couple of comments in convolutional_box_predictor.py. -- 228200588 by Zhichao Lu: Add Expected Calibration Error and an evaluator that calculates the metric for object detections. -- 228167740 by lzc: Add option to use bounded activations in FPN top-down feature map generation. -- 227767700 by rathodv: Internal. -- 226295236 by Zhichao Lu: Add Open Image V4 Resnet101-FPN training config to third_party -- 226254842 by Zhichao Lu: Fix typo in documentation. -- 225833971 by Zhichao Lu: Option to have no resizer in object detection model. -- 225824890 by lzc: Fixes p3 compatibility for model_lib.py -- 225760897 by menglong: normalizer should be at least 1. -- 225559842 by menglong: Add extra logic filtering unrecognized classes. -- 225379421 by lzc: Add faster_rcnn_inception_resnet_v2_atrous_oid_v4 config to third_party -- 225368337 by Zhichao Lu: Add extra logic filtering unrecognized classes. -- 225341095 by Zhichao Lu: Adding Open Images V4 models to OD API model zoo and corresponding configs to the configs. -- 225218450 by menglong: Add extra logic filtering unrecognized classes. -- 225057591 by Zhichao Lu: Internal change. -- 224895417 by rathodv: Internal change. -- 224209282 by Zhichao Lu: Add two data augmentations to object detection: (1) Self-concat (2) Absolute pads. -- 224073762 by Zhichao Lu: Do not create tf.constant until _generate() is actually called in the object detector. -- PiperOrigin-RevId: 236813471
-