1. 02 Dec, 2020 1 commit
  2. 16 Nov, 2020 1 commit
  3. 09 Nov, 2020 1 commit
  4. 30 Oct, 2020 3 commits
    • Vasilis Vryniotis's avatar
      PSROIPool + Dispatcher + Autocast + Code Cleanup (#2926) · b93d5ee2
      Vasilis Vryniotis authored
      * Fixing types.
      
      * Dispatcher + Autocast.
      
      * + Autograd.
      
      * Formating.
      
      * Clean up and refactor PSROIPool implementation:
      - Remove primitive const declaration from method names.
      - Using references when possible.
      - Fix variable naming.
      
      * Restore include headers.
      
      * New line at end of file.
      
      * Resolving conflict, final cleanup, ordering method consistently across files.
      b93d5ee2
    • Vasilis Vryniotis's avatar
      ROIPool + Dispatcher + Autocast + Code Cleanup (#2922) · 0125a7dc
      Vasilis Vryniotis authored
      * Fixing types.
      
      * Dispatcher + Autocast.
      
      * + Autograd.
      
      * Formating.
      
      * Fixing return casting with autocast.
      
      * Clean up and refactor ROIPool implementation:
      - Remove primitive const declaration from method names.
      - Using references when possible.
      
      * Restore include headers.
      
      * New line at end of file.
      0125a7dc
    • Vasilis Vryniotis's avatar
      PSROIAlign + Dispatcher + Autocast + Code Cleanup (#2928) · b06e43d6
      Vasilis Vryniotis authored
      * Fixing types.
      
      * Dispatcher + Autocast.
      
      * + Autograd.
      
      * Clean up and refactor PSROIAlign implementation:
      - Remove primitive const declaration from method names.
      - Using references when possible.
      - Sync naming of internal methods with other ops.
      
      * Restoring names of internal methods to avoid conflicts.
      
      * Restore include headers.
      b06e43d6
  5. 27 Oct, 2020 1 commit
  6. 16 Oct, 2020 1 commit
    • bmanga's avatar
      Ensure torchvision operators are added in C++ (#2798) · adfc15c4
      bmanga authored
      * Ensure torchvision operators are registered in C++ via weak symbols
      
      * Add note to README on how to ensure that torchvision operators are available in C++
      
      * Fix dllimport/dllexport on windows, format files
      
      * Factor out common macros in single file
      
      * Expose cuda_version in the API, use it to avoid pruning of ops initializer
      adfc15c4
  7. 02 Sep, 2020 1 commit
  8. 09 Jul, 2020 1 commit
    • mcarilli's avatar
      [WIP] Allow autocast for 1.6 (#2384) · 0a8586c9
      mcarilli authored
      
      
      * Fixes Xiao's repro
      
      * Ports nms to use full dispatcher
      
      * Move HIPGuard to nms_cuda
      
      * clang-format
      
      * run models in test_models.py on GPU if available
      
      * Francisco's comment, also disable cuda model tests to see if CPU alone still passes
      
      * cuda tests now pass locally, although still not comparing to saved numerics
      
      * add note for thing to ask francisco
      
      * Allow cuda and cpu tests to share a data file
      
      * ignore suffix if unneeded
      
      * Skip autocast numerics checks for a few models
      
      * Add roi_align test
      Co-authored-by: default avatarMichael Carilli <mcarilli@nvidia.com>
      0a8586c9
  9. 30 Jun, 2020 1 commit
  10. 11 Mar, 2020 1 commit
    • Ashish Farmer's avatar
      [ROCm] Create torchvision as a HIP Extension (#1928) · 43e94b39
      Ashish Farmer authored
      * Added code to support creating extension on ROCm
      
      * max -> fmaxf conversion for hipification
      
      * added WITH_HIP flag for hipExtension
      
      * added appropriate headers for HIP build
      
      * use USE_ROCM in condition to build
      
      * change fmaxf and fminf calls
      
      * fminf -> min
      
      * fix the check for ROCM_HOME
      
      * more robust checking for rocm pytorch
      
      * add check for pytorch version before using HIP extensions
      
      * conditional reading of ROCM_HOME
      43e94b39
  11. 04 Mar, 2020 1 commit
    • AhnDW's avatar
      `aligned` flag in ROIAlign (#1908) · e1e975f9
      AhnDW authored
      * Aligned flag in the interfaces
      
      * Aligned flag in the impl, and remove unused comments
      
      * Handling empty bin in forward
      
      * Remove raise error in roi_width
      
      * Aligned flag in the Testcodes
      e1e975f9
  12. 22 Jan, 2020 1 commit
  13. 04 Dec, 2019 1 commit
    • pedrofreire's avatar
      Add Deformable Convolution operation. (#1586) · 52b8685b
      pedrofreire authored
      * Add Deformable Convolution operation.
      
      This adds the deformable convolution operation, as described in Deformable Convolutional Networks (https://arxiv.org/abs/1703.06211).
      
      - The code is based on https://github.com/open-mmlab/mmdetection/blob/master/mmdet/ops/dcn/src/deform_conv_cuda.cpp ; the whole code was modified and refactored to remove redundancies and increase clarity, and to adapt it to torchvision.
      
      - The CPU part is a direct copy of the CUDA code; it might make sense to do follow-up adjustments in the CPU code to simplify it / optimize it, or to reuse functionality between CPU and CUDA..
      
      - We also add tests (with a non-trivial set of parameters); they can be made more robust by randomizing the parameters and executing multiple times.
      
      * Update DeformConv to be more consistent w/ Conv2d
      
      * rename some variables and arguments to match Conv2d;
      * add optional bias;
      * add weight, offset and bias as module parameters;
      * remove the n_parallel_imgs parameter;
      * Fix __repr__;
      * etc..
      
      Initialization of weight and bias is the same as in Conv2d, and
      initialization of offsets to zero is the same as in the paper.
      
      This also includes some other small unrelated fixes/improvements.
      
      * Apply clang-format in DeformConv files.
      
      * Import Optional type annotation
      
      * Remove offset param from DeformConv2d module
      
      - We pass the offset in the forward of DeformConv2d, instead of having
      an internal parameter. This adds some complexity to creating the module
      (e.g. now you have to worry about the output size, to create the
      offset), but it gives more flexibility.
      - We also use make_tuple for tuple creation, in an attempt to fix error
      w/ older compilers.
      
      * Replace abs by std::abs
      
      Old gcc versions were giving wrong results here, because they would
      resolve abs as int -> int, thus causing undesired truncation. Replacing
      abs by std::abs should allow for correct overloading of abs as float -> float.
      
      * Reorder declarations for clarity
      
      * Reorder weight and offset args in deform_conv2d
      
      We place offset arg before the weight arg, to be more
      consistent with DeformConv2d.forward(input, offset)
      
      * Replace abs by std::abs in DeformConv_cuda
      52b8685b
  14. 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
  15. 16 Oct, 2019 1 commit
  16. 18 Sep, 2019 1 commit
    • Francisco Massa's avatar
      Remove cpp extensions in favor of torch ops (#1348) · f677ea31
      Francisco Massa authored
      * Remove C++ extensions in favor of custom ops
      
      * Remove unused custom_ops.cpp file
      
      * Rename _custom_ops.py
      
      * Reorganize functions
      
      * Minor improvements and fixes
      
      * Fix lint
      
      * Fully scriptable ops
      
      * Import types used by annotations
      f677ea31
  17. 10 Sep, 2019 1 commit
  18. 09 Sep, 2019 2 commits
  19. 22 May, 2019 1 commit
  20. 07 May, 2019 1 commit
    • Francisco Massa's avatar
      Add C++ ops to torchvision (#826) · dc3ac290
      Francisco Massa authored
      * Initial layout for layers with cpp extensions
      
      * Move files around
      
      * Fix import after move
      
      * Add support for multiple types to ROIAlign
      
      * Different organization
      
      CUDA extensions work now
      
      * Cleanups
      
      * Reduce memory requirements for backwards
      
      * Replace runtime_error by AT_ERROR
      
      * Add nms test
      
      * Add support for compilation using CPP extensions
      
      * Change folder structure
      
      * Add ROIPool cuda
      
      * Cleanups
      
      * Add roi_pool.py
      
      * Fix lint
      
      * Add initial structures folder for bounding boxes
      
      * Assertion macros compatible with pytorch master (#540)
      
      * Support for ROI Pooling (#592)
      
      * ROI Pooling with tests. Fix for cuda context in ROI Align.
      
      * renamed bottom and top to follow torch conventions
      
      * remove .type().tensor() calls in favor of the new approach to tensor initialization (#626)
      
      * Consistent naming for rois variable (#627)
      
      * remove .type().tensor() calls in favor of the new approach to tensor initialization
      
      * Consistent naming for rois variable in ROIPool
      
      * ROIPool: Support for all datatypes (#632)
      
      * Use of torch7 naming scheme for ROIAlign forward and backward
      
      * use common cuda helpers in ROIAlign
      
      * use .options() in favor of .type() where applicable
      
      * Added tests for forward pass of ROIAlign, as well as more consistent naming scheme for CPU vs CUDA
      
      * working ROIAlign cuda backwards pass
      
      * working ROIAlign backwards pass for CPU
      
      * added relevant headers for ROIAlign backwards
      
      * tests for ROIAlign layer
      
      * replace .type() with .options() for tensor initialization in ROIAlign layers
      
      * support for Half types in ROIAlign
      
      * gradcheck tests for ROIAlign
      
      * updated ROIPool on CPU to work with all datatypes
      
      * updated and cleaned tests for ROI Pooling
      
      * Fix rebase problem
      
      * Remove structures folder
      
      * Improve cleanup and bugfix in test_layers
      
      * Update C++ headers
      
      * Add CUDAGuard to cu files
      
      * Add more checks to layers
      
      * Add CUDA NMS and tests
      
      * Add multi-type support for NMS CUDA
      
      * Avoid using THCudaMalloc
      
      * Add clang-format and reformat c++ code
      
      * Remove THC includes
      
      * Rename layers to ops
      
      * Add documentation and rename functions
      
      * Improve the documentation a bit
      
      * Fix some lint errors
      
      * Fix remaining lint inssues
      
      * Area computation doesn't add +1 in NMS
      
      * Update CI to use PyTorch nightly
      
      * Make NMS return indices sorted according to the score
      
      * Address reviewer comments
      
      * Lint fixes
      
      * Improve doc for roi_align and roi_pool
      
      * move to xenial
      
      * Fix bug pointed by @lopuhin
      
      * Fix RoIPool reference implementation in Python 2
      
      Also fixes a bug in the clip_boxes_to_image -- this function needs a test!
      
      * Remove change in .travis
      dc3ac290