'**SUMMARY**
Create an empty look up table (LUT).
If default value is what the lut is intially filled with
if defaultVal == 0
the array is all zeros.
if defaultVal > 0
the array is set to default value. Clipped to 255.
if defaultVal < 0
the array is set to the range [0,255]
if defaultVal is a tuple of two values:
we set stretch the range of 0 to 255 to match
the range provided.
**PARAMETERS**
* *defaultVal* - See above.
**RETURNS**
A LUT.
**EXAMPLE**
>>>> ls = img.getLineScan(x=10)
>>>> lut = ls.createEmptyLUT()
>>>> ls2 = ls.applyLUT(lut)
>>>> plt.plot(ls)
>>>> plt.plot(ls2)
>>>> plt.show()'

def createEmptyLUT(self, defaultVal=(-1)):

    lut = None
    if (isinstance(defaultVal, list) or isinstance(defaultVal, tuple)):
        start = np.clip(defaultVal[0], 0, 255)
        stop = np.clip(defaultVal[1], 0, 255)
        lut = np.around(np.linspace(start, stop, 256), 0)
        lut = np.array(lut, dtype='uint8')
        lut = lut.tolist()
    elif (defaultVal == 0):
        lut = np.zeros([1, 256]).tolist()[0]
    elif (defaultVal > 0):
        defaultVal = np.clip(defaultVal, 1, 255)
        lut = (np.ones([1, 256]) * defaultVal)
        lut = np.array(lut, dtype='uint8')
        lut = lut.tolist()[0]
    elif (defaultVal < 0):
        lut = np.linspace(0, 256, 256)
        lut = np.array(lut, dtype='uint8')
        lut = lut.tolist()
    return lut
