Great tool! Bug: debugging from VS2015 with platform toolset VS2013 in Image Watch it states [invalid] for an image which is correctly displayed when debugging from VS2013. If platform toolset is VS2015 everything works OK.
THE best and most amazing plugin ever! Makes coding so much more productive, and more fun as well.
If you want one suggestion on what to improve, I'd say @mem(...). I don't needed it often, but when I'd need it, I most of the time can't get it to work. It's kind of documented, but I'm never sure: Do I put in the name of the variable? or '&variable'? or the address? or the address with 0x...? or...? and more often than not it's not working, and also not printing any error/debug information.
I think what would be useful as well is a small button that opens a menu that shows all the operators you can use, and their syntax - like a small documentation inside.
But those are just some tiny suggestions. It is incredible as it is!
This is indeed a game changer! Debugging in-memory images has always been so hard in VS. The simple power of Image-Watch visualization, combined with the efficient operators can turn hours of debugging to minutes or seconds.
when i start the Image Watch an error throwed "exception has been thrown by the target of an invocation".
I have uncheced Managed C++ Compatibility Mode.
My vs version is 2013， i have updated with update 1 package .
I am getting the same exception as well, thrown by Visual Studio. Every time I click on Image Watch from View > Other Windows, I get this exception.
I have tried:
- restarting the machine : doesn't solve the problem
- uninstalling and reinstalling Image Watch : doesn't solve the problem
- reducing the size of PATH (currently 1035 chars) based on some comments on the web : doesn't solve the problem
At this point, I am not able to start/use Image Watch at all. Some help is greatly appreciated. :)
I found the solution was due to some missing Visual C++ redistributable .dlls. Please see my post on StackOverflow : http://stackoverflow.com/questions/35080232/imagewatch-in-visual-studio-2013-exception-has-been-thrown-by-the-target-of-an/35080233#35080233
I hope this helps.
I am reproducing this issue. Natvis contained in project is new for Visual Studio 2015 I think. Visual Studio 2015 is able to recognize the Natvis files contained in the projects. Even though all special tags in the debugger are present for ImageWatch to parse properly ImageWatch is still telling that the image is [Invalid]. We can see in the ImageWatch.log file that the files contained in the projects are not parsed by ImageWatch.
Please add support for this.
I have a solution with two proyects.
2º VC++(clr) Integrate with Opencv3.0
Is possible debugging c++ code in proyect clr and use Image Watch in this case?
Sorry, this question (resolved by Wolf Kienzle- page 6)
1) Attach a purely native debugger, not a mixed one. Note that "enabling native code debugging" in the C# project properties means "managed + native = mixed", not "native only". So you may have to attach to the running process via Debug->Attach, instead of the more convenient "Debug->Start Debugging").
2) Turn off Tools->Options->Debugging->Managed C++ Compatibility Mode
3) Put "#pragma unmanaged" guards before any of your OpenCV code. This will ensure that your OpenCV code is actually native, not managed.
your great extension is not available for C# debugging?
Is there any way to use it?
After install on VS 2015 I can view Image Watch window but there is no locals.
When I add any expression to watch list I can see only [invalid]
This extension has potential to be very useful to me. However, I don't have objects that represent pictures; I only have pointers to raw data (such as uchar *), paired with variables that hold width, height and stride.
It would be great if you could add possibility to look images in a generic way - add another radio button which will show fields that could be manually edited (picture address, width, height, stride, format).
Hi! Update 1.0.1071.0 (April 2014) introduced the @mem operator to support this scenario. It is described on our help page under "Image Operators". Let us know if this isn't what you were looking for, or if you run into any problems with it. Thanks! -Wolf
Thanks for the operator support (and for the plugin in general, it is really important for my work). However despite the extensive documentation I do not understand where to write the operators down. Do they belong in the .natvis file and if yes, where? Could you add these information to the docs, maybe a sample natvis-file like there are several ones on the page?
You type it in the Image Watch window. Click the 'Watch' radio button, double click on a blank line, and type in (for example):
mem(buffer.data, UINT8, 1, 1600, 1200, 1600)
to display a buffer of a grayscale unsigned char* of size 1600x1200.
I have some inquiry about dump data
The dump data is created from image watch UI
I think it will save image header and data.
Could you give decoder description of dump data?
or please give us any reference document or code to extract data from dump file.
I checked that NV12 format is working by setting [channels] as "NV12". However, similar format NV21 (only the sequence of cb and cr channels are switched) seems not to be supported. If it's now supported, please guide me how to configure. If not, do you have a plan to support NV21?
I've been using Image Watch for quite time without any problems in all my OpenCV projects. However, now in one of them it is showing [invalid] for the vast majority of my matrices without any obvious reason (such matrices are of course not invalid at all). Reinstalling didn't work, and I also don't know why some of the matrices still show perfectly (though they're just a few). Are there any know issues or steps to try to troubleshoot this? I've found it difficult to get info about such problems and/or possible incompatibilities. Any help/suggestion would be greatly appreciated