Image processing 在scikit图像中显示使用exposure.equalize_adapthist的警告消息
在执行对比度受限自适应直方图均衡化时,我收到了以下警告消息。如何避免它,它表明了什么Image processing 在scikit图像中显示使用exposure.equalize_adapthist的警告消息,image-processing,computer-vision,scikit-image,Image Processing,Computer Vision,Scikit Image,在执行对比度受限自适应直方图均衡化时,我收到了以下警告消息。如何避免它,它表明了什么 from skimage import exposure img_adapteq = exposure.equalize_adapthist(image_gray, clip_limit=0.03) C:\Users\ugwz\AppData\Local\Continuum\anaconda3\lib\site-packages\skimage\util\dtype.py:135: UserWarning:
from skimage import exposure
img_adapteq = exposure.equalize_adapthist(image_gray, clip_limit=0.03)
C:\Users\ugwz\AppData\Local\Continuum\anaconda3\lib\site-packages\skimage\util\dtype.py:135: UserWarning: Possible precision loss when converting from float64 to uint16
.format(dtypeobj_in, dtypeobj_out))
rgb2gray将图像转换为浮动,因为它根据上的公式计算相对亮度。请注意,由于Scientific Python生态系统的约定,它还重新将值保存在[0,1]中,因此.astypenp.uint16不会执行您想要的操作。相反,请使用skimage.util.img_作为{ubyte,uint},详细内容如下:
从撇渣导入颜色、util、曝光
image=io.imread
image\u gray=color.rgb2grayimage
image16=util.img\u为灰色
img_adapteq=曝光。均衡器_adaptehistimage_灰度,clip_limit=0.03
不幸的是,在版本0.15中,您仍然会看到警告,但它已在版本0.16及更高版本中被删除,该版本将在未来几天内发布。正如它所说,当您将CLAHE应用于未与我们共享的float64图像时,可能会失去一些精度。怎么说?不要期望对64位浮点映像应用操作的结果适合16位映像。您不能将1.8E308存储在最多只能容纳65536的空间中。您好,马克,谢谢,但我如何知道图像是否为浮动64。这只是一个jpg文件,我是这样读的,image=imreadC:\\test8.jpg image\u gray=rgb2grayimageA jpg通常在每个通道中都是固有的uint8。请尝试printimage\u gray.dtype和printimage.dtype检查实际涉及的类型。感谢您提请我注意该文档。我将删除以上任何不正确且可能误导他人的评论。