天天看點

OpenCV-可視化界面Image Watch

平台:Win10 x64+vs2015專業版+opencv-3.4.1-vc14_vc15

一直覺得OpenCV在調試方面不如MATLAB靈活友善,沒成想OpenCV官方早就推出了一個叫Image Watch的插件可用于調試時顯示和監視圖像變量了。這裡簡單記錄一下插件的下載下傳安裝與基本使用方法

Image Watch是Microsoft Visual Studio的一個插件,它允許我們在調試應用程式時可視化記憶體中的圖像(例如,cv::Mat或IplImage_對象)。 這有助于跟蹤錯誤,或者幫助我們了解特定的代碼片段正在做什麼(例如本文的示例代碼中進行的變換)。

安裝該插件需要如下條件

  •      安裝了Update 1的Visual Studio 2012 Professional(或更高版本)
  •      在Windows機器上完成了OpenCV的安裝
  •      能夠在Visual Studio中建立和建構OpenCV項目

下載下傳安裝Image Watch

Image Watch下載下傳位址:https://marketplace.visualstudio.com/items?itemName=VisualCPPTeam.ImageWatch

Image Watch安裝方式:輕按兩下下載下傳的ImageWatch.vsix檔案,即可完成安裝。

使用Image Watch

Image Watch适用于任何使用OpenCV圖像對象的現有項目(例如,cv::Mat)。 下面給出一個簡單的示例,加載一幅彩色圖像,并将其轉換為反色。 所使用的開發環境為Windows10,Visual Studio 2015。首先建立一個控制台應用程式項目,然後在下面插入源代碼。别忘了将目标平台改為debug x64。

確定使用的是debug模式,并且在适當的位置設定的斷點,在本例中在第二個for循環的位置以及第一個imshow的位置分别設定斷點。調試運作至斷點時即可激活image watch插件。如果沒有顯示Image Watch視窗,可以使用如下方法調用:菜單欄->視圖->其他視窗->image watch,調出該插件。

注意,vs IDE内置的“本地”視窗将僅顯示文本。 而Image Watch插件就像是另一個Locals視窗,但内置了一個圖像檢視器。與Visual Studio的Locals視窗一樣,Image Watch可以停靠到Visual Studio IDE。 此外,Visual Studio将記住我們是否打開了Image Watch,以及它在調試會話之間的位置。 也就是說隻需執行此操作,下次開始調試時,Image Watch将傳回之前我們離開的位置。

Image Watch視窗左上角的單選按鈕(Locals / Watch)選擇下面的圖像清單中顯示的内容:Locals列出目前作用域中的所有OpenCV圖像對象(此清單自動填充)。 Watch顯示已固定用于連續檢查的圖像表達式。 圖像清單顯示基本資訊,例如寬度,高度,通道數,以及縮略圖(如果有)。

如果圖像具有縮略圖,則左鍵單擊該圖像将在右側的圖像檢視器中選擇它以進行詳細檢視。 檢視器允許平移(拖動滑鼠)和縮放(滑鼠滾輪)。 它還可以顯示目前滑鼠位置的像素坐标和色彩分量值

在圖像上使用滾輪操作實作縮放,放大到一定尺寸後将同時顯示像素的BGR分量