debug的時候可以直接把圖片畫出來debug。
imshow函數就是python opencv的展示圖片的函數,第一個是你要起的圖片名,第二個是圖片本身。waitKey函數是用來展示圖片多久的,默認值為0,即不寫參數時默認值為0,代表無限等待。當寫參數時,例如waitKey(5),意思是等待5ms。另外當等待時間內無任何操作時等待結束后返回-1,當等待時間內有輸入字符時,則返回字符的阿斯克碼值。
主要通過while(char(waitKey())!=’q’){}這段代碼來解釋。這段代碼的意思是等待直到鍵入q。
所以上面代碼的意思就很明確了,首先waitKey()無限等待,如果輸入字符q則waitKey()返回q的阿斯卡碼值,然后char()將阿斯克碼轉換為字符,最后與’q’作對比。
waitKey()通常用在imshow()后面給予其足夠的時間去顯示圖像,一般多個imshow()后面只需跟一個waitKey()即可。
---------------------
作者:SilenceHell
來源:CSDN
原文:https://blog.csdn.net/Du_Shuang/article/details/77836492
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
- code 1
import cv2 def test(): lena = cv2.imread('lena.jpg') cv2.imshow('image', lena) cv2.waitKey(0) print "I'm done" if __name__ == '__main__': test()
圖片顯示着,直到你按下任意一個鍵,才被關掉,打印出I'm done
。
作者:龐貝船長
鏈接:https://www.jianshu.com/p/30c40d7ce5dc
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並注明出處。
exit和continue的區別:
在for循環中,按q,exit會直接退出,continue則會顯示下一張圖片。不在for循環中,exit也是直接退出
for db in result_dict['result_boxes']: img = drawQuadrangle(img,db,'red',1) cv2.imshow('img',img) if chr(cv2.waitKey(0)) == 'q': exit()
for db in result_dict['result_boxes']: img = drawQuadrangle(img,db,'red',1) cv2.imshow('img',img) if chr(cv2.waitKey(0)) == 'q': continue
https://www.jianshu.com/p/30c40d7ce5dc