cv2. namedWindow и imshow не работают должным образом - PullRequest
0 голосов
/ 14 июля 2020

Этот простой фрагмент кода не работает.

output = cv2.namedWindow("Output", cv2.WINDOW_AUTOSIZE)
cv2.imshow(output, saliencyMap)
cv2.waitKey(0)

Он должен отображать saliencyMap внутри окна "Output", но он генерирует два windows (ниже).

Я использую редактор Spyder и тоже получаю это сообщение.

You might be loading two sets of Qt binaries into the same process. Check that all plugins are compiled against the right Qt binaries. Export DYLD_PRINT_LIBRARIES=1 and check that only one set of binaries are being loaded.
QObject::moveToThread: Current thread (0x7fbf1e53c600) is not the object's thread (0x7fbf1e6f0850).
Cannot move to target thread (0x7fbf1e53c600)`

введите описание изображения здесь

1 Ответ

1 голос
/ 14 июля 2020

namedWindow - это функция, и это функция void, поэтому она ничего не дает в качестве выходного значения. imshow принимает в качестве входных данных строку и Mat.

Правильное значение должно быть:

import cv2

img = cv2.imread('img.png')
cv2.namedWindow("Output", cv2.WINDOW_AUTOSIZE)
cv2.imshow("Output", img)
cv2.waitKey(0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...