1. 28 Oct, 2021 1 commit
  2. 15 Oct, 2021 1 commit
  3. 04 Oct, 2021 2 commits
    • Nicolas Hug's avatar
      Fix all outstanding flake8 issues (#4535) · b81d189d
      Nicolas Hug authored
      b81d189d
    • 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
  4. 01 Oct, 2021 1 commit
  5. 27 Apr, 2021 1 commit
  6. 10 Mar, 2021 1 commit
  7. 27 Jan, 2021 1 commit
  8. 14 Jan, 2021 1 commit
  9. 22 Dec, 2020 1 commit
  10. 15 Dec, 2020 1 commit
  11. 13 Oct, 2020 1 commit
    • Francisco Massa's avatar
      RetinaNet object detection (take 2) (#2784) · 5bb81c8e
      Francisco Massa authored
      
      
      * Add rough implementation of RetinaNet.
      
      * Move AnchorGenerator to a seperate file.
      
      * Move box similarity to Matcher.
      
      * Expose extra blocks in FPN.
      
      * Expose retinanet in __init__.py.
      
      * Use P6 and P7 in FPN for retinanet.
      
      * Use parameters from retinanet for anchor generation.
      
      * General fixes for retinanet model.
      
      * Implement loss for retinanet heads.
      
      * Output reshaped outputs from retinanet heads.
      
      * Add postprocessing of detections.
      
      * Small fixes.
      
      * Remove unused argument.
      
      * Remove python2 invocation of super.
      
      * Add postprocessing for additional outputs.
      
      * Add missing import of ImageList.
      
      * Remove redundant import.
      
      * Simplify class correction.
      
      * Fix pylint warnings.
      
      * Remove the label adjustment for background class.
      
      * Set default score threshold to 0.05.
      
      * Add weight initialization for regression layer.
      
      * Allow training on images with no annotations.
      
      * Use smooth_l1_loss with beta value.
      
      * Add more typehints for TorchScript conversions.
      
      * Fix linting issues.
      
      * Fix type hints in postprocess_detections.
      
      * Fix type annotations for TorchScript.
      
      * Fix inconsistency with matched_idxs.
      
      * Add retinanet model test.
      
      * Add missing JIT annotations.
      
      * Remove redundant model construction
      
      Make tests pass
      
      * Fix bugs during training on newer PyTorch and unused params in DDP
      
      Needs cleanup and to add back support for images with no annotations
      
      * Cleanup resnet_fpn_backbone
      
      * Use L1 loss for regression
      
      Gives 1mAP improvement over smooth l1
      
      * Disable support for images with no annotations
      
      Need to fix distributed first
      
      * Fix retinanet tests
      
      Need to deduplicate those box checks
      
      * Fix Lint
      
      * Add pretrained model
      
      * Add training info for retinanet
      Co-authored-by: default avatarHans Gaiser <hansg91@gmail.com>
      Co-authored-by: default avatarHans Gaiser <hans.gaiser@robovalley.com>
      Co-authored-by: default avatarHans Gaiser <hans.gaiser@robohouse.com>
      5bb81c8e
  12. 29 Sep, 2020 1 commit
    • Qi's avatar
      change the default anchor generator setting (#2722) · 09deac52
      Qi authored
      Change the default anchor generator settings to default Faster RCNN version(without FPN), so it is hopefully less misleading. Also add an assert to grad_anchors functions to make sure people use it as it is aspected.
      09deac52
  13. 24 Sep, 2020 1 commit
  14. 26 May, 2020 1 commit
  15. 19 May, 2020 1 commit
    • Mike Ruberry's avatar
      Updates integer division to use floor division operator (#2234) · 8e611cfd
      Mike Ruberry authored
      Integer division using the div operator is deprecated and will throw a RuntimeError in PyTorch 1.6 (and on PyTorch Master very soon). Running a test build with a recent Torchvision commit and integer division using div ('/') disabled revealed this integer division. 
      
      I'll re-run the tests once this is fixed in case it's masking additional issues.
      8e611cfd
  16. 18 May, 2020 1 commit
  17. 07 May, 2020 2 commits
    • Francisco Massa's avatar
      Fix mypy type annotations (#1696) · f71316fa
      Francisco Massa authored
      
      
      * Fix mypy type annotations
      
      * follow torchscript Tuple type
      
      * redefine torch_choice output type
      
      * change the type in cached_grid_anchors
      
      * minor bug
      Co-authored-by: default avatarGuanheng Zhang <zhangguanheng@devfair0197.h2.fair>
      Co-authored-by: default avatarGuanheng Zhang <zhangguanheng@learnfair0341.h2.fair>
      f71316fa
    • Negin Raoof's avatar
      [ONNX] Fix model export for images w/ no detection (#2126) · 3ac864dc
      Negin Raoof authored
      * Fixing nms on boxes when no detection
      
      * test
      
      * Fix for scale_factor computation
      
      * remove newline
      
      * Fix for mask_rcnn dynanmic axes
      
      * Clean up
      
      * Update transform.py
      
      * Fix for torchscript
      
      * Fix scripting errors
      
      * Fix annotation
      
      * Fix lint
      
      * Fix annotation
      
      * Fix for interpolate scripting
      
      * Fix for scripting
      
      * refactoring
      
      * refactor the code
      
      * Fix annotation
      
      * Fixed annotations
      
      * Added test for resize
      
      * lint
      
      * format
      
      * bump ORT
      
      * ort-nightly version
      
      * Going to ort 1.1.0
      
      * remove version
      
      * install typing-extension
      
      * Export model for images with no detection
      
      * Upgrade ort nightly
      
      * update ORT
      
      * Update test_onnx.py
      
      * updated tests
      
      * Updated tests
      
      * merge
      
      * Update transforms.py
      
      * Update cityscapes.py
      
      * Update celeba.py
      
      * Update caltech.py
      
      * Update pkg_helpers.bash
      
      * Clean up
      
      * Clean up for dynamic split
      
      * Remove extra casts
      
      * flake8
      3ac864dc
  18. 05 May, 2020 1 commit
  19. 28 Apr, 2020 1 commit
  20. 24 Apr, 2020 1 commit
  21. 31 Mar, 2020 2 commits
    • Negin Raoof's avatar
      ONNX export for variable input sizes (#1840) · 986d2423
      Negin Raoof authored
      
      
      * fixes and tests for variable input size
      
      * transform test fix
      
      * Fix comment
      
      * Dynamic shape for keypoint_rcnn
      
      * Update test_onnx.py
      
      * Update rpn.py
      
      * Fix for split on RPN
      
      * Fixes for feedbacks
      
      * flake8
      
      * topk fix
      
      * Fix build
      
      * branch on tracing
      
      * fix for scalar tensor
      
      * Fixes for script type annotations
      
      * Update rpn.py
      
      * clean up
      
      * clean up
      
      * Update rpn.py
      
      * Updated for feedback
      
      * Fix for comments
      
      * revert to use tensor
      
      * Added test for box clip
      
      * Fixes for feedback
      
      * Fix for feedback
      
      * ORT version revert
      
      * Update ort
      
      * Update .travis.yml
      
      * Update test_onnx.py
      
      * Update test_onnx.py
      
      * Tensor sizes
      
      * Fix for dynamic split
      
      * Try disable tests
      
      * pytest verbose
      
      * revert one test
      
      * enable tests
      
      * Update .travis.yml
      
      * Update .travis.yml
      
      * Update .travis.yml
      
      * Update test_onnx.py
      
      * Update .travis.yml
      
      * Passing device
      
      * Fixes for test
      
      * Fix for boxes datatype
      
      * clean up
      Co-authored-by: default avatarFrancisco Massa <fvsmassa@gmail.com>
      986d2423
    • Philip Meier's avatar
      Remove python2 compability code (#2033) · 24f16a33
      Philip Meier authored
      * remove sys.version_info == 2
      
      * remove sys.version_info < 3
      
      * remove from __future__ imports
      24f16a33
  22. 20 Mar, 2020 1 commit
  23. 10 Mar, 2020 1 commit
  24. 13 Jan, 2020 1 commit
  25. 11 Dec, 2019 1 commit
  26. 30 Nov, 2019 1 commit
    • driazati's avatar
      Add tests for results in script vs eager mode (#1430) · 227027d5
      driazati authored
      * Add tests for results in script vs eager mode
      
      This copies some logic from `test_jit.py` to check that a TorchScript'ed
      model's outputs are the same as outputs from the model in eager mode.
      
      To support differences in TorchScript / eager mode outputs, an
      `unwrapper` function can be provided per-model.
      
      * Fix inception, use PYTORCH_TEST_WITH_SLOW
      
      * Update
      
      * Remove assertNestedTensorObjectsEqual
      
      * Add PYTORCH_TEST_WITH_SLOW to CircleCI config
      
      * Add MaskRCNN unwrapper
      
      * fix prec args
      
      * Remove CI changes
      
      * update
      
      * Update
      
      * remove expect changes
      
      * Fix tolerance bug
      
      * Fix breakages
      
      * Fix quantized resnet
      
      * Fix merge errors and simplify code
      
      * DeepLabV3 has been fixed
      
      * Temporarily disable jit compilation
      227027d5
  27. 25 Nov, 2019 1 commit
    • eellison's avatar
      Make maskrcnn scriptable (#1407) · d88d8961
      eellison authored
      * almost working...
      
      * respond to comments
      
      * add empty tensor op, handle different output types in generalized rcnn
      
      * clean ups
      
      * address comments
      
      * more changes
      
      * it's working!
      
      * torchscript bugs
      
      * add script/ eager test
      
      * eval script model
      
      * fix flake
      
      * division import
      
      * py2 compat
      
      * update test, fix arange bug
      
      * import division statement
      
      * fix linter
      
      * fixes
      
      * changes needed for JIT master
      
      * cleanups
      
      * remove imagelist_to
      
      * requested changes
      
      * Make FPN backwards-compatible and torchscript compatible
      
      We remove support for feature channels=0, but support for it was already a bit limited
      
      * Fix ONNX regression
      d88d8961
  28. 06 Nov, 2019 1 commit
  29. 15 Oct, 2019 1 commit
    • Lara Haidar's avatar
      Support Exporting RPN to ONNX (#1329) · 1d6145d1
      Lara Haidar authored
      * Support Exporting RPN to ONNX
      
      * address PR comments
      
      * fix cat
      
      * add flatten
      
      * replace cat by stack
      
      * update test to run only on rpn module
      
      * use tolerate_small_mismatch
      1d6145d1
  30. 18 Sep, 2019 1 commit
  31. 30 Aug, 2019 1 commit
  32. 14 Jun, 2019 1 commit
  33. 20 May, 2019 1 commit
  34. 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