python - 如何为切片的 3D numpy 数组的所有元素添加值?
问题描述
我的代码:
img = np.asarray(ibuffer).copy()
imgb = cv2.cvtColor(img, cv2.COLOR_BGR2Lab)
imgb[:,:,0] += bvalue
imgb = cv2.cvtColor(imgb,cv2.COLOR_LAB2BGR)
photo = Image.fromarray(imgb)
photo = resize(photo)
photo = ImageTk.PhotoImage(photo)
canvas.photo = photo
canvas.create_image(0,0,anchor="nw",image = photo)
我需要将“bvalue”变量的值添加到 imgb(3D numpy 数组)的第一维的所有元素中。当我尝试这个时,我收到以下错误消息:
Tkinter 回调 Traceback 中的异常(最近一次调用最后一次):文件“C:\Users\asaru\AppData\Local\Programs\Python\Python39\lib\tkinter_init _.py ”,第 1884 行,调用 返回 self.func( *args) 文件“e:\My Files\Project\Image Editor\Image Editor\test.py”,第 134 行,亮
imgb[:,:,0] += bvalue
numpy.core._exceptions._UFuncOutputCastingError:无法使用转换规则'same_kind'将ufunc'add'输出从dtype('<U3')转换为dtype('uint8')
解决方案
检查Numpy Dtypes。您的变量bvalue
是 Unicode String 类型,变量imgb
是 unsigned int 类型。无法添加它们。
推荐阅读
- python - 从字典字典中提取值
- android - XML-drawable 使用图层列表无法正常工作
- laravel - 如何在流明中导出 CSV 文件
- pandas - numpy.vstack 作为 pandas groupy 中的聚合器
- python - 如何查找嵌套元素 XML 标记的父节点,Python 3.6
- r - 如何在 R 中对具有 NA 值的向量执行 DCT
- c++ - Boost filesystem weakly_canonical 不解析没有父文件夹的相对路径
- msbuild - MSBUILD:记录器错误 MSB4104:无法写入日志文件“XYZ.sln.log”
- java - 如何在 SceneBuilder 中正确指定 ImageView 的 URL
- java - 对动态代理的调用应该转到动态类型的方法还是静态类型的方法?