- 30 Jun, 2020 1 commit
-
-
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
-
- 29 Jun, 2020 1 commit
-
-
- 26 Jun, 2020 1 commit
-
-
vfdev authored
* [WIP] Add Tensor implementation for pad * Unified Pad and F.pad opertion for PIL and Tensor inputs * Added another test and improved docstring * Updates according to the review * Cosmetics and replaced f-string by "".format * Updated docstring - added compatibility support for padding as [value, ] for functional_pil.pad Co-authored-by:Francisco Massa <fvsmassa@gmail.com>
-
- 23 Jun, 2020 1 commit
-
-
joerg-de authored
-
- 19 Jun, 2020 1 commit
-
-
Vitaliy Chiley authored
I was reading through the code and noticed a few spelling errors orignal -> original maintaing -> maintaining
-
- 11 Jun, 2020 2 commits
-
-
Philip Meier authored
* add convert_image_dtype to functionals * add ConvertImageDtype transform * add test * remove underscores from numbers since they are not compatible with python<3.6 * address review comments 1/3 * fix torch.bool * use torch.iinfo in test * fix flake8 * remove double conversion * fix flake9 * bug fix * add error messages to test * disable torch.float16 and torch.half for now * add docstring * add test for consistency * move nested function to top * test in CI * dirty progress * add int to int and cleanup * lint Co-authored-by:Philip Meier <meier.philip@posteo.de>
-
vikramtankasali authored
* Adjust hue * Adjust hue acceps torch.tensor uint8 Co-authored-by:Vikram Mukunda Rao Tankasali <vikramtankasali@devvm765.lla0.facebook.com>
-
- 10 Jun, 2020 1 commit
-
-
Clement Joudet authored
* feat: torchscriptable adjusments * fix: tensor output type * feat: ColorJitter torchscriptable * fix: too many blank lines * fix: documentation spacing and torchscript annotation * refactor: list type for _check_input * refactor: reverting to original syntax Co-authored-by:clement.joudet <clement.joudet@inventia.life>
-
- 04 Jun, 2020 2 commits
-
-
Francisco Massa authored
* Make RandomHorizontalFlip torchscriptable * Make _is_tensor_a_torch_image more generic * Make RandomVerticalFlip torchscriptable (#2283) * Make RandomVerticalFlip torchscriptable * Fix lint
-
Francisco Massa authored
* Bugfix in pad * Address review comments * Fix lint
-
- 18 May, 2020 2 commits
-
-
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.
-
Francisco Massa authored
-
- 05 May, 2020 1 commit
-
-
Hong Xu authored
`Mn`, `Sn` are used as mean and std, but their suddenly turned to be `mean[n]` and `std[n]` in about 10 words later
-
- 04 May, 2020 1 commit
-
-
Oscar Mañas authored
-
- 03 Apr, 2020 1 commit
-
-
Francisco Massa authored
* Add CircleCI job for python lint * Break lint * Fix * Fix lint * Re-enable all tests and remove travis python lint
-
- 02 Apr, 2020 1 commit
-
-
Francisco Massa authored
Summary: Fix docstring formatting issues Reviewed By: fmassa Differential Revision: D20736644 fbshipit-source-id: 78f66045cfd4c84cb35ca84a1e1fa6aadcd50642 Co-authored-by:Patrick Labatut <plabatut@fb.com>
-
- 01 Apr, 2020 2 commits
-
-
Philip Meier authored
-
Andrew Murray authored
Co-authored-by:Andrew Murray <radarhere@users.noreply.github.com>
-
- 31 Mar, 2020 1 commit
-
-
Philip Meier authored
* remove sys.version_info == 2 * remove sys.version_info < 3 * remove from __future__ imports
-
- 30 Mar, 2020 1 commit
-
-
theonekeyg authored
-
- 24 Mar, 2020 1 commit
-
-
Francisco Massa authored
Summary: Currently the scale argument can only be of type tuple or integer, this diff allows feeding the input argument `scale` with a list. Pull Request resolved: https://github.com/pytorch/vision/pull/1997 Test Plan: Without this diff, launching the following classy vision task causes error: https://our.intern.facebook.com/intern/fblearner/details/175876950/ With this diff, everything works fine: https://our.intern.facebook.com/intern/fblearner/details/175913768/ Reviewed By: resonatevision Differential Revision: D20544904 Pulled By: ymao1993 fbshipit-source-id: a95a2e9ceadec77fffe234756fb3b38b1b9c9cb1 Co-authored-by:
Yu Mao <ymao1@fb.com>
-
- 23 Mar, 2020 2 commits
-
-
Willie Maddox authored
* Add fill option to RandomPerspective #1972 * Minor fix to docstring syntax * Add _parse_fill() to get fillcolor (#1972) * Minor refactoring as per comments. * Added test for RandomPerspective with fillcolor. * Force perspective transform in test.
-
Danylo Ulianych authored
* F.normalize unsqueeze mean & std if necessary * added tests to F.normalize for 3d mean & std tensors
-
- 27 Feb, 2020 1 commit
-
-
Eldar Kurtic authored
-
- 25 Feb, 2020 1 commit
-
-
Phoenix Meadowlark authored
* Improved error messages for transforms.functional.normalize(). Split the original TypeError into 1. a TypeError if `tensor` is not a torch.Tensor and 2. a ValueError if `tensor` does not have the correct dimensionality. Added more detail to the error for when `tensor` has the wrong dimension to make it easier to diagnose. This is useful when this function isn't called directly by the user (e.g. when the user uses transforms.Normalize and can't directly see this functions doc string). Deleted hanging function `_is_tensor_image()`. It isn't used in this file and isn't used internally anywhere else in torchvision that I can see. (Some users will have used it despite the underscore prefix, but a quick google search for "F._is_tensor_image" suggests this is rare). * Value checking to prevent division by zero runtime crashes. Added a ValueError to check for and avoid division by zero in `div_`. Not preventing the call leads to runtime crashes, at least in some environments. * Fixed div by zero check for non-scalar inputs.
-
- 10 Feb, 2020 1 commit
-
-
Bharat Raghunathan authored
-
- 29 Jan, 2020 1 commit
-
-
Francisco Massa authored
-
- 27 Jan, 2020 1 commit
-
-
abdjava authored
I have fixed a typo that was persent in the Normalize class changed line 150 from ``input[channel] = (input[channel] - mean[channel]) / std[channel]`` to ``output[channel] = (input[channel] - mean[channel]) / std[channel]``
-
- 22 Jan, 2020 2 commits
-
-
Philip Meier authored
-
Philip Meier authored
* initial fix * outsourced num bands lookup * fix doc * added pillow version requirement * simplify number of bands extraction * remove unrelated change * remove indirect dependency on pillow>=5.2.0 * extend docstring to transform * bug fix * added test
-
- 19 Dec, 2019 1 commit
-
-
Surgan Jandial authored
* scriptability checks * tests upds * linter upds * linter upds * upds * tuple list changes * linter updates
-
- 04 Dec, 2019 1 commit
-
-
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
-
- 05 Nov, 2019 1 commit
-
-
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
-
- 29 Oct, 2019 1 commit
-
-
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.
-
- 26 Oct, 2019 1 commit
-
-
pedrofreire authored
* Add adjustment operations for RGB Tensor Images. Right now, we have operations on PIL images, but we want to have a version of the opeartions that act directly on Tensor images. Here, we add such operations for adjust_brightness, adjust_contrast and adjust_saturation. In PIL, those functions are implemented by generating an degenerate image from the first, and then interpolating them together. - https://github.com/python-pillow/Pillow/blob/master/src/PIL/ImageEnhance.py - https://github.com/python-pillow/Pillow/blob/master/src/libImaging/Blend.c A few caveats: * Since PIL operates on uint8, and the tensor operations might be on float, we can get slightly different values because of int truncation. * We assume here the images are RGB; in particular, to handle an alpha channel, we need to check whether it is present, in which case we copy it to the final image. * Keep dtype and use broadcast in adjust operations - We make our operations have input.dtype == output.dtype, at the cost of adding a few type checks and branches. - By using Tensor broadcast, we can simplify the calls to _blend. * Use is_floating_point to check dtype. * Remove unpacking in tuple It seems Python 2 does not support this type of unpacking, so it broke Python 2 builds. This should fix it. * Add from __future__ import division for Python 2
-
- 18 Oct, 2019 2 commits
-
-
ekka authored
* Make crop torchscriptable Relevant #1375 * Invert x and y axis * fix lint * Add crop test * revert deletion of space in functional * add import random * add dimension in doc * add import * fix flake8 * change to self.assert* * convert to uint8 * assertTrue * lint
-
Surgan Jandial authored
* doc-build fixed * deprecation fixes * deprecation updates
-
- 16 Oct, 2019 1 commit
-
-
Surgan Jandial authored
* vflip and hflip tensor * vflip and hflip tensor * changes made * lint * lint * lint failing
-
- 08 Oct, 2019 1 commit
-
-
Francisco Massa authored
-
- 30 Sep, 2019 1 commit
-
-
Philip Meier authored
-