1. 22 Jul, 2022 1 commit
  2. 15 Jun, 2022 1 commit
    • Lezwon Castelino's avatar
      Add SimpleCopyPaste augmentation (#5825) · bbc1aac8
      Lezwon Castelino authored
      
      
      * added simple POC
      
      * added jitter and crop options
      
      * added references
      
      * moved simplecopypaste to detection module
      
      * working POC for simple copy paste in detection
      
      * added comments
      
      * remove transforms from class
      updated the labels
      added gaussian blur
      
      * removed loop for mask calculation
      
      * replaced Gaussian blur with functional api
      
      * added inplace operations
      
      * added changes to accept tuples instead of tensors
      
      * - make copy paste functional
      - make only one copy of batch and target
      
      * add inplace support within copy paste functional
      
      * Updated code for copy-paste transform
      
      * Fixed code formatting
      
      * [skip ci] removed manual thresholding
      
      * Replaced cropping by resizing data to paste
      
      * Removed inplace arg (as useless) and put a check on iscrowd target
      
      * code-formatting
      
      * Updated copypaste op to make it torch scriptable
      Added fallbacks to support LSJ
      
      * Fixed flake8
      
      * Updates according to the review
      Co-authored-by: default avatarvfdev-5 <vfdev.5@gmail.com>
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      bbc1aac8
  3. 14 Mar, 2022 2 commits
  4. 07 Mar, 2022 1 commit
  5. 04 Mar, 2022 1 commit
  6. 28 Feb, 2022 1 commit
    • Vasilis Vryniotis's avatar
      Replace get_image_size/num_channels with get_dimensions (#5487) · 095437aa
      Vasilis Vryniotis authored
      * Replace get_image_size/num_channels with get_image_dims
      
      * Reduce verbosity
      
      * Fix JIT-scriptability
      
      * Refactoring
      
      * More refactoring
      
      * Replace all _FP/_FT direct calls.
      
      * Remove usages of get_image_size and get_image_num_channels from code-base.
      
      * Fix JIT issues
      
      * Adding missing assertion.
      095437aa
  7. 20 Feb, 2022 1 commit
  8. 18 Feb, 2022 1 commit
  9. 25 Jan, 2022 1 commit
  10. 28 Oct, 2021 1 commit
  11. 04 Oct, 2021 1 commit
    • Philip Meier's avatar
      Add ufmt (usort + black) as code formatter (#4384) · 5f0edb97
      Philip Meier authored
      
      
      * add ufmt as code formatter
      
      * cleanup
      
      * quote ufmt requirement
      
      * split imports into more groups
      
      * regenerate circleci config
      
      * fix CI
      
      * clarify local testing utils section
      
      * use ufmt pre-commit hook
      
      * split relative imports into local category
      
      * Revert "split relative imports into local category"
      
      This reverts commit f2e224cde2008c56c9347c1f69746d39065cdd51.
      
      * pin black and usort dependencies
      
      * fix local test utils detection
      
      * fix ufmt rev
      
      * add reference utils to local category
      
      * fix usort config
      
      * remove custom categories sorting
      
      * Run pre-commit without fixing flake8
      
      * got a double import in merge
      Co-authored-by: default avatarNicolas Hug <nicolashug@fb.com>
      5f0edb97
  12. 30 Sep, 2021 1 commit
  13. 21 Sep, 2021 1 commit
  14. 26 Aug, 2021 1 commit
  15. 30 Apr, 2021 1 commit
    • Vasilis Vryniotis's avatar
      Add SSD architecture with VGG16 backbone (#3403) · 730c5e1e
      Vasilis Vryniotis authored
      * Early skeleton of API.
      
      * Adding MultiFeatureMap and vgg16 backbone.
      
      * Making vgg16 backbone same as paper.
      
      * Making code generic to support all vggs.
      
      * Moving vgg's extra layers a separate class + L2 scaling.
      
      * Adding header vgg layers.
      
      * Fix maxpool patching.
      
      * Refactoring code to allow for support of different backbones & sizes:
      - Skeleton for Default Boxes generator class
      - Dynamic estimation of configuration when possible
      - Addition of types
      
      * Complete the implementation of DefaultBox generator.
      
      * Replace randn with empty.
      
      * Minor refactoring
      
      * Making clamping between 0 and 1 optional.
      
      * Change xywh to xyxy encoding.
      
      * Adding parameters and reusing objects in constructor.
      
      * Temporarily inherit from Retina to avoid dup code.
      
      * Implement forward methods + temp workarounds to inherit from retina.
      
      * Inherit more methods from retinanet.
      
      * Fix type error.
      
      * Add Regression loss.
      
      * Fixing JIT issues.
      
      * Change JIT workaround to minimize new code.
      
      * Fixing initialization bug.
      
      * Add classification loss.
      
      * Update todos.
      
      * Add weight loading support.
      
      * Support SSD512.
      
      * Change kernel_size to get output size 1x1
      
      * Add xavier init and refactoring.
      
      * Adding unit-tests and fixing JIT issues.
      
      * Add a test for dbox generator.
      
      * Remove unnecessary import.
      
      * Workaround on GeneralizedRCNNTransform to support fixed size input.
      
      * Remove unnecessary random calls from the test.
      
      * Remove more rand calls from the test.
      
      * change mapping and handling of empty labels
      
      * Fix JIT warnings.
      
      * Speed up loss.
      
      * Convert 0-1 dboxes to original size.
      
      * Fix warning.
      
      * Fix tests.
      
      * Update comments.
      
      * Fixing minor bugs.
      
      * Introduce a custom DBoxMatcher.
      
      * Minor refactoring
      
      * Move extra layer definition inside feature extractor.
      
      * handle no bias on init.
      
      * Remove fixed image size limitation
      
      * Change initialization values for bias of classification head.
      
      * Refactoring and update test file.
      
      * Adding ResNet backbone.
      
      * Minor refactoring.
      
      * Remove inheritance of retina and general refactoring.
      
      * SSD should fix the input size.
      
      * Fixing messages and comments.
      
      * Silently ignoring exception if test-only.
      
      * Update comments.
      
      * Update regression loss.
      
      * Restore Xavier init everywhere, update the negative sampling method, change the clipping approach.
      
      * Fixing tests.
      
      * Refactor to move the losses from the Head to the SSD.
      
      * Removing resnet50 ssd version.
      
      * Adding support for best performing backbone and its config.
      
      * Refactor and clean up the API.
      
      * Fix lint
      
      * Update todos and comments.
      
      * Adding RandomHorizontalFlip and RandomIoUCrop transforms.
      
      * Adding necessary checks to our tranforms.
      
      * Adding RandomZoomOut.
      
      * Adding RandomPhotometricDistort.
      
      * Moving Detection transforms to references.
      
      * Update presets
      
      * fix lint
      
      * leave compose and object
      
      * Adding scaling for completeness.
      
      * Adding params in the repr
      
      * Remove unnecessary import.
      
      * minor refactoring
      
      * Remove unnecessary call.
      
      * Give better names to DBox* classes
      
      * Port num_anchors estimation in generator
      
      * Remove rescaling and fix presets
      
      * Add the ability to pass a custom head and refactoring.
      
      * fix lint
      
      * Fix unit-test
      
      * Update todos.
      
      * Change mean values.
      
      * Change the default parameter of SSD to train the full VGG16 and remove the catch of exception for eval only.
      
      * Adding documentation
      
      * Adding weights and updating readmes.
      
      * Update the model weights with a more performing model.
      
      * Adding doc for head.
      
      * Restore import.
      730c5e1e
  16. 07 Jan, 2021 1 commit
  17. 19 May, 2019 1 commit
    • Francisco Massa's avatar
      Add Faster R-CNN and Mask R-CNN (#898) · ccd1b27d
      Francisco Massa authored
      * [Remove] Use stride in 1x1 in resnet
      
      This is temporary
      
      * Move files to torchvision
      
      Inference works
      
      * Now seems to give same results
      
      Was using the wrong number of total iterations in the end...
      
      * Distributed evaluation seems to work
      
      * Factor out transforms into its own file
      
      * Enabling horizontal flips
      
      * MultiStepLR and preparing for launches
      
      * Add warmup
      
      * Clip gt boxes to images
      
      Seems to be crucial to avoid divergence. Also reduces the losses over different processes for better logging
      
      * Single-GPU batch-size 1 of CocoEvaluator works
      
      * Multi-GPU CocoEvaluator works
      
      Gives the exact same results as the other one, and also supports batch size > 1
      
      * Silence prints from pycocotools
      
      * Commenting unneeded code for run
      
      * Fixes
      
      * Improvements and cleanups
      
      * Remove scales from Pooler
      
      It was not a free parameter, and depended only on the feature map dimensions
      
      * Cleanups
      
      * More cleanups
      
      * Add misc ops and totally remove maskrcnn_benchmark
      
      * nit
      
      * Move Pooler to ops
      
      * Make FPN slightly more generic
      
      * Minor improvements or FPN
      
      * Move FPN to ops
      
      * Move functions to utils
      
      * Lint fixes
      
      * More lint
      
      * Minor cleanups
      
      * Add FasterRCNN
      
      * Remove modifications to resnet
      
      * Fixes for Python2
      
      * More lint fixes
      
      * Add aspect ratio grouping
      
      * Move functions around
      
      * Make evaluation use all images for mAP, even those without annotations
      
      * Bugfix with DDP introduced in last commit
      
      * [Check] Remove category mapping
      
      * Lint
      
      * Make GroupedBatchSampler prioritize largest clusters in the end of iteration
      
      * Bugfix for selecting the iou_types during evaluation
      
      Also switch to using the torchvision normalization now on, given that we are using torchvision base models
      
      * More lint
      
      * Add barrier after init_process_group
      
      Better be safe than sorry
      
      * Make evaluation only use one CPU thread per process
      
      When doing multi-gpu evaluation, paste_masks_in_image is multithreaded and throttles evaluation altogether. Also change default for aspect ratio group to match Detectron
      
      * Fix bug in GroupedBatchSampler
      
      After the first epoch, the number of batch elements could be larger than batch_size, because they got accumulated from the previous iteration. Fix this and also rename some variables for more clarity
      
      * Start adding KeypointRCNN
      
      Currently runs and perform inference, need to do full training
      
      * Remove use of opencv in keypoint inference
      
      PyTorch 1.1 adds support for bicubic interpolation which matches opencv (except for empty boxes, where one of the dimensions is 1, but that's fine)
      
      * Remove Masker
      
      Towards having mask postprocessing done inside the model
      
      * Bugfixes in previous change plus cleanups
      
      * Preparing to run keypoint training
      
      * Zero initialize bias for mask heads
      
      * Minor improvements on print
      
      * Towards moving resize to model
      
      Also remove class mapping specific to COCO
      
      * Remove zero init in bias for mask head
      
      Checking if it decreased accuracy
      
      * [CHECK] See if this change brings back expected accuracy
      
      * Cleanups on model and training script
      
      * Remove BatchCollator
      
      * Some cleanups in coco_eval
      
      * Move postprocess to transform
      
      * Revert back scaling and start adding conversion to coco api
      
      The scaling didn't seem to matter
      
      * Use decorator instead of context manager in evaluate
      
      * Move training and evaluation functions to a separate file
      
      Also adds support for obtaining a coco API object from our dataset
      
      * Remove unused code
      
      * Update location of lr_scheduler
      
      Its behavior has changed in PyTorch 1.1
      
      * Remove debug code
      
      * Typo
      
      * Bugfix
      
      * Move image normalization to model
      
      * Remove legacy tensor constructors
      
      Also move away from Int and instead use int64
      
      * Bugfix in MultiscaleRoiAlign
      
      * Move transforms to its own file
      
      * Add missing file
      
      * Lint
      
      * More lint
      
      * Add some basic test for detection models
      
      * More lint
      ccd1b27d