[英]cv2.LUT throws an error when performing gamma correction - Assertion failed
[英]Python Opencv cv2.LUT() how to use
需要在图像的颜色通道上应用一些快速转换。
1)我在列表中存储了相应的输出值:
ListaVred = [0]*255
for i in range(0,255):
ListaVred[i]=i*127 / 255 + 128
2)我从图像中得到0到255的颜色输入值
3)应在图像中用输出替换输入值
i.e. red[45]= 0
ListaVred0] = 128
red[45]= 128
我查看了cv2.LUT(src,dst)函数但不确定它的用法, http ://docs.opencv.org/trunk/modules/core/doc/operations_on_arrays.html#cv2.LUT
cv2.LUT(ListaVred,red)
TypeError: src is not a numpy array, neither a scalar
ListaVred = np.array(ListaVred)
cv2.LUT(ListaVred,red)
cv2.error: /build/opencv-Ai8DTy/opencv-2.4.6.1+dfsg/modules/core/src/convert.cpp:1195: error: (-215) (lutcn == cn || lutcn == 1) && lut.total() == 256 && lut.isContinuous() && (src.depth() == CV_8U || src.depth() == CV_8S) in function LUT
您查看了尚未发布的OpenCV版本(3.0版)的文档。 我猜您使用的是OpenCV 2.4.8或更低版本。 查看此文档 。 注意LUT功能的使用差异。 在页面顶部,您将看到此文档所属的OpenCV版本。
LUT(srcImage, lookupTable, dstImage)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.