- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想了解函数 cv2.bitwise_and(src1,src2,mask) 的工作原理。所以我尝试了这段代码:
src1=np.array([1, 2, 3])
src1=np.uint8(src1)
mask=np.array([1,1,4])
mask=np.uint8(mask)
_, mask_bin= cv2.threshold(mask,3,1,cv2.THRESH_BINARY)
res=cv2.bitwise_and(src1,src1,mask_bin)
从文档中我了解到,如果 mask[I]
不等于零,将执行 and 操作。但我不明白为什么。
最佳答案
我认为您的理解是正确的,您只是将 bitwise_and
调用错了。使用
res=cv2.bitwise_and(src1,src1,mask=mask_bin)
来自 the documentation , bitwise_and
的唯一强制参数是两个源图像。
cv2.bitwise_and(src1, src2[, dst[, mask]]) → dst
给它第三个参数 (mask_bin
),没有其他信息,它会默认将其视为第一个可选参数,即 dst
,一个输出数组。您需要告诉他您希望 mask_bin
成为掩码可选参数。
替换此行会得到 [0,0,3]
,这是您应该期望的。
关于python-2.7 - bitwise_and 它是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43202067/
考虑以下 numpy 数组: x = np.array([2]*4, dtype=np.uint8) 这只是一个由四个 2 组成的数组。 我想对该数组执行按位与缩减: y = np.bitwise_a
我正在尝试使用 bitwise_and 以根据阈值排除图像的所有其余部分,但是当我尝试时它给出: OpenCV Error: Sizes of input arguments do not match
我的程序使用 boost::simd。奇怪的是,与不使用 boost::simd 相比,整个程序实际上运行得更慢。我设法找到了导致绝大多数 CPU 运行时间的行: using pack_t = boo
ufunc.reduce因为 numpy.bitwise_and.reduce 似乎表现不正常……我是在滥用它吗? >>> import numpy as np >>> x = [0x211f,0x1
我想了解函数 cv2.bitwise_and(src1,src2,mask) 的工作原理。所以我尝试了这段代码: src1=np.array([1, 2, 3]) src1=np.uint8(src1
我正在尝试编写一个脚本来剪掉你的脸并使所有暗像素变成全黑。我首先使用 haarcascade 来识别人脸。然后我根据 haarcascade 的坐标创建一个 roi(感兴趣区域)。之后,我使用范围内过
我不完全理解在 openCV 中使用“bitwise_and”运算符时的作用。我也想知道它的参数。 最佳答案 一般用法是您想要获取由另一个图像定义的图像的子集,通常称为“掩码”。 假设您要“抓取”8x
如何在 Emgu 中使用 Bitwise_and 函数?我在 Emgu 维基中找到它 Bitwise_and但我不知道怎么调用它! 我正在尝试将该代码从 C++ 转换为 C# Tuto 最佳答案 查看
我正在这段代码片段中尝试 numba from numba import jit import numpy as np from time import time db = np.array(np.
我正在尝试从图像中提取棋盘。它有很多我想删除的其他不需要的内容。所以我创建了一个包含所有斜坡的面具。然后将其与原始灰度图像进行bitwise_and。我是新手,我发现 OpenCV 非常有趣,但我遇到
我正在尝试在 python (3.6.5) 中使用 openCV (3.3.1) 将我制作的蒙版应用于图像以提取所有皮肤。我正在循环查看一张照片并检查窗口并使用两个预制的 sklearm GMM 对它
我正在尝试提取输入图像的蓝色。为此,我使用命令创建了一个蓝色的 HSV 颜色边界和阈值 HSV 图像 mask_img = cv2.inRange(hsv, lower_blue, upper_blu
我试过在不同的网站上搜索解释,但我没有得到一个完整解释的答案。 import cv2 import numpy as np img1 = cv2.imread('3D-Matplotlib.png')
我是一名优秀的程序员,十分优秀!