1Danke
ERLEDIGT
JA
JA
ANTWORTEN
9
9
ZUGRIFFE
391
391
EMPFEHLEN
-
16.10.11 16:05 #1
- Registriert seit
- Oct 2011
- Beiträge
- 31
Hi Leute,
immer wenn ich die Methode cvtcolor() aufrufen möchte um beispielsweise vom RGB in den HSV farbraum zu wechseln bekomme ich folgenden Fehler:
"Unhandled exception at 0x7684b9bc in blatt4aufg2.exe: Microsoft C++ exception: cv::Exception at memory location 0x0023c64c.."
Ich weiß einfach nicht wo der Fehler liegt.
Für Hilfe wäre ich sehr dankbar!
-
16.10.11 20:19 #2
- Registriert seit
- Oct 2011
- Beiträge
- 31
ich hab den Code ganz vergessen...
Code cpp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
#include <opencv2/opencv.hpp> using namespace cv; #include <iostream> using namespace std; int main(){ VideoCapture video("C:/Users/.../Documents/bla.wmv"); int width = video.get(CV_CAP_PROP_FRAME_WIDTH); int height = video.get(CV_CAP_PROP_FRAME_HEIGHT); namedWindow("Video"); namedWindow("erstes Frame"); namedWindow("Maske"); Mat firstFrame; Mat binaerMaske(height, width, CV_8UC3); int frameNumber = 0; int zaehler=0; int ysumme=0; int xsumme=0; double mittelwertx=0; double mittelwerty=0; while(true){ Mat videoFrame; Mat videoFrame2(videoFrame.rows,videoFrame.cols,CV_8UC3); //cvtColor(videoFrame,videoFrame2,CV_BGR2HSV); if (video.read(videoFrame) == false){ break; } frameNumber++; if(frameNumber == 1){ videoFrame.copyTo(firstFrame); } for(int x = 0; x < videoFrame.cols; x++){ for (int y = 0; y < videoFrame.rows; y++){ Vec3b pixelVideo = videoFrame.at<Vec3b>(y, x); Vec3b pixelFirstFrame = firstFrame.at<Vec3b>(y,x); int helligkeitPixelVideo = (pixelVideo[0] + pixelVideo[1] + pixelVideo[2])/3; int helligkeitPixelFirstFrame = (pixelFirstFrame[0] + pixelFirstFrame[1] + pixelFirstFrame[2])/3; int schwelle = 20; if(abs(helligkeitPixelVideo - helligkeitPixelFirstFrame) > schwelle){ // Vordergrund Vec3b white (255,255,255); binaerMaske.at<Vec3b>(y,x) = white; zaehler++; //zaehlen wie viele weiße es gibt xsumme=xsumme+x; ysumme=ysumme+y; } else{ // Hintergrund Vec3b blueback (255,0,0); binaerMaske.at<Vec3b>(y,x) = blueback; } } } if (zaehler!=0){ xsumme=xsumme/zaehler; ysumme=ysumme/zaehler; } zaehler=0; Point schwerpkt (xsumme,ysumme); Point linestart(xsumme,ysumme-20); Point linestart2(xsumme-20,ysumme); Point lineend(xsumme,ysumme+20); Point lineend2(xsumme+20,ysumme); Point pt2 (xsumme+20,ysumme+20); line(binaerMaske, linestart, lineend, Scalar(0,255,0), 1, 8, 0); line(binaerMaske, linestart2, lineend2, Scalar(0,255,0), 1, 8, 0); cout<<"xsumme: "<<xsumme<<endl; cout<<"ysumme: "<<ysumme<<endl; cout<<"zahler: "<<zaehler<<endl; imshow("Video", videoFrame); imshow("erstes Frame", firstFrame); imshow("Maske", binaerMaske); waitKey(30); } }
Geändert von sheel (16.10.11 um 22:12 Uhr) Grund: Codetags
-
Hi
Bitte in Zukunft die Codetags (siehe Signatur) verwenden.
In welcher Zeile tritt der Fehler auf?Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
16.10.11 23:05 #4
- Registriert seit
- Oct 2011
- Beiträge
- 31
Hi,
da steht nirgends in welcher zeile der fehler auftritt. sobald ich cvtColor "auskommentiere" funktioniert nämlich alles, also nehme ich an das es an der funktion liegt.
Das steht im outputfenster von visual (nachdem alle dlls geladen worden sind):
First-chance exception at 0x7684b9bc in blatt4aufg2.exe: Microsoft C++ exception: cv::Exception at memory location 0x0022c754..
Unhandled exception at 0x7684b9bc in blatt4aufg2.exe: Microsoft C++ exception: cv::Exception at memory location 0x0022c754..
The program '[2040] blatt4aufg2.exe: Native' has exited with code -529697949 (0xe06d7363).
des weiteren öffnet sich neben der main.cpp auch noch ein fenster das "xstring" heißt.
-
Geh bitte trotzdem mit dem Debugger mal im Einzelschritt durch,
dann findest du die Zeile sicher.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
16.10.11 23:21 #6
- Registriert seit
- Oct 2011
- Beiträge
- 31
hmm wie mach ich das denn?
-
F10 drücken für die erste Zeile.
Mit F10 in die nächste Zeile.
Mit F10 in die nächste...
Sobald eine Fehlermeldung kommt, hast du die Fehlerzeile.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
16.10.11 23:35 #8
- Registriert seit
- Oct 2011
- Beiträge
- 31
super, danke. also der debug wird bei "cvtColor(videoFrame,videoFrame2,CV_BGR2HSV);" abgebrochen mit der gleichen fehlermeldung.
in zeile 3: "int width = video.get(CV_CAP_PROP_FRAME_WIDTH);" erscheint im command window ein text mit
"ignoring invalid packet_obj_size size"
"freeing incomplete packet size"Geändert von asdasfsdfdsf (16.10.11 um 23:41 Uhr)
-
17.10.11 09:12 #9
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Was machst du denn hier? Müßtest du nicht videoFrame erstmal mit irgendwas initialisieren (z.B. mit einem Frame aus dem Video?), bevor du auf .rows und .cols zugreifst?
Zitat von asdasfsdfdsf
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
17.10.11 13:24 #10
- Registriert seit
- Oct 2011
- Beiträge
- 31
Hi
vielen dank, dass war die lösung. ich habe cvtcolor() erst nach dem einlesen aufgerufen und es geht
Grüße und Thumbs up!
Ähnliche Themen
-
opencv: cvtColor
Von asdasfsdfdsf im Forum C/C++Antworten: 26Letzter Beitrag: 09.10.11, 23:13 -
unhandled exception in StdioFile.ReadString
Von cheristi im Forum C/C++Antworten: 0Letzter Beitrag: 15.07.08, 17:31 -
Unhandled exception
Von baeman im Forum VisualStudio & MFCAntworten: 0Letzter Beitrag: 20.06.07, 17:10 -
Unhandled exception...
Von baeman im Forum VisualStudio & MFCAntworten: 7Letzter Beitrag: 26.01.06, 10:24 -
An unhandled exception - Doch warum
Von Konstantin Gross im Forum .NET ArchivAntworten: 7Letzter Beitrag: 09.03.04, 22:03





Zitieren

Login






