Skip to content

Commit

Permalink
perform cyclic check for hue in test_rgb2hsv (#2477)
Browse files Browse the repository at this point in the history
* perform cyclic check for hue in test_rgb2hsv

Test fails for cases when hue=0 and hue=360. As hue is cyclic in nature, add cyclic logic for checking the max difference by taking the sin of the tensor and then comparing the max values.

* address linter issues
  • Loading branch information
KushajveerSingh authored Jul 16, 2020
1 parent 5f4b579 commit ab73b44
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion test/test_functional_tensor.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import unittest
import random
import colorsys
import math

from PIL import Image
from PIL.Image import NEAREST, BILINEAR, BICUBIC
Expand Down Expand Up @@ -114,7 +115,13 @@ def test_rgb2hsv(self):

colorsys_img = torch.tensor(hsv, dtype=torch.float32)

max_diff = (colorsys_img - ft_hsv_img).abs().max()
ft_hsv_img_h, ft_hsv_img_sv = torch.split(ft_hsv_img, [1, 2], dim=1)
colorsys_img_h, colorsys_img_sv = torch.split(colorsys_img, [1, 2], dim=1)

max_diff_h = ((colorsys_img_h * 2 * math.pi).sin() - (ft_hsv_img_h * 2 * math.pi).sin()).abs().max()
max_diff_sv = (colorsys_img_sv - ft_hsv_img_sv).abs().max()
max_diff = max(max_diff_h, max_diff_sv)

self.assertLess(max_diff, 1e-5)

def test_adjustments(self):
Expand Down

0 comments on commit ab73b44

Please sign in to comment.