Skip to content

Commit 6c6dc66

Browse files
Yosua Michael Maranathafacebook-github-bot
Yosua Michael Maranatha
authored andcommitted
[fbsync] Add video kernels to dispatcher tests (#6905)
Summary: * add KernelInfo's for {five, ten}_crop_video * add video kernels to dispatcher tests Reviewed By: NicolasHug Differential Revision: D41265199 fbshipit-source-id: 156dee1b71a2431f1a1f66a9c3779af9682b4be2
1 parent cfdbce6 commit 6c6dc66

File tree

2 files changed

+56
-8
lines changed

2 files changed

+56
-8
lines changed

test/prototype_transforms_dispatcher_infos.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
140140
F.horizontal_flip,
141141
kernels={
142142
features.Image: F.horizontal_flip_image_tensor,
143+
features.Video: F.horizontal_flip_video,
143144
features.BoundingBox: F.horizontal_flip_bounding_box,
144145
features.Mask: F.horizontal_flip_mask,
145146
},
@@ -149,6 +150,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
149150
F.resize,
150151
kernels={
151152
features.Image: F.resize_image_tensor,
153+
features.Video: F.resize_video,
152154
features.BoundingBox: F.resize_bounding_box,
153155
features.Mask: F.resize_mask,
154156
},
@@ -161,6 +163,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
161163
F.affine,
162164
kernels={
163165
features.Image: F.affine_image_tensor,
166+
features.Video: F.affine_video,
164167
features.BoundingBox: F.affine_bounding_box,
165168
features.Mask: F.affine_mask,
166169
},
@@ -177,6 +180,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
177180
F.vertical_flip,
178181
kernels={
179182
features.Image: F.vertical_flip_image_tensor,
183+
features.Video: F.vertical_flip_video,
180184
features.BoundingBox: F.vertical_flip_bounding_box,
181185
features.Mask: F.vertical_flip_mask,
182186
},
@@ -186,6 +190,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
186190
F.rotate,
187191
kernels={
188192
features.Image: F.rotate_image_tensor,
193+
features.Video: F.rotate_video,
189194
features.BoundingBox: F.rotate_bounding_box,
190195
features.Mask: F.rotate_mask,
191196
},
@@ -200,6 +205,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
200205
F.crop,
201206
kernels={
202207
features.Image: F.crop_image_tensor,
208+
features.Video: F.crop_video,
203209
features.BoundingBox: F.crop_bounding_box,
204210
features.Mask: F.crop_mask,
205211
},
@@ -209,6 +215,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
209215
F.resized_crop,
210216
kernels={
211217
features.Image: F.resized_crop_image_tensor,
218+
features.Video: F.resized_crop_video,
212219
features.BoundingBox: F.resized_crop_bounding_box,
213220
features.Mask: F.resized_crop_mask,
214221
},
@@ -218,6 +225,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
218225
F.pad,
219226
kernels={
220227
features.Image: F.pad_image_tensor,
228+
features.Video: F.pad_video,
221229
features.BoundingBox: F.pad_bounding_box,
222230
features.Mask: F.pad_mask,
223231
},
@@ -244,6 +252,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
244252
F.perspective,
245253
kernels={
246254
features.Image: F.perspective_image_tensor,
255+
features.Video: F.perspective_video,
247256
features.BoundingBox: F.perspective_bounding_box,
248257
features.Mask: F.perspective_mask,
249258
},
@@ -256,6 +265,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
256265
F.elastic,
257266
kernels={
258267
features.Image: F.elastic_image_tensor,
268+
features.Video: F.elastic_video,
259269
features.BoundingBox: F.elastic_bounding_box,
260270
features.Mask: F.elastic_mask,
261271
},
@@ -265,6 +275,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
265275
F.center_crop,
266276
kernels={
267277
features.Image: F.center_crop_image_tensor,
278+
features.Video: F.center_crop_video,
268279
features.BoundingBox: F.center_crop_bounding_box,
269280
features.Mask: F.center_crop_mask,
270281
},
@@ -277,6 +288,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
277288
F.gaussian_blur,
278289
kernels={
279290
features.Image: F.gaussian_blur_image_tensor,
291+
features.Video: F.gaussian_blur_video,
280292
},
281293
pil_kernel_info=PILKernelInfo(F.gaussian_blur_image_pil),
282294
test_marks=[
@@ -288,48 +300,55 @@ def fill_sequence_needs_broadcast(args_kwargs):
288300
F.equalize,
289301
kernels={
290302
features.Image: F.equalize_image_tensor,
303+
features.Video: F.equalize_video,
291304
},
292305
pil_kernel_info=PILKernelInfo(F.equalize_image_pil, kernel_name="equalize_image_pil"),
293306
),
294307
DispatcherInfo(
295308
F.invert,
296309
kernels={
297310
features.Image: F.invert_image_tensor,
311+
features.Video: F.invert_video,
298312
},
299313
pil_kernel_info=PILKernelInfo(F.invert_image_pil, kernel_name="invert_image_pil"),
300314
),
301315
DispatcherInfo(
302316
F.posterize,
303317
kernels={
304318
features.Image: F.posterize_image_tensor,
319+
features.Video: F.posterize_video,
305320
},
306321
pil_kernel_info=PILKernelInfo(F.posterize_image_pil, kernel_name="posterize_image_pil"),
307322
),
308323
DispatcherInfo(
309324
F.solarize,
310325
kernels={
311326
features.Image: F.solarize_image_tensor,
327+
features.Video: F.solarize_video,
312328
},
313329
pil_kernel_info=PILKernelInfo(F.solarize_image_pil, kernel_name="solarize_image_pil"),
314330
),
315331
DispatcherInfo(
316332
F.autocontrast,
317333
kernels={
318334
features.Image: F.autocontrast_image_tensor,
335+
features.Video: F.autocontrast_video,
319336
},
320337
pil_kernel_info=PILKernelInfo(F.autocontrast_image_pil, kernel_name="autocontrast_image_pil"),
321338
),
322339
DispatcherInfo(
323340
F.adjust_sharpness,
324341
kernels={
325342
features.Image: F.adjust_sharpness_image_tensor,
343+
features.Video: F.adjust_sharpness_video,
326344
},
327345
pil_kernel_info=PILKernelInfo(F.adjust_sharpness_image_pil, kernel_name="adjust_sharpness_image_pil"),
328346
),
329347
DispatcherInfo(
330348
F.erase,
331349
kernels={
332350
features.Image: F.erase_image_tensor,
351+
features.Video: F.erase_video,
333352
},
334353
pil_kernel_info=PILKernelInfo(F.erase_image_pil),
335354
test_marks=[
@@ -340,41 +359,47 @@ def fill_sequence_needs_broadcast(args_kwargs):
340359
F.adjust_brightness,
341360
kernels={
342361
features.Image: F.adjust_brightness_image_tensor,
362+
features.Video: F.adjust_brightness_video,
343363
},
344364
pil_kernel_info=PILKernelInfo(F.adjust_brightness_image_pil, kernel_name="adjust_brightness_image_pil"),
345365
),
346366
DispatcherInfo(
347367
F.adjust_contrast,
348368
kernels={
349369
features.Image: F.adjust_contrast_image_tensor,
370+
features.Video: F.adjust_contrast_video,
350371
},
351372
pil_kernel_info=PILKernelInfo(F.adjust_contrast_image_pil, kernel_name="adjust_contrast_image_pil"),
352373
),
353374
DispatcherInfo(
354375
F.adjust_gamma,
355376
kernels={
356377
features.Image: F.adjust_gamma_image_tensor,
378+
features.Video: F.adjust_gamma_video,
357379
},
358380
pil_kernel_info=PILKernelInfo(F.adjust_gamma_image_pil, kernel_name="adjust_gamma_image_pil"),
359381
),
360382
DispatcherInfo(
361383
F.adjust_hue,
362384
kernels={
363385
features.Image: F.adjust_hue_image_tensor,
386+
features.Video: F.adjust_hue_video,
364387
},
365388
pil_kernel_info=PILKernelInfo(F.adjust_hue_image_pil, kernel_name="adjust_hue_image_pil"),
366389
),
367390
DispatcherInfo(
368391
F.adjust_saturation,
369392
kernels={
370393
features.Image: F.adjust_saturation_image_tensor,
394+
features.Video: F.adjust_saturation_video,
371395
},
372396
pil_kernel_info=PILKernelInfo(F.adjust_saturation_image_pil, kernel_name="adjust_saturation_image_pil"),
373397
),
374398
DispatcherInfo(
375399
F.five_crop,
376400
kernels={
377401
features.Image: F.five_crop_image_tensor,
402+
features.Video: F.five_crop_video,
378403
},
379404
pil_kernel_info=PILKernelInfo(F.five_crop_image_pil),
380405
test_marks=[
@@ -386,6 +411,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
386411
F.ten_crop,
387412
kernels={
388413
features.Image: F.ten_crop_image_tensor,
414+
features.Video: F.ten_crop_video,
389415
},
390416
test_marks=[
391417
xfail_jit_python_scalar_arg("size"),
@@ -397,6 +423,7 @@ def fill_sequence_needs_broadcast(args_kwargs):
397423
F.normalize,
398424
kernels={
399425
features.Image: F.normalize_image_tensor,
426+
features.Video: F.normalize_video,
400427
},
401428
test_marks=[
402429
skip_dispatch_feature,

test/prototype_transforms_kernel_infos.py

Lines changed: 29 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2020,6 +2020,12 @@ def reference_inputs_five_crop_image_tensor():
20202020
yield ArgsKwargs(image_loader, size=size)
20212021

20222022

2023+
def sample_inputs_five_crop_video():
2024+
size = _FIVE_TEN_CROP_SIZES[0]
2025+
for video_loader in make_video_loaders(sizes=[_get_five_ten_crop_spatial_size(size)]):
2026+
yield ArgsKwargs(video_loader, size=size)
2027+
2028+
20232029
def sample_inputs_ten_crop_image_tensor():
20242030
for size, vertical_flip in itertools.product(_FIVE_TEN_CROP_SIZES, [False, True]):
20252031
for image_loader in make_image_loaders(
@@ -2036,30 +2042,45 @@ def reference_inputs_ten_crop_image_tensor():
20362042
yield ArgsKwargs(image_loader, size=size, vertical_flip=vertical_flip)
20372043

20382044

2045+
def sample_inputs_ten_crop_video():
2046+
size = _FIVE_TEN_CROP_SIZES[0]
2047+
for video_loader in make_video_loaders(sizes=[_get_five_ten_crop_spatial_size(size)]):
2048+
yield ArgsKwargs(video_loader, size=size)
2049+
2050+
2051+
_common_five_ten_crop_marks = [
2052+
xfail_jit_python_scalar_arg("size"),
2053+
mark_framework_limitation(("TestKernels", "test_batched_vs_single"), "Custom batching needed."),
2054+
]
2055+
20392056
KERNEL_INFOS.extend(
20402057
[
20412058
KernelInfo(
20422059
F.five_crop_image_tensor,
20432060
sample_inputs_fn=sample_inputs_five_crop_image_tensor,
20442061
reference_fn=pil_reference_wrapper(F.five_crop_image_pil),
20452062
reference_inputs_fn=reference_inputs_five_crop_image_tensor,
2046-
test_marks=[
2047-
xfail_jit_python_scalar_arg("size"),
2048-
mark_framework_limitation(("TestKernels", "test_batched_vs_single"), "Custom batching needed."),
2049-
],
2063+
test_marks=_common_five_ten_crop_marks,
20502064
closeness_kwargs=DEFAULT_IMAGE_CLOSENESS_KWARGS,
20512065
),
2066+
KernelInfo(
2067+
F.five_crop_video,
2068+
sample_inputs_fn=sample_inputs_five_crop_video,
2069+
test_marks=_common_five_ten_crop_marks,
2070+
),
20522071
KernelInfo(
20532072
F.ten_crop_image_tensor,
20542073
sample_inputs_fn=sample_inputs_ten_crop_image_tensor,
20552074
reference_fn=pil_reference_wrapper(F.ten_crop_image_pil),
20562075
reference_inputs_fn=reference_inputs_ten_crop_image_tensor,
2057-
test_marks=[
2058-
xfail_jit_python_scalar_arg("size"),
2059-
mark_framework_limitation(("TestKernels", "test_batched_vs_single"), "Custom batching needed."),
2060-
],
2076+
test_marks=_common_five_ten_crop_marks,
20612077
closeness_kwargs=DEFAULT_IMAGE_CLOSENESS_KWARGS,
20622078
),
2079+
KernelInfo(
2080+
F.ten_crop_video,
2081+
sample_inputs_fn=sample_inputs_ten_crop_video,
2082+
test_marks=_common_five_ten_crop_marks,
2083+
),
20632084
]
20642085
)
20652086

0 commit comments

Comments
 (0)