Я не понимаю сообщение об ошибке в opencv python (miltiband blender) - PullRequest
0 голосов
/ 15 мая 2019

Я пытаюсь использовать cv2.detail_MultiBandBlender, и когда я начинаю кормить блендер изображениями, я получаю следующую ошибку:

(- 215: утверждение не выполнено) mask.type () == CV_8U в функции 'feed'

Соответствующая часть моего кода выглядит следующим образом:

    t = [w1, 100]
    Ht = np.array([[1,0,t[0]],[0,1,t[1]],[0,0,1]]) # translate

    img2_ = cv2.warpPerspective(img2, Ht.dot(H), (3*h1, 3*w1))
    mask2 = 255*np.ones(img2_.shape, dtype=np.uint8)

    img1_ = np.zeros(img2_.shape, dtype=np.uint8)
    img1_[t[1]:h1+t[1],t[0]:w1+t[0]] = img1
    mask1 = 255*np.ones(img1_.shape, dtype=np.uint8)

    blender = cv2.detail_MultiBandBlender()
    max_leveln = int(np.floor(np.log2(min(img1.shape[0], img1.shape[1], 
                                          img2_.shape[0], img2_.shape[1]))))
    blender.prepare((0, 0, mask1.shape[0], mask1.shape[1]))
# I receive the error from the next line
    blender.feed(img2_, mask2, (0, 0))
    blender.feed(img1_, mask1, (0, 0))

Насколько я знаю, np.uint8 эквивалентен CV_8U ..Почему я получаю сообщение об ошибке?

Заранее спасибо, Кароли

...