1.使用VS肯定離不開在線調試
2.使用Opencv在VS下進行圖像處理,那肯定少不了Image Watch
這兩個軟件在線調試都存在大坑,弄得精疲力盡才找到解決辦法!!!
以下問題都可以通過這個設置優化去解決,但是當你程序龐大需要優化且也需要看參數的時候,本篇博文會對你有所幫助!
本來是想直接說問題的,但是剛用這個插件的時候,發現安裝還是問題,現在提供一個幾秒鍾完成安裝的方法--->>>
到上一個圖片直接點擊安裝(install)就可以了,這里我的已經安裝了,所以出現uninstall卸載的按鈕出現~~,然后就可以使用了
注意: 以前只能在Debug模式下,現在release條件下也可以使用。只要打一個斷點就可以了(記得打斷點!!!)。
如果想整個程序都使用Image Watch,那就在waitkey(0)處打一個斷點,然后進行調試就可以了
Local模式是自動模式,是插件自動生成的變量
上面的模式和VS自帶的Autos是一樣的,懂VS的都明白
Watch模式是自己定義的模式,想看什么Mat自己輸入
和VS的Watch一模一樣
這個插件的主要作用:1.可以實時的看圖像和數據。2.可以看圖像的每一點像素值。3.圖像的對比比較明顯。
最主要的還是看像素和數據~~
現在來說一說這個缺陷,之前遇到這個問題總是逃避,不行就不用了,反正Imshow可以代替~~今天做小項目imshow不合適,就想解決這個問題。
大家使用的過程中有出現這個問題嗎?沒毛病吧?
按F10單步運行--->>>整個插件崩潰了,什么都看不見了
使用Imshow()顯示--->>>可以正常顯示
解決途徑:
方法一:注釋掉之前可以顯示,后面就不能顯示的語句。PS:沒人會用這種方法,為了好看而拋棄程序。。。不演示了,沒意義。
方法二:用斷點去跳轉--->>>看下面圖
在能看見的圖像處設置一個斷點,然后在不能顯示的語句處設置一個斷點,注意!!!一定要按F5從一個斷點跳轉到另一個斷點,如果用F10是不行的!!!
總結一下:不知道什么原因,就是突然發現的這個方法,完美解決~~
有些人用了很久也不明白一個問題,relese模式下也可以設置斷點和進行程序的調試,為什么還用Debug嗎?
網上都說re是發布,De是調試,難道Re不能調試嗎?
1.使用opencv遇到某些函數在Debug下面是不能使用的,比如FindCoutours。。。。
2.Debug模式下的處理沒有Release下面快,當你一個程序跑半天就知道了,比如使用vector的10000個數
3.Release模式有時候在線調試看不到一些參數變化,或者出現非正常的數據,比如某個數等於100,調試窗口等於100000.。。
那就得用cout或者Debug去調試了。
上面都是血的教訓啊,你沒遇到就好,遇到弄死你!!!