def test_compare_imgs(self):
        img1_path = self.temp_file_name("img1.png")
        img2_path = self.temp_file_name("img2.png")

        img1 = get_pil_img_repr(img1_path)
        img2 = get_pil_img_repr(img2_path)

        assert compare_imgs(img1, img2)
        assert compare_imgs(img1, img2, start1=(4, 4), box=(5, 5))

        with self.assertRaises(Exception):
            compare_imgs(img1, img2, box=(0, 0))

        with self.assertRaises(Exception):
            compare_imgs(img1, img2, start2=(3, 3))

        exr_img1 = get_exr_img_repr()
        exr_img2 = get_exr_img_repr(alt=True)

        assert not compare_imgs(exr_img1, exr_img2, max_col=1)
        assert compare_imgs(exr_img1, exr_img1, max_col=1)
        exr_img2_copy = exr_img2.copy()

        for i in range(10):
            for j in range(10):
                exr_img2.set_pixel((j, i), [0.1, 0.1, 0.1])

        assert compare_imgs(exr_img2, exr_img2_copy)
        assert not compare_imgs(exr_img2, exr_img2_copy, max_col=1)
Exemple #2
0
    def test_to_pil(self):
        e = get_exr_img_repr()

        img = e.to_pil()
        img_file = os.path.join(self.path, "img1.jpg")
        img.save(img_file)
        img.close()
        p = PILImgRepr()
        p.load_from_file(img_file)

        img2 = e.to_pil(use_extremas=True)
        assert isinstance(img2, Image.Image)
        img_alt = get_exr_img_repr(alt=True)
        img3 = img_alt.to_pil(use_extremas=True)
        assert isinstance(img3, Image.Image)
Exemple #3
0
    def test_set_pixel(self):
        e = get_exr_img_repr()

        val1 = [0.4, 0.3, 0.2]
        e.set_pixel((0, 0), val1)
        val2 = [0.1, 0.131, 0.001]
        e.set_pixel((4, 4), val2)

        almost_equal_pixels(e.get_pixel((0, 0)), val1)
        almost_equal_pixels(e.get_pixel((4, 4)), val2)

        e_copy = e.copy()

        e.min = 0.5
        e.set_pixel((0, 0), val1)
        almost_equal_pixels(e.get_pixel((0, 0)), [0.5, 0.5, 0.5])

        e.max = 0.8
        val3 = [0.1, 0.6, 0.9]
        e.set_pixel((0, 0), val3)
        almost_equal_pixels(e.get_pixel((0, 0)), [0.5, 0.6, 0.8])

        almost_equal_pixels(e_copy.get_pixel((0, 0)), val1)
        assert e_copy.min == 0.0
        assert e_copy.max == 1.0
Exemple #4
0
    def test_blend_exr(self):
        exr1 = get_exr_img_repr()
        exr2 = get_exr_img_repr(alt=True)

        exr = blend(exr1, exr2, 0)
        assert exr.get_pixel((3, 2)) == exr1.get_pixel((3, 2))

        exr = blend(exr1, exr2, 1)
        assert exr.get_pixel((3, 2)) == exr2.get_pixel((3, 2))

        assert exr2.get_pixel((3, 2)) == [0, 0, 0]

        assert exr1.get_pixel(
            (3, 2)) == [0.381103515625, 0.412353515625, 0.42236328125]
        assert exr2.get_pixel((3, 2)) == [0, 0, 0]

        exr = blend(exr1, exr2, 0.5)
        almost_equal_pixels(exr.get_pixel((3, 2)), [0.1905, 0.206, 0.211])

        exr = blend(exr1, exr2, 0.9)
        almost_equal_pixels(exr.get_pixel((3, 2)), [0.0381, 0.0412, 0.0422])
Exemple #5
0
    def test_exr_repr(self):
        e = get_exr_img_repr()
        assert e.img is not None
        assert e.dw is not None
        assert e.rgb is not None

        assert e.get_size() == (10, 10)

        assert e.get_pixel(
            (0, 0)) == [0.5703125, 0.53076171875, 0.432373046875]
        assert e.get_pixel(
            (5, 5)) == [0.6982421875, 0.73193359375, 0.70556640625]
        assert e.get_pixel(
            (9, 9)) == [0.461181640625, 0.52392578125, 0.560546875]

        with self.assertRaises(Exception):
            e.get_pixel((10, 10))
Exemple #6
0
 def test_get_rgbf_extrema(self):
     e = get_exr_img_repr(alt=True)
     assert e.get_rgbf_extrema() == (0.0, 0.0)
     e = get_exr_img_repr()
     assert e.get_rgbf_extrema() == (3.71875, 0.10687255859375)
Exemple #7
0
 def test_to_l_image(self):
     e = get_exr_img_repr()
     img = e.to_l_image()
     assert isinstance(img, Image.Image)
     assert img.mode == "L"