def test_sub_hsi_int_from_hsi_float(make_datasets): """ Dark is HSI. Data is HSI. """ spectrum, spectra, hsi, shape = make_datasets data = (1 * hsi).astype(np.float) dark = (1 * hsi).astype(np.int) subdark = SubtractDark(dark) # Calculate meaner = data.mean() out = subdark.calculate(data) assert meaner == data.mean() assert out.mean() != data.mean() assert out.size == data.size # * Even though the data and dark have same dimensions, the dark is averaged np.testing.assert_array_almost_equal( out, data - dark.mean(axis=(0, 1))[None, None, :]) # Transform dark = (1 * hsi).astype(np.int) subdark = SubtractDark(dark) success = subdark.transform(data) np.testing.assert_array_almost_equal(data, out) assert meaner != data.mean() assert success is True
def test_sub_spectra_from_spectra(make_datasets): """ Dark is spectra. Data is spectra. """ spectrum, spectra, hsi, shape = make_datasets data = 1 * spectra dark = 1 * spectra subdark = SubtractDark(dark) # Calculate meaner = data.mean() out = subdark.calculate(data) assert meaner == data.mean() assert out.mean() != data.mean() assert out.size == data.size # * Even though the data and dark have same dimensions, the dark is averaged np.testing.assert_array_almost_equal(out, data - dark.mean(axis=0)[None, :]) # Transform success = subdark.transform(data) np.testing.assert_array_almost_equal(data, out) assert meaner != data.mean() assert success is True
def test_sub_spectrum_from_spectra(make_datasets): """ Dark is spectrum. Data is spectra. """ spectrum, spectra, hsi, shape = make_datasets data = 1 * spectra dark = 1 * spectrum subdark = SubtractDark(dark) # Calculate meaner = data.mean() out = subdark.calculate(data) assert meaner == data.mean() assert out.mean() != data.mean() assert out.size == data.size np.testing.assert_array_almost_equal(out, data - dark[None, :]) # Transform success = subdark.transform(data) np.testing.assert_array_almost_equal(data, out) assert meaner != data.mean() assert success is True