在 OpenCV 中显示签名图像时会发生什么?

acg*_*ant 4 opencv

的文档imshow只写:

  • 如果图像是 8 位无符号图像,则按原样显示。
  • 如果图像是16位无符号或32位整数,则像素除以256。即,值范围[0,255*256]映射到[0,255]。
  • 如果图像是32位浮点,则像素值乘以255。即,值范围[0,1]映射到[0,255]。

没有定义有关签名图像的行为。

aka*_*kov 5

你是对的。存在小文档问题。我将尝试扩展文档:

  1. 如果图像是 8 位有符号 (CV_8S),它将转换为无符号字符,只需添加 128 并按原样显示。
  2. 如果图像是 16 位有符号 (CV_16S),则像素除以 256 并移位 128。
  3. 如果图像是 32 位有符号 (CV_32S),则不在 [0,255*256] 范围内的像素将被截断。
  4. 如果图像是 32 位浮点 (CV_32F),则不在 [0, 1] 范围内的像素将被截断。

您可能会在此处看到处理此类情况的代码。