python - 这种NumPy列表理解的捷径

标签 python python-2.7 opencv numpy

有没有更简单,更快速的方法?

maxr, maxc = im_out.shape[:2]

for col in range(maxc):
    for row in range(maxr):
        if im_gray[row,col,0] != 255 and im_gray[row,col,1] != 255 and im_gray[row,col,2] != 255:
            im_out[row, col] = im_gray[row, col]

最佳答案

遵循以下方法应该可以解决问题:

# I think it's axis 2, might have to play around there
mask = (im_gray != 255).all(axis=2)
im_out[mask] = im_gray[mask]

关于python - 这种NumPy列表理解的捷径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30437547/

相关文章:

python - 如何归一化神经网络预测股市的输入[python]

python - 我如何告诉 python 启动用户默认终端?

python - 无缓冲的子进程输出(最后一行缺失)

python - jinja2 - 如何在 if 语句中放置一个 block ?

python - 检测引发异常的原因

python - npyscreen 是否支持可点击的网格行?

opencv - 如何在opencv中计算复数的绝对值

Python 替换某些列

opencv - 带有 “no value”的OpenCV Pixel

c - 如何正确释放矩阵使用的内存?