我正在使用OpenCV处理一些图像,我需要执行的第一步是增加彩色图像上的图像对比度.到目前为止我发现的最快的方法是使用这个代码(其中np是numpy导入)来乘以原始的基于C的cv1文档中的建议:
if (self.array_alpha is None):
self.array_alpha = np.array([1.25])
self.array_beta = np.array([-100.0])
# add a beta value to every pixel
cv2.add(new_img, self.array_beta, new_img)
# multiply every pixel value by alpha
cv2.multiply(new_img, self.array_alpha, new_img)
Run Code Online (Sandbox Code Playgroud)
有没有更快的方法在Python中执行此操作?我尝试使用numpy的标量乘法,但性能实际上更糟.我也尝试过使用cv2.convertScaleAbs (OpenCV docs建议使用convertTo,但cv2似乎缺少这个函数的接口)但是再次测试的性能更差.