前提・実現したいこと
OpenCVで画像を開いた後、正常にウィンドウを閉じたい。
発生している問題・エラーメッセージ
実行環境
MacOS High Sierra
Python3.7
opencv-python 4.0.0.21
jupyter notebook
jupyter notebook上で下記のソースコードを実行すると、DockでPython Launcherが立ち上がり、別ウィンドウが出現、画像自体は表示されます(画像上でカーソルを動かすとウィンドウ下部のRBGの値が変化します)が、何らかのキーを1度押すと、ローディング状態となり閉じることができません。画面を閉じるため、DockのPython Launcherを強制終了している状況です。
プログラミング初心者のため、的外れな説明となっていましたら申し訳ございません。
アドバイスを頂けると幸いです。よろしくお願いします。
#エラーメッセージ
特に表示されません。
cv2.waitKey()の引数を'1'にすると、実行結果として'-1'と表示されるのみです。
該当のソースコード
ソースコード
import cv2
import os
img = cv2.imread('src/Berry.jpg')
cv2.startWindowThread()
cv2.imshow('img',img)
cv2.waitKey(0) & 0xff
cv2.destroyAllWindows()
試したこと
①teratail内で同様の質問があったので参考にさせて頂きました。cv2.destroyAllWIndows()の次の行に、cv2.waitKey(0)やcv2.waitKey(0) & 0xffを加えてみましたが、うまくいきませんでした。また、waitKey()の引数も'0'以外に'1'や他の数字を入れてみましたが、状況に変化はありませんでした。
https://teratail.com/questions/107002
②以下サイトに、64 bit マシンを使っている場合, k = cv2.waitKey(0) の部分を k = cv2.waitKey(0) & 0xFF と変更してください.と記載があったため、その通りにしました。
http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/OpenCV/html/py_tutorials/py_gui/py_image_display/py_image_display.html
回答2件
あなたの回答
tips
プレビュー