解決Opencv+Python cv2.imshow閃退問題
Opencv+Python cv2.imshow閃退
# 讀入原始圖像 origineImage = cv2.imread(’./pic/6.jpeg’) # 圖像灰度化 # image = cv2.imread(’test.jpg’,0) image = cv2.cvtColor(origineImage, cv2.COLOR_BGR2GRAY) #image.save(’./pic/gray.jpg’) cv2.imshow(’gray’, image) # 將圖片二值化 retval, img = cv2.threshold(image, 127, 255, cv2.THRESH_BINARY_INV) cv2.imshow(’binary’, img)
程序運行到這,圖片閃退,在cv.imshow()后加入cv2.waitKey()即可
origineImage = cv2.imread(’./pic/6.jpeg’) # 圖像灰度化 # image = cv2.imread(’test.jpg’,0) image = cv2.cvtColor(origineImage, cv2.COLOR_BGR2GRAY) #image.save(’./pic/gray.jpg’) cv2.imshow(’gray’, image) cv2.waitKey() # 將圖片二值化 retval, img = cv2.threshold(image, 127, 255, cv2.THRESH_BINARY_INV) cv2.imshow(’binary’, img) cv2.waitKey()
waitKey()的作用
1、waitKey()?這個函數是在一個給定的時間內(單位ms)等待用戶按鍵觸發;如果用戶沒有按下 鍵,則接續等待(循環)
2、如果設置waitKey(0),則表示程序會無限制的等待用戶的按鍵事件
補充知識:OpenCV中 imshow函數運行中斷的解決方法
剛開始接觸OpenCV,遇到了個小問題,想把解決方法分享給大家。在此之前已經用VS2010配置好了OpenCV并且測試通過,運行順暢,突然有一天就不好用了,生成成功但是運行不出結果。
單步調試發現是 imshow函數運行中斷。重新配置了3次,VS卸載了兩回,耗了兩天時間,試了百度里的各種辦法,都失敗了。最后發現是圖片放錯了位置...汗...
結合之前的百度,加上自己的總結,遇到這種問題大概有三種解決辦法:
1. 有位博主說這算是opencv的一個bug,工程屬性里面關于帶d和不帶d的lib文件的附加依賴項的問題。當得到這樣的錯誤時,可以把調試方式改一改,把debug和release互換下試一試
2. 有可能是圖片的后綴名的問題,有時候電腦默認隱藏后綴名,在程序中寫的是xxx.jpg,而圖片保存的是xxx.jpg.jpg,這種情況很容易被忽略。
3.還有就是圖片存放的路徑不對,將需要載入的圖片放在項目下,與項目名同名的文件夾下。這個就是我犯的低級錯誤...
以上這篇解決Opencv+Python cv2.imshow閃退問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章: