def test_n_dimensional_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition n-dimensional arrays support.
        """

        Y_s = 0.2
        Y_abs = 100
        epsilon = exponent_hdr_CIELab(Y_s, Y_abs)

        Y_s = np.tile(Y_s, 6)
        Y_abs = np.tile(Y_abs, 6)
        epsilon = np.tile(epsilon, 6)
        np.testing.assert_almost_equal(
            exponent_hdr_CIELab(Y_s, Y_abs), epsilon, decimal=7)

        Y_s = np.reshape(Y_s, (2, 3))
        Y_abs = np.reshape(Y_abs, (2, 3))
        epsilon = np.reshape(epsilon, (2, 3))
        np.testing.assert_almost_equal(
            exponent_hdr_CIELab(Y_s, Y_abs), epsilon, decimal=7)

        Y_s = np.reshape(Y_s, (2, 3, 1))
        Y_abs = np.reshape(Y_abs, (2, 3, 1))
        epsilon = np.reshape(epsilon, (2, 3, 1))
        np.testing.assert_almost_equal(
            exponent_hdr_CIELab(Y_s, Y_abs), epsilon, decimal=7)
Example #2
0
    def test_n_dimensional_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition n-dimensional arrays support.
        """

        Y_s = 0.2
        Y_abs = 100
        epsilon = exponent_hdr_CIELab(Y_s, Y_abs)

        Y_s = np.tile(Y_s, 6)
        Y_abs = np.tile(Y_abs, 6)
        epsilon = np.tile(epsilon, 6)
        np.testing.assert_almost_equal(exponent_hdr_CIELab(Y_s, Y_abs),
                                       epsilon,
                                       decimal=7)

        Y_s = np.reshape(Y_s, (2, 3))
        Y_abs = np.reshape(Y_abs, (2, 3))
        epsilon = np.reshape(epsilon, (2, 3))
        np.testing.assert_almost_equal(exponent_hdr_CIELab(Y_s, Y_abs),
                                       epsilon,
                                       decimal=7)

        Y_s = np.reshape(Y_s, (2, 3, 1))
        Y_abs = np.reshape(Y_abs, (2, 3, 1))
        epsilon = np.reshape(epsilon, (2, 3, 1))
        np.testing.assert_almost_equal(exponent_hdr_CIELab(Y_s, Y_abs),
                                       epsilon,
                                       decimal=7)
Example #3
0
    def test_nan_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition nan support.
        """

        cases = np.array([-1.0, 0.0, 1.0, -np.inf, np.inf, np.nan])
        exponent_hdr_CIELab(cases, cases)
    def test_nan_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition nan support.
        """

        cases = np.array([-1.0, 0.0, 1.0, -np.inf, np.inf, np.nan])
        exponent_hdr_CIELab(cases, cases)
Example #5
0
    def test_domain_range_scale_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab` definition
        domain and range scale support.
        """

        Y_s = 0.2
        Y_abs = 100
        epsilon = exponent_hdr_CIELab(Y_s, Y_abs)

        d_r = (('reference', 1), (1, 1), (100, 100))
        for scale, factor in d_r:
            with domain_range_scale(scale):
                np.testing.assert_almost_equal(exponent_hdr_CIELab(
                    Y_s * factor, Y_abs),
                                               epsilon,
                                               decimal=7)
Example #6
0
    def test_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition.
        """

        self.assertAlmostEqual(exponent_hdr_CIELab(0.2, 100),
                               1.836019897814665,
                               places=7)

        self.assertAlmostEqual(exponent_hdr_CIELab(0.4, 100),
                               1.326014370643925,
                               places=7)

        self.assertAlmostEqual(exponent_hdr_CIELab(0.2, 1000),
                               1.224013265209777,
                               places=7)
    def test_domain_range_scale_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab` definition
        domain and range scale support.
        """

        Y_s = 0.2
        Y_abs = 100
        epsilon = exponent_hdr_CIELab(Y_s, Y_abs)

        d_r = (('reference', 1), (1, 1), (100, 100))
        for scale, factor in d_r:
            with domain_range_scale(scale):
                np.testing.assert_almost_equal(
                    exponent_hdr_CIELab(Y_s * factor, Y_abs),
                    epsilon,
                    decimal=7)
Example #8
0
    def test_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition.
        """

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.2, 100), 0.473851073746817, places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.4, 100), 0.656101486726362, places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.4, 100, method='Fairchild 2010'),
            1.326014370643925,
            places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.2, 1000), 0.710776610620225, places=7)
    def test_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition.
        """

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.2, 100), 0.473851073746817, places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.4, 100), 0.656101486726362, places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.4, 100, method='Fairchild 2010'),
            1.326014370643925,
            places=7)

        self.assertAlmostEqual(
            exponent_hdr_CIELab(0.2, 1000), 0.710776610620225, places=7)
Example #10
0
    def test_exponent_hdr_CIELab(self):
        """
        Tests :func:`colour.models.hdr_cie_lab.exponent_hdr_CIELab`
        definition.
        """

        self.assertAlmostEqual(exponent_hdr_CIELab(0.2, 100),
                               0.709927693821670,
                               places=7)

        self.assertAlmostEqual(exponent_hdr_CIELab(0.4, 100),
                               0.512725556648984,
                               places=7)

        self.assertAlmostEqual(exponent_hdr_CIELab(0.4,
                                                   100,
                                                   method='Fairchild 2010'),
                               1.326014370643925,
                               places=7)

        self.assertAlmostEqual(exponent_hdr_CIELab(0.2, 1000),
                               0.473285129214447,
                               places=7)