1. 13 Jan, 2020 1 commit
  2. 10 Jan, 2020 1 commit
  3. 03 Jan, 2020 1 commit
  4. 02 Jan, 2020 3 commits
  5. 19 Dec, 2019 1 commit
  6. 17 Dec, 2019 1 commit
  7. 16 Dec, 2019 3 commits
  8. 11 Dec, 2019 1 commit
  9. 10 Dec, 2019 2 commits
  10. 06 Dec, 2019 1 commit
  11. 05 Dec, 2019 4 commits
  12. 04 Dec, 2019 3 commits
    • Ankit Jha's avatar
      Add scriptable transform: center_crop, five crop and ten_crop (#1615) · cec7ea72
      Ankit Jha authored
      * add scriptable transform: center_crop
      
      * add test: center_crop
      
      * add scriptable transform: five_crop
      
      * add scriptable transform: five_crop
      
      * add scriptable transform: fix minor issues
      cec7ea72
    • Gerald Baier's avatar
      update dead LSUN link (#1626) · e3a13055
      Gerald Baier authored
      The current link to the dataset is dead. The change links to the dataset's author's personal page, which describe the dataset and is also referenced at https://github.com/fyu/lsun.
      e3a13055
    • 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
  13. 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
  14. 26 Nov, 2019 1 commit
  15. 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
  16. 21 Nov, 2019 1 commit
  17. 18 Nov, 2019 1 commit
  18. 15 Nov, 2019 3 commits
  19. 14 Nov, 2019 1 commit
  20. 13 Nov, 2019 1 commit
  21. 07 Nov, 2019 1 commit
  22. 06 Nov, 2019 1 commit
  23. 05 Nov, 2019 2 commits
    • Francisco Massa's avatar
      Fix inconsistent NMS implementation between CPU and CUDA (#1556) · 4897402a
      Francisco Massa authored
      * Fix inconsistent NMS implementation
      
      * Improve tests for NMS
      
      * Remove unnecessary using statement
      4897402a
    • Ankit Jha's avatar
      [WIP] Add Scriptable Transform: Grayscale (#1505) · 8909ff43
      Ankit Jha authored
      * Add Scriptable Transform: Grayscale
      
      * add scriptable transforms: rgb_to_grayscale
      
      * add scriptable transform: rgb_to_grayscale
      
      * add scriptable transform: rgb_to_grayscale
      
      * add scriptable transform: rgb_to_grayscale
      
      * update code: rgb_to_grayscale
      
      * add test: rgb_to_grayscale
      
      * update parameters: rgb_to_grayscale
      
      * add scriptable transform: rgb_to_grayscale
      
      * update rgb_to_grayscale
      
      * update rgb_to_grayscale
      8909ff43
  24. 31 Oct, 2019 2 commits
  25. 29 Oct, 2019 2 commits
    • Francisco Massa's avatar
      Unify video metadata in VideoClips (#1527) · 7d509c5d
      Francisco Massa authored
      * Unify video metadata in VideoClips
      
      * Bugfix
      
      * Make tests a bit more robust
      7d509c5d
    • pedrofreire's avatar
      Make shear operation area preserving (#1529) · c226bb95
      pedrofreire authored
      * Improve readability of affine transformation code
      
      * Make shear transformation area preserving
      
      The previous shear implementation did not preserve area, and we
      implement a version that does.
      
      The formula used was verified with the following sympy code:
      
      from sympy import Matrix, cos, sin, tan, simplify
      from sympy.abc import x, y, phi
      
      Xs = Matrix(
              [[1, -tan(x)],
               [0, 1]]
              )
      
      Ys = Matrix(
              [[1, 0],
               [-tan(y), 1]]
              )
      
      R = Matrix(
              [[cos(phi), -sin(phi)],
               [sin(phi), cos(phi)]]
              )
      
      RSS = Matrix(
              [[cos(phi - y)/cos(y), -cos(phi - y)*tan(x)/cos(y) - sin(phi)],
               [sin(phi - y)/cos(y), -sin(phi - y)*tan(x)/cos(y) + cos(phi)]])
      
      print(simplify(R * Ys * Xs - RSS))
      
      One thing that is not clear (and could be tested) is whether avoiding
      the explicit products and calculations in _get_inverse_affine_matrix
      really gives performance benefits - compared to doing the explicit
      calculation done in _test_transformation.
      
      * Use np.matmul instead of @
      
      The @ syntax is not supported in Python 2.
      c226bb95