如何格式化 cv2.detail.BestOf2NearestMatcher apply2 函数的掩码参数

How do I format the mask parameter for cv2.detail.BestOf2NearestMatcher apply2 function

我希望通过指定重叠的图像来加快某些包调整代码的速度。我创建了一个函数,在每个图像中放置一个点网格,然后测试成对重叠。基本上,它近似于初始单应性照片的交叉区域。这是这 4 张重叠照片的示例:

我一直在研究这个例子https://github.com/amdecker/ir/blob/master/Stitcher.py

match_mask = np.zeros((len(features), len(features)), np.uint8)
    for i in range(len(data[0][1]) - 1):
        match_mask[i, i + 1] = 1

    matches_info = matcher.apply2(features, match_mask)
.
.
.
 b, cameras = adjuster.apply(features, matches_info, cameras)

我找不到任何关于 match_mask 需要的格式的文档。我想应用蒙版,以便仅使用超过某个阈值的图像表示 50% 的重叠。如果有人能解释一下 match_mask 是什么,那就太棒了!!

PS 这是我找到的文档字符串,如果它有帮助的话......发现它有点神秘,没有给出 dimms 或任何细节

"""
        apply2(features[, mask]) -> pairwise_matches
        .   @brief Performs images matching.
        .   
        .       @param features Features of the source images
        .       @param pairwise_matches Found pairwise matches
        .       @param mask Mask indicating which image pairs must be matched
        .   
        .       The function is parallelized with the TBB library.
        .   
        .       @sa detail::MatchesInfo
        """

看起来 mask 需要是一个 NxN uint8(布尔)矩阵,N 是图像的数量,即 len(features)

如果文档是 unclear/vague/lacking,请随意 open an issue on the github。这个功能似乎是一个很好的改进候选者。