Skip to content

Commit 0fd300c

Browse files
authored
Merge branch 'main' into patch-1
2 parents 0e77079 + a8c4875 commit 0fd300c

File tree

2 files changed

+38
-28
lines changed

2 files changed

+38
-28
lines changed

test/test_transforms_v2.py

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -519,34 +519,6 @@ def test__transform(self, mocker):
519519
assert isinstance(output_masks, tv_tensors.Mask)
520520

521521

522-
class TestScaleJitter:
523-
def test__get_params(self):
524-
canvas_size = (24, 32)
525-
target_size = (16, 12)
526-
scale_range = (0.5, 1.5)
527-
528-
transform = transforms.ScaleJitter(target_size=target_size, scale_range=scale_range)
529-
530-
sample = make_image(canvas_size)
531-
532-
n_samples = 5
533-
for _ in range(n_samples):
534-
535-
params = transform._get_params([sample])
536-
537-
assert "size" in params
538-
size = params["size"]
539-
540-
assert isinstance(size, tuple) and len(size) == 2
541-
height, width = size
542-
543-
r_min = min(target_size[1] / canvas_size[0], target_size[0] / canvas_size[1]) * scale_range[0]
544-
r_max = min(target_size[1] / canvas_size[0], target_size[0] / canvas_size[1]) * scale_range[1]
545-
546-
assert int(canvas_size[0] * r_min) <= height <= int(canvas_size[0] * r_max)
547-
assert int(canvas_size[1] * r_min) <= width <= int(canvas_size[1] * r_max)
548-
549-
550522
class TestRandomShortestSize:
551523
@pytest.mark.parametrize("min_size,max_size", [([5, 9], 20), ([5, 9], None)])
552524
def test__get_params(self, min_size, max_size):

test/test_transforms_v2_refactored.py

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4788,3 +4788,41 @@ def test_transform(self, make_input, dtype, device):
47884788
),
47894789
make_input(dtype=dtype, device=device),
47904790
)
4791+
4792+
4793+
class TestScaleJitter:
4794+
# Tests are light because this largely relies on the already tested `resize` kernels.
4795+
4796+
INPUT_SIZE = (17, 11)
4797+
TARGET_SIZE = (12, 13)
4798+
4799+
@pytest.mark.parametrize(
4800+
"make_input",
4801+
[make_image_tensor, make_image_pil, make_image, make_bounding_boxes, make_segmentation_mask, make_video],
4802+
)
4803+
@pytest.mark.parametrize("device", cpu_and_cuda())
4804+
def test_transform(self, make_input, device):
4805+
if make_input is make_image_pil and device != "cpu":
4806+
pytest.skip("PIL image tests with parametrization device!='cpu' will degenerate to that anyway.")
4807+
4808+
check_transform(transforms.ScaleJitter(self.TARGET_SIZE), make_input(self.INPUT_SIZE, device=device))
4809+
4810+
def test__get_params(self):
4811+
input_size = self.INPUT_SIZE
4812+
target_size = self.TARGET_SIZE
4813+
scale_range = (0.5, 1.5)
4814+
4815+
transform = transforms.ScaleJitter(target_size=target_size, scale_range=scale_range)
4816+
params = transform._get_params([make_image(input_size)])
4817+
4818+
assert "size" in params
4819+
size = params["size"]
4820+
4821+
assert isinstance(size, tuple) and len(size) == 2
4822+
height, width = size
4823+
4824+
r_min = min(target_size[1] / input_size[0], target_size[0] / input_size[1]) * scale_range[0]
4825+
r_max = min(target_size[1] / input_size[0], target_size[0] / input_size[1]) * scale_range[1]
4826+
4827+
assert int(input_size[0] * r_min) <= height <= int(input_size[0] * r_max)
4828+
assert int(input_size[1] * r_min) <= width <= int(input_size[1] * r_max)

0 commit comments

Comments
 (0)