1. 30 Jun, 2020 3 commits
    • vfdev's avatar
      Improved docs and tests for (#2371) · e50c2e36
      vfdev authored
      - RandomCrop: crop with padding using all commonly supported modes
      e50c2e36
    • vfdev's avatar
      Issue 2350 - support of all padding modes with tensors (#2368) · 6fe11d5c
      vfdev authored
      * [WIP] functional_tensor supports more padding modes
      
      * [WIP] Support all padding modes
      
      * Removed wip symmetric mode
      
      * Improvements according to the review
      6fe11d5c
    • vfdev's avatar
      Unified Tensor/PIL crop (#2342) · a99b6bd7
      vfdev authored
      * [WIP] Unified Tensor/PIL crop
      
      * Fixed misplaced type annotation
      
      * Fixed tests
      - crop with padding
      - other tests using mising private functions: _is_pil_image, _get_image_size
      
      * Unified CenterCrop and F.center_crop
      - sorted includes in transforms.py
      - used py3 annotations
      
      * Unified FiveCrop and F.five_crop
      
      * Improved tests and docs
      
      * Unified TenCrop and F.ten_crop
      
      * Removed useless typing in functional_pil
      
      * Updated code according to the review
      - removed useless torch.jit.export
      - added missing typing return type
      - fixed F.F_pil._is_pil_image -> F._is_pil_image
      
      * Removed useless torch.jit.export
      
      * Improved code according to the review
      a99b6bd7
  2. 29 Jun, 2020 1 commit
  3. 26 Jun, 2020 1 commit
  4. 11 Jun, 2020 3 commits
  5. 10 Jun, 2020 1 commit
  6. 04 Jun, 2020 3 commits
  7. 01 Jun, 2020 1 commit
  8. 29 May, 2020 2 commits
  9. 21 May, 2020 2 commits
  10. 20 May, 2020 1 commit
    • Negin Raoof's avatar
      [ONNX] Fix export of images with no detection (#2215) · 97e21c10
      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
      
      * Fix for mask rcnn no detection export
      
      * clean up
      
      * Enable mask rcnn tests
      
      * Added test
      
      * update ORT
      
      * Update .travis.yml
      
      * fix annotation
      
      * Clean up roi_heads
      
      * clean up
      
      * clean up misc ops
      97e21c10
  11. 19 May, 2020 1 commit
  12. 18 May, 2020 2 commits
    • Steven Basart's avatar
      Add pil_to_tensor to functionals (#2092) · e6d3f8c5
      Steven Basart authored
      * Adds as_tensor to functional.py
      
      Similar functionality to to_tensor without the default conversion to float and division by 255.
      Also adds support for Image mode 'L'.
      
      * Adds tests to AsTensor()
      
      Adds tests to AsTensor and removes the conversion to float and division by 255.
      
      * Adds AsTensor to transforms.py
      
      Calls the as_tensor function in functionals and adds the function AsTensor as callable from transforms.
      
      * Removes the pic.mode == 'L'
      
      This was handled by the else condition previously so I'll remove it.
      
      * Fix Lint issue
      
      Adds two line breaks between functions to fix lint issue
      
      * Replace from_numpy with as_tensor
      
      Removes the extra if conditionals and replaces from_numpy with as_tensor.
      
      * Renames as_tensor to pil_to_tensor
      
      Renames the function as_tensor to pil_to_tensor and narrows the scope of the function.  At the same time also creates a flag that defaults to True for swapping to the channels first format.
      
      * Renames AsTensor to PILToImage
      
      Renames the function AsTensor to PILToImage and modifies the description.  Adds the swap_to_channelsfirst boolean variable to indicate if the user wishes to change the shape of the input.
      
      * Add the __init__ function to PILToTensor 
      
      Add the __init__ function to PILToTensor since it contains the swap_to_channelsfirst parameter now.
      
      * fix lint issue
      
      remove trailing white space
      
      * Fix the tests
      
      Reflects the name change to PILToTensor and the parameter to the function as well as the new narrowed scope that the function only accepts PIL images.
      
      * fix tests
      
      Instead of undoing the transpose just create a new tensor and test that one.
      
      * Add the view back
      
      Add img.view(pic.size[1], pic.size[0], len(pic.getbands())) back to outside the if condition.
      
      * fix test
      
      fix conversion from torch tensor to PIL back to torch tensor.
      
      * fix lint issues
      
      * fix lint
      
      remove trailing white space
      
      * Fixed the channel swapping tensor test
      
      Torch tranpose operates differently than numpy transpose.  Changed operation to permute.
      
      * Add mode='F'
      
      Add mode information when converting to PIL Image from Float Tensor.
      
      * Added inline comments to follow shape changes
      
      * ToPILImage converts FloatTensors to uint8
      
      * Remove testing not swapping
      
      * Removes the swap_channelsfirst parameter
      
      Makes the channel swapping the default behavior.
      
      * Remove the swap_channelsfirst argument
      
      Remove the swap_channelsfirst argument and makes the swapping the default functionality.
      e6d3f8c5
    • Francisco Massa's avatar
      Fix Python lint (#2226) · e2e511be
      Francisco Massa authored
      e2e511be
  13. 15 May, 2020 1 commit
    • Urwa Muaz's avatar
      Feat/unfreeze layers fpn backbone (#2160) · 348dd5a7
      Urwa Muaz authored
      * freeze layers only if pretrained backbone is used
      
      If pretrained backbone is not used and one intends to train the entire network from scratch, no layers should be frozen.
      
      * function argument to control the trainable features
      
      Depending on the size of dataset one might want to control the number of tunable parameters in the backbone, and this parameter in hyper parameter optimization for the dataset. It would be nice to have this function support this.
      
      * ensuring tunable layer argument is valid
      
      * backbone freezing in fasterrcnn_resnet50_fpn
      
      Handle backbone freezing in fasterrcnn_resnet50_fpn function rather than the resnet_fpn_backbone function that it uses to get the backbone.
      
      * remove layer freezing code
      
      layer freezing code has been moved to fasterrcnn_resnet50_fpn function that consumes resnet_fpn_backbone function.
      
      * correcting linting errors
      
      * correcting linting errors
      
      * move freezing logic to resnet_fpn_backbone
      
      Moved layer freezing logic to resnet_fpn_backbone with an additional parameter.
      
      * remove layer freezing from fasterrcnn_resnet50_fpn
      
      Layer freezing logic has been moved to resnet_fpn_backbone. This function only ensures that the all layers are made trainable if pretrained models are not used.
      
      * update example resnet_fpn_backbone docs
      
      * correct typo in var name
      
      * correct indentation
      
      * adding test case for layer freezing in faster rcnn
      
      This PR adds functionality to specify the number of trainable layers while initializing the faster rcnn using fasterrcnn_resnet50_fpn function. This commits adds a test case to test this functionality.
      
      * updating layer freezing condition for clarity
      
      More information in PR
      
      * remove linting errors
      
      * removing linting errors
      
      * removing linting errors
      348dd5a7
  14. 14 May, 2020 1 commit
  15. 11 May, 2020 2 commits
    • F-G Fernandez's avatar
      Added eps attribute to FrozenBatchNorm2d (#2190) · 7a2d0618
      F-G Fernandez authored
      * feat: Added eps argument to FrozenBatchNorm2d
      
      * test: Added unittest for eps addition in FrozenBatchNorm2d
      
      See #2169
      
      * fix: Reverted forward changes for JIT fuser
      
      * fix: Added back n argument for backward-compatibility
      
      * fix: Fixed FrozenBatchNorm2d forward
      
      Added back eps
      
      * feat: Specified deprecation warnings in FrozenBatchNorm2d
      
      * test: Added unittest for deprecation warninig in FrozenBatchNorm2d
      
      * style: Fixed lint
      
      * style: Fixed block comment lint
      7a2d0618
    • F-G Fernandez's avatar
      fix: Restored support of tuple of Tensors for region pooling ops (#2199) · a09d129c
      F-G Fernandez authored
      * feat: Restored support of tuple of Tensors for roi_align & roi_pool
      
      * test: Added unittest for Tensor sequence support by region pooling
      
      * test: Fixed typo in unittest
      
      * test: Fixed data type
      
      * test: Fixed roi pooling tensor unittest
      
      * test: Fixed box format conversion
      a09d129c
  16. 07 May, 2020 1 commit
    • 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
  17. 05 May, 2020 2 commits
    • Francisco Massa's avatar
      Fix missing compilation files for video-reader (#2183) · 6f849df0
      Francisco Massa authored
      * Fix missing compilation files for video-reader
      
      * Disable IO tests in travis
      6f849df0
    • F-G Fernandez's avatar
      Added number of features in FrozenBatchNorm2d __repr__ (#2168) · 5db8998a
      F-G Fernandez authored
      * feat: Added number of features in FrozenBatchNorm2d repr
      
      While BatchNorm layers have extensive information in their repr, FrozenBatchNorm2d has one
      
      * refactor: Refactored FrozenBatchNorm2d __repr__
      
      * test: Added unittest for FrozenBatchNorm2d __repr__
      
      * style: Removed blank lines in test_ops
      
      * refactor: Avoids creating an extra attribute for __repr__
      
      * style: Switched __repr__ to f-string
      
      Since support of Python version ealier than 3.6 have been dropped, f-string can be used.
      
      * fix: Fixed typo in __repr__
      
      * style: Switched unittest .format to f-string
      5db8998a
  18. 28 Apr, 2020 1 commit
  19. 27 Apr, 2020 1 commit
  20. 21 Apr, 2020 1 commit
    • Negin Raoof's avatar
      [ONNX] Fix for dynamic scale_factor export (#2087) · d6ee8757
      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
      d6ee8757
  21. 14 Apr, 2020 1 commit
  22. 10 Apr, 2020 1 commit
  23. 09 Apr, 2020 1 commit
  24. 07 Apr, 2020 1 commit
  25. 03 Apr, 2020 2 commits
    • Brian Hart's avatar
      improve stability of test_nms_cuda (#2044) · e61538cb
      Brian Hart authored
      * improve stability of test_nms_cuda
      
      This change addresses two issues:
      
      _create_tensors_with_iou() creates test data for the NMS tests. It
      takes care to ensure at least one pair of boxes (1st and last) have
      IoU around the threshold for the test. However, the constructed
      IoU for that pair is _so_ close to the threshold that rounding
      differences (presumably) between CPU and CUDA implementations may
      result in one suppressing a box in the pair and the other not.
      Adjust the construction to ensure the IoU for the box pair is
      near the threshold, but far-enough above that both implementations
      should agree.
      
      Where 2 boxes have nearly or exactly the same score, the CPU and
      CUDA implementations may order them differently. Adjust
      test_nms_cuda() to check only that the non-suppressed box lists
      include the same members, without regard for ordering.
      
      * adjust assertion in test_nms_cuda
      
      The CPU and CUDA nms implementations each sort the box scores
      as part of their work, but the sorts they use are not stable. So
      boxes with the same score maybe be processed in opposite order
      by the two implmentations.
      
      Relax the assertion in test_nms_cuda (following the model in
      pytorch's test_topk()) to allow the test to pass if the output
      differences are caused by similarly-scored boxes.
      
      * improve stability of test_nms_cuda
      
      Adjust _create_tensors_with_iou() to ensure we create at least
      one box just over threshold that should be suppressed.
      e61538cb
    • Francisco Massa's avatar
      Add CircleCI job for python lint (#2056) · 0777b51e
      Francisco Massa authored
      * Add CircleCI job for python lint
      
      * Break lint
      
      * Fix
      
      * Fix lint
      
      * Re-enable all tests and remove travis python lint
      0777b51e
  26. 02 Apr, 2020 1 commit
  27. 01 Apr, 2020 1 commit
  28. 31 Mar, 2020 1 commit
    • 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