python - 在Python中的OpenCV mat :: convertTo

var*_*wal 19 python opencv

OpenCV python包装器中是否有与OpenCV 2中的Mat的convertTo方法相同的功能?

我基本上想在python中调用这个函数

out.convertTo( out, CV_32F, 1.0/255, 0 );
Run Code Online (Sandbox Code Playgroud)

其中out是灰度图像.

我已经通过将我的dst参数保持为CV_32FC1类型来使用cv.ConvertScale,但我试图保持我的python代码尽可能符合cv2.有线索吗?

Abi*_*n K 13

你可以简单地使用Numpy函数.

例如:

res = np.float32(out)
Run Code Online (Sandbox Code Playgroud)

缩放,你必须单独做:

res = res*scaling_factor
Run Code Online (Sandbox Code Playgroud)

  • 你不能只使用它,因为它不像.convertTo那样解决溢出问题 (5认同)
  • Numpy 函数是否与 opencv convertTo 一样快? (2认同)
  • 对不起,我没有检查过他们的表现. (2认同)

kni*_*nap 10

如果您不尝试转换数据类型,请使用以下命令:

cv2.convertScaleAbs(image, result, alpha, beta)
Run Code Online (Sandbox Code Playgroud)

其中alpha是比例因子,β是转换值. OpenCV文档中的更多详细信息.