2015-07-01 10:19:30 -0600 | commented question | findContours throws exception intermittently - 2.4.5 2.4.5. I'm not ruling out the possibility that there is some sort of heap corruption going on elsewhere in our code base, and the findContours() function call/variables are the targets of it. It's throwing the exception but the source of the problem lies in another area. Really strange for this to happen out of nowhere but always be in the same place though... |
2015-06-30 11:42:04 -0600 | commented question | findContours throws exception intermittently - 2.4.5 I'm not using cvFindNextContour--it is called by cvFindContours internally, which is called by findContours, the function we're using. If you noticed the stack trace, line 1688 of contours.cpp is what's throwing the exception. |
2015-06-29 23:45:54 -0600 | asked a question | findContours throws exception intermittently - 2.4.5 We are using version 2.4.5 (x64 Release/Windows/VS2012/VC11) and call findContours() for each image we process, but seemingly randomly, it will thrown an unhandled exception. We saw this problem a couple of months ago, and we could not reproduce it and at the same time haven't seen it since then. It just started happening randomly when none of the code around this bit of processing has changed at all. In our software, we've registered a callback to write out a memory dump in the event that an unhandled exception happens, and here is the stack trace: Function where this is called from--edgeImage is always computed the same way for each image buffer we process and is of grayscale type. We zero it out first and then call Canny() with it passed in as a second parameter. I can share more of that code if necessary, but we do not see "edge image type to be passed..." in our logging. The line 1688 of contours.cpp is: (which WinDbg can be one line off on, and this means it's actually something in cvFindNextContour()) I'm just not sure why this would happen randomly--it seems to occur once every several million or so images we process. Again, we've been using the same bit of code around this and haven't seen the problem in months. Any help is greatly appreciated, especially with taking the stack trace addresses and applying them to what might be going on in the actual findContours() function. |