image type issue and failed conversion
Dear All, I was trying to use the above code segment for performing Contrast Limited Adaptive Histogram Equalization (CLAHE). def clahe_equalized(imgs): imgs_equalized = np.empty(imgs.shape) for i in range(imgs.shape[0]): print('imgs[i,0] ',imgs[i,0].dtype) print('imgs[i,0] ',imgs[i,0].max()) print('imgs[i,0] ',imgs[i,0].min()) imgs_equalized[i,0] = exposure.equalize_adapthist(imgs[i,0],clip_limit=0.03) return imgs_equalized The dtype is float64, maximum value is 255.0 and minimum value is 0.0 Running the program generates the following error message ( I only keep the related ones) imgs_equalized[i,0] = exposure.equalize_adapthist(imgs[i,0],clip_limit=0.03) raise ValueError("Images of type float must be between -1 and 1.") ValueError: Images of type float must be between -1 and 1. In accordance with the above error message and image characteristics, what are the best way to handle this scenario. I have been thinking of two approaches 1. add imgs[i,0] = imgs[i,0]/255. which scale it to 0 and 1 2. convert imgs[i,0] from float64 to unit8 but imgs[i,0] = imgs[i,0].astype(np.unit8) gives the error message such as imgs[i,0]=imgs[i,0].astype(np.unit8) AttributeError: 'module' object has no attribute 'unit8' Would you like to give any advice on this problem? Thank you very much!
participants (1)
-
wine lover