1. 程式人生 > >IMAGE WATCH工具安裝與學習

IMAGE WATCH工具安裝與學習

can col img demo 鏡像 數據斷點 read 縮略圖 顏色

1、下載安裝

從下載地址搜索IMAGE WATCH,即可下載自己所需要的IMAGE WATCH工具。

安裝ImageWatch,雙擊ImageWatch.vsix進行安裝即可;

技術分享圖片

技術分享圖片

2、使用示例

這裏首先編寫程序如下:

#include "stdafx.h"
#include <iostream>                        // std::cout
#include <opencv2/core/core.hpp>           // cv::Mat
#include <opencv2/imgcodecs/imgcodecs.hpp>     // cv::imread()
#include <opencv2/imgproc/imgproc.hpp>     // cv::Canny()
using namespace std;
using namespace cv;
void help()
{
    cout
        << "----------------------------------------------------" << endl
        << "This is a test program for the Image Watch Debugger " << endl
        << "plug-in for Visual Studio. The program loads an     " << endl
        << "image from a file and runs the Canny edge detector. " << endl
        << "No output is displayed or written to disk."
        << endl
        << "Usage:" << endl
        << "image-watch-demo inputimage" << endl
        << "----------------------------------------------------" << endl
        << endl;
}
int main(int argc, char *argv[])
{
    help();
    if (argc != 2)
    {
        cout << "Wrong number of parameters" << endl;
        return -1;
    }
    cout << "Loading input image: " << argv[1] << endl;
    Mat input;
    input = imread(argv[1], IMREAD_COLOR);
    cout << "Detecting edges in input image" << endl;
    Mat edges;
    Canny(input, edges, 10, 100);
    return 0;
}

 程序編寫完成後,需要在其後填夾命令參數,對argv賦值,操作如下

   右鍵單擊項目 - >屬性 - >配置屬性 - >調試,然後使用圖像的位置設置字段命令參數

技術分享圖片

然後在Mat edges;添加斷點。

技術分享圖片

點擊F5開始進行調試,此時程序會運行到端點處停止。此時通過view -> other windows -> Image Watch打開Image Watch窗口,即可顯示cv::Mat圖像

技術分享圖片

技術分享圖片

這裏圖像就打開了,但是可以發現edges是invalid的,這是因為程序執行到這一步的時候就停止了,我們可以按F10單步運行就可以看到結果了。

技術分享圖片

滾動鼠標滾輪,可以看到原始圖像中一個像素點有3個數值,即RGB數值。而canny算子中一個圖像只有一個像素點。

技術分享圖片

技術分享圖片

3、一些其他功能的講解

在image list窗口中有一個文本菜單(單擊)鼠標右鍵激活。這個菜單裏包含的項目有:

技術分享圖片

 · Expand/Collapse All:展開或折疊當前列表中的所有條目

  · Expand New Items:控制窗口條目默認顯示狀態是折疊還是展開

  · Large Thumbnails:控制兩種縮略圖顯示尺寸之間的切換

  · Auto Maximize Contrast:如果沒有選中,像素值在映射成顏色時將使用標準調色板規則;如果選中,當前像素值將會被映射成全彩色,註意,這一設置是適用於所有圖像

  ? 1-Channel Pseudo Color:如果沒有選中,單通道圖像將會顯示成灰度圖像;如果選中之後,將會使用一個偽彩色調色板對圖像進行著色,這一設置也是適用於所有圖像的。

  ? 4-Channel Ignore Alpha:這一選項重要是針對四通道圖像。如果選中,則四通道圖像的最後一個通道將解釋為alpha;如果未被選中,則隨後一個通道的將會被忽略。

  ? Add to Watch:將選中的條目加入到watch窗口列表中。

  ? Add Address to Watch:將選中圖像條目的地址加入到watch窗口列表中,當一個圖像的存儲跨越了不同的堆棧結構時,這一做法是非常有效的。

  · Dump to File:把當前選中的圖片存成一個文件,所支持的保存格式有PGN、JPG以及BIN格式(image watch的內部無損文件格式),BIN文件意味著只能用於image watch,可以使用@file operator來加載這些文件。

單擊右鍵將會彈出該窗口中的快捷菜單(Figure 3):

技術分享圖片

  · Zoom to Fit:自動設置適合當前窗口顯示的縮放比例

  · Zoom to Original Size:將縮放比例設置為1.0,即圖片中的一個像素對應著顯示屏上的一個像素點。

  · Link Views:如果被選中,所有的具有相同尺寸的圖像在顯示時都會在想對應的位置同比例顯示。比如說,在放大觀察了一幅1024*768的圖像的某一區域後,在圖像列表中選擇了另外一張具有相同尺寸的圖像,則瀏覽器將會顯示第二章圖像相同位置區域的放大效果;相反,如果選擇了一張640*480的圖片,將會看到一個不同的區域,也就是這張圖片是按照所有640*480的圖片規格進行顯示的。

  · Auto Maximize Contrast/1-Channel PseudoColor/4-Channel Use Alpha:這是圖像列表中快捷菜單相應部分的鏡像菜單,功能與之前的快捷菜單功能相同,在這裏進行的這些選項的設置也是使用與所有圖像的。

  · Hexadecimal Display:這個選項將會觸發visual studio中的“HexadecimalDisplay”設置,這個設置在初始化構建image watch窗口的過程中生效。在image watch中這個選項將決定像素值將以什麽樣的進制顯示。

  · Copy Pixel Address:將當前像素值在內存中的地址信息復制到剪貼板上,這一點對於做記錄非常有幫助。可以講得到的地址粘貼到VS中內存調試器中,或者用來生成一個數據斷點。

參考資料

Image Watch:在Visual Studio調試器中查看內存中的圖像

opencv中image watch插件安裝使用教程

IMAGE WATCH工具安裝與學習