J'utilise Matlab pour faire fonctionner une caméra. C'est une caméra IDV SharpVision, et j'utilise l'interface Matlab fournie par la société. Lorsque j'essaie d'acquérir une image, j'obtiens une erreur de segmentation. J'ai essayé de préallouer la mémoire en créant un tableau vide pour l'image, mais cela ne fonctionne pas.Erreur de segmentation d'une caméra avec MATLAB
Ceci est la ligne de code qui provoque la faute de SEG:
[nResult, x] = sharpML('IdtSvAcquire',cameraId);
sharpML.dll inclut un fichier MEX pour contrôler la caméra.
Voici une sélection à partir de la trace le message d'erreur de pile:
[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)
Des suggestions? L'entreprise qui fabrique la caméra a depuis cessé ses activités.
~ Adam
Quelle version de MATLAB utilisez-vous et quelle version de MATLAB était utilisée lors de la fabrication de la caméra et du fichier MEX? Est-ce que cela a déjà fonctionné pour vous? – MatlabDoug
J'utilise MATLAB Version 7.4.0.287 (R2007a). Le code fourni par la compagnie de caméra est de 2004. Et non, je n'ai jamais eu une capture d'image réussie avec Matlab (bien que j'ai avec d'autres logiciels, en utilisant cet appareil photo). – Adam