2015-10-19 3 views
0

J'utilise le programme d'étalonnage de l'appareil photo présent dans le dossier opencv \ sources \ samples \ cpp \ tutorial_code \ calib3d \ camera_calibration. Quand je tente d'exécuter le code source en mode release je reçois le, je reçois une erreur de dépassement de mémoire tampon disantCalibrage de l'appareil photo cv ouvert

Un dépassement de mémoire tampon est produite dans calibration_19.10.exe de la caméra qui a endommagé l'état interne du programme. Appuyez sur Pause pour déboguer le programme ou sur Continuer pour terminer le programme.

où calibration_19.10 de l'appareil photo est le nom du projet Je compile mon code source.

La question ici est que ce qui est l'erreur dans le code ou les bibliothèques liées résultant de l'erreur ci-dessus apparaître ??.

+0

Alors, quelle est votre question? –

+0

reliez-vous les librairies de débogage en mode release? – Micka

+1

@Micka, Oui j'avais lié myvisual studio 2012 à C: \ opencv \ build \ x86 \ vc12 \ lib. L'erreur était qu'elle devait être liée à C: \ opencv \ build \ x86 \ vc11 \ lib car Visual Studio 2012 utilise vc11. Lorsque j'ai copié la DLL pour vc11 dans mon dossier de débogage et de publication, l'exécutable de mon projet a bien fonctionné. :) –

Répondre

0

Le problème avec mon projet était que j'avais défini mes bibliothèques opencv sur \ opencv \ build \ x86 \ vc12 \ lib. Mais le studio visuel a besoin de \ opencv \ build \ x86 \ vc11 \ lib. Alors, quand je l'ai utilisé les fichiers .dll (opencv_world300.dll, opencv_world300d.dll) de \ OpenCV \ build \ x86 \ VC11 \ bin dans mon débogage du projet et le dossier libérer, les executables a bien fonctionné sans l'erreur mentionnée ci-dessus

PS Si vous obtenez l'erreur ci-dessus lors de l'utilisation de Visual Studio 2012. utilisez \ opencv \ build \ x86 \ vc11 \ bin dll au lieu de \ opencv \ build \ x86 \ vc12 \ bin dll et tous les ist gut. : D