Ich benutze Matlab, um eine Kamera zu bedienen. Es ist eine IDT SharpVision Kamera, und ich verwende die Matlab-Schnittstelle, die von der Firma zur Verfügung gestellt wird. Wenn ich versuche, ein Bild zu erhalten, bekomme ich einen Segmentierungsfehler. Ich habe versucht, Speicher vorab zuzuweisen, indem Sie ein leeres Array für das Bild erstellen, aber das funktioniert nicht.Segmentierungsfehler beim Betrieb einer Kamera mit MATLAB
Dies ist die Codezeile, die die seg Fehlerursachen:
[nResult, x] = sharpML('IdtSvAcquire',cameraId);
sharpML.dll enthält eine MEX-Datei, die Kamera zu steuern.
Hier eine Auswahl aus der Fehlermeldung Stapelüberwachung:
[0] QCamChildDriver.dll: 0x160fdde4 (0x0f99ef08, 15, 0x00ced938, 0x00ced938)
[1] QCamDriver.dll: 0x0f9c1dd8 (4146, 0x00ced938, 0x00ced924 , 0x11283430)
[2] sharpML.dll: 0x0f991d8c (2, 0x00cedf88, 2, 0x00cedfe8)
[3] sharpML.dll: 0x0f991448 (2, 0x00cedf88, 2, 0x00cedfe8)
...
[35 ] MATLAB.exe: 0x00403bd2 (1109972, 0, 0x7ffd9000, 0x805512fa)
[36] kernel32.dll: 0x7c817077 (0x00403daf, 0, 0x78746341, 32)
Irgendwelche Vorschläge? Das Unternehmen, das die Kamera herstellt, ist inzwischen aus dem Geschäft.
~ Adam
Welche Version von MATLAB verwenden Sie und welche Version von MATLAB war aktuell, als die Kamera und die MEX-Datei hergestellt wurden? Hat dies jemals zuvor für Sie funktioniert? – MatlabDoug
Ich verwende MATLAB Version 7.4.0.287 (R2007a). Der von der Kamera Firma zur Verfügung gestellte Code ist von 2004. Und nein, ich hatte noch nie eine erfolgreiche Bilderfassung mit Matlab (obwohl ich mit anderer Software diese Kamera benutze). – Adam