openCV imshow ne restitue pas l'image à l'écran
Je suis nouveau sur openCV, ont récemment obtenu une version pré-compilée de openCV 2.4.7 et a réussi à l'intégrer avec visual studio 2010.
Apparemment bibliothèque semble bien fonctionner, mais lorsque j'essaie d'afficher une image à l'aide de imshow il affiche la fenêtre, mais n'affiche pas l'image en elle.
{
cv::Mat image = cv::imread("F:/office_Renzym/test3.jpg",CV_LOAD_IMAGE_UNCHANGED);
if(image.empty())
{
cout<<"image not loaded";
}
else
{
cv::namedWindow( "test", CV_WINDOW_AUTOSIZE );
cv::imshow("test",image);
}
}
Toute aide serait très appréciée.
source d'informationauteur Usama | 2013-12-13
Vous devez vous connecter pour publier un commentaire.
Vous devez avoir:
au lieu de:
Ce dernier ne fonctionne tout simplement pas. OpenCV besoins de pompe messages pour obtenir la fenêtre affichée et mise à jour, et à l'intérieur qu'
waitKey
fonction est tout le mécanisme pour le faire.Que dit la documentation,
waitKey
ne fonctionne que si vous avez un HighGUI fenêtre ouverte, dans votre code, vous avez probablement besoin de le faire:Dans le cas où il y a un problème avec le format de l'image, vous pouvez essayer de chargement comme ceci:
Je suggère le retrait de la
cv::namedWindow
déclaration, et l'ajout deaprès la
cv:imshow
déclaration. Vous pouvez aussi vérifier si les dimensions de la fenêtre sont corrects.