1
我試圖在實時視頻Feed上運行hough line變換。首先,feed會通過canny邊緣檢測器完成工作和輸出,然後通過hough line transform運行圖像,並導致「windows在openCv.exe中觸發斷點」。如果你看看凍結的程序,你可以看到程序做了hough變換,但隨後凍結,一個盒子彈出「Windows已觸發....」錯誤Hough Line在實況視頻中轉換會導致斷點?
任何想法?
CODE:
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
using namespace cv;
int main(int, char**)
{
namedWindow("Edges", CV_WINDOW_NORMAL);
CvCapture* capture = cvCaptureFromCAM(-1);
Mat frame;
Mat out;
Mat out2;
Mat canny;
Mat hough;
while(1) {
frame = cvQueryFrame(capture);
imshow("Source",frame);
GaussianBlur(frame, out, Size(5, 5), 0, 0);
cvtColor(out ,out2, CV_BGR2GRAY); // produces out2, a one-channel image (CV_8UC1)
Canny(out2, canny, 100, 200, 3); // the result goes to out2 again,but since it is still one channel it is fine
imshow("Canny", canny);
cvtColor(canny, hough, CV_GRAY2BGR);
vector<Vec4i> lines;
HoughLinesP(canny, lines, 1, CV_PI/180, 50, 100, 10);
for(size_t i = 0; i < lines.size(); i++)
{
Vec4i l = lines[i];
//line(hough, Point(l[0], l[1]), Point(l[2], l[3]), Scalar(0,0,255), 3, CV_AA);
cout << Point(l[0], l[1]) << endl;
cout << Point(l[2], l[3]) << endl;
}
imshow("Lines", hough);
if(!frame.data) break;
char c = cvWaitKey(33);
if(c == 'c') break;
}
return 0;
}
日誌輸出
'openCV.exe': Loaded 'C:\Users\Aaron\Documents\Visual Studio 2010\Projects\openCV\Release\openCV.exe', Symbols loaded.
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ntdll.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\kernel32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\KernelBase.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\WRusr.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\OpenCV\build\x86\vc11\bin\opencv_core246.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\OpenCV\build\x86\vc11\bin\opencv_imgproc246.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\OpenCV\build\x86\vc11\bin\opencv_highgui246.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvcp100.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvcr100.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvcrt.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\user32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\shell32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ole32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\advapi32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\psapi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ws2_32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\urlmon.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\wininet.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\oleacc.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\rpcrt4.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\oleaut32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\shlwapi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\secur32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\gdi32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msimg32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvcp110.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvcr110.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.9600.16384_none_7c55c866aa0c3ff0\comctl32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msvfw32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\avifil32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\avicap32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\combase.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\sechost.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\nsi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\iertutil.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\sspicli.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\winmm.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msacm32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\version.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\cryptbase.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\winmmbase.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\bcryptprimitives.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\cfgmgr32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\devobj.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\imm32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msctf.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\SHCore.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\profapi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\uxtheme.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\dwmapi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\kernel.appcore.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\clbcatq.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\devenum.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\setupapi.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ntmarta.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\wintrust.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\crypt32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msasn1.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\msdmo.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\qcap.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\quartz.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ksproxy.ax', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ksuser.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\d3d9.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\vidcap.ax', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\Kswdmcap.ax', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\mfc42.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\odbc32.dll', Cannot find or open the PDB file
The thread 'Win32 Thread' (0x1f8) has exited with code 0 (0x0).
'openCV.exe': Loaded 'C:\Windows\SysWOW64\qedit.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\comdlg32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.9600.16384_none_dadf89385bc5c7d7\GdiPlus.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\ddraw.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\dciman32.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\nvd3dum.dll', Cannot find or open the PDB file
The thread 'Win32 Thread' (0xccc) has exited with code 0 (0x0).
'openCV.exe': Loaded 'C:\Windows\SysWOW64\powrprof.dll', Cannot find or open the PDB file
'openCV.exe': Loaded 'C:\Windows\SysWOW64\d3dim700.dll', Cannot find or open the PDB file
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\powrprof.dll'
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\nvd3dum.dll'
'openCV.exe': Loaded 'C:\Windows\SysWOW64\nvd3dum.dll', Cannot find or open the PDB file
The thread 'Win32 Thread' (0x1684) has exited with code 0 (0x0).
'openCV.exe': Loaded 'C:\Windows\SysWOW64\powrprof.dll', Cannot find or open the PDB file
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\powrprof.dll'
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\nvd3dum.dll'
'openCV.exe': Loaded 'C:\Windows\SysWOW64\nvd3dum.dll', Cannot find or open the PDB file
The thread 'Win32 Thread' (0xc38) has exited with code 0 (0x0).
'openCV.exe': Loaded 'C:\Windows\SysWOW64\powrprof.dll', Cannot find or open the PDB file
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\powrprof.dll'
'openCV.exe': Unloaded 'C:\Windows\SysWOW64\nvd3dum.dll'
The thread 'Win32 Thread' (0x22b8) has exited with code 1950154752 (0x743d0000).
HEAP[openCV.exe]: Invalid address specified to RtlFreeHeap(028A0000, 037EBA68)
Windows has triggered a breakpoint in openCV.exe.
This may be due to a corruption of the heap, which indicates a bug in openCV.exe or any of the DLLs it has loaded.
This may also be due to the user pressing F12 while openCV.exe has focus.
The output window may have more diagnostic information.
HEAP[openCV.exe]: Invalid address specified to RtlFreeHeap(028A0000, 037ABB28)
Windows has triggered a breakpoint in openCV.exe.
This may be due to a corruption of the heap, which indicates a bug in openCV.exe or any of the DLLs it has loaded.
This may also be due to the user pressing F12 while openCV.exe has focus.
The output window may have more diagnostic information.
HEAP[openCV.exe]: Invalid address specified to RtlFreeHeap(028A0000, 037AD0D8)
Windows has triggered a breakpoint in openCV.exe.
This may be due to a corruption of the heap, which indicates a bug in openCV.exe or any of the DLLs it has loaded.
This may also be due to the user pressing F12 while openCV.exe has focus.
The output window may have more diagnostic information.
The program '[8248] openCV.exe: Native' has exited with code 0 (0x0).