CVBpy 15.0
spectral/ColorConvert
1
2import cvb
3import cvb.spectral
4import numpy as np
5import os
6
7data_root = os.path.join(cvb.install_path(), "tutorial", "Spectral", "Images", "Color")
8
9object_header = os.path.join(data_root, "ColorCube.hdr")
10object_binary = os.path.join(data_root, "ColorCube.bin")
11
12white_ref_header = os.path.join(data_root,"WhiteCube.hdr")
13white_ref_binary = os.path.join(data_root, "WhiteCube.bin")
14
15black_ref_header = os.path.join(data_root, "DarkCube.hdr")
16black_ref_binary = os.path.join(data_root, "DarkCube.bin")
17
18print("Load cube from:")
19print("\t"+ str(object_header))
20print("\t"+ str(object_binary))
21print("White Refernce:")
22print("\t"+ str(white_ref_header))
23print("\t"+ str(white_ref_binary))
24print("Black Refernce:")
25print("\t"+ str(black_ref_header))
26print("\t"+ str(black_ref_binary))
27
28
29object_cube = cvb.spectral.Cube(object_header, object_binary)
30white_ref = cvb.spectral.Cube(white_ref_header, white_ref_binary)
31black_ref = cvb.spectral.Cube(black_ref_header, black_ref_binary)
32
33cube_norm = cvb.spectral.normalize(object_cube, white_ref, black_ref, cvb.spectral.NormalizationMethod.AverageReferences1)
34print("Normalization done!")
35
36interpolator = cvb.spectral.Interpolator(cube_norm, cvb.spectral.StdObserver.CIE2006_2deg, cvb.spectral.StdIlluminant.D50, cvb.spectral.InterpolationMethod.Linear)
37
38lab_image = cvb.spectral.convert_cube_to_lab(cube_norm, interpolator)
39print("Lab calculation done!")
40
41rgb_image = cvb.spectral.convert_lab_to_rgb8(lab_image, interpolator)
42print("sRGB calculation done")
43
44lab_image.save("LabImage.tiff")
45rgb_image.save("RGBImage.tiff")
Spectral Cube object.
Definition: __init__.py:47
Spectral Interpolator object.
Definition: __init__.py:286
Common Vision Blox Spectral module for Python.
Definition: __init__.py:1
cvb.Image convert_lab_to_rgb8(cvb.Image lab_image, cvb.spectral.Interpolator interpolator)
Converts a Lab image to a sRGB 8bit image.
Definition: __init__.py:666
cvb.spectral.Cube normalize(cvb.spectral.Cube cube, cvb.spectral.Cube white_reference, cvb.spectral.Cube black_reference, int normalization_method)
This function creates a normalized cube using the white- and black-reference and the object cube.
Definition: __init__.py:750
cvb.Image convert_cube_to_lab(cvb.spectral.Cube cube, cvb.spectral.Interpolator interpolator)
Converts a normalized cube to a Lab image.
Definition: __init__.py:632
str install_path()
Directory Common Vision Blox has been installed to.
Definition: __init__.py:8318