首页 > 解决方案 > 在满足条件的 numpy 中设置值的最快方法

问题描述

假设 maxVal = 160 和 minVal = 100,现在我想设置图像的所有像素,其值不在 minVal 到 maxVal 的范围内等于 0 或黑色。我可以通过循环到图像像素值来做到这一点。但是有没有办法以 numPyish 的方式做到这一点?图像定义如下。

img = cv2.imread("location", 0)

标签: pythonnumpy

解决方案


您可以使用您的条件直接索引 Numpy 数组:

img[(img < min_val) | (img > max_val)] = 0

推荐阅读