2017-09-24 2 views
1

Je suis confronté à un problème étrange.Pourquoi ne puis-je pas voir l'image capturée?

Je peux charger et montrer l'image. En outre, je suis capable de capturer l'image mais je ne peux pas voir l'image dans l'affichage. La caméra est bien connectée et capture bien l'image mais ne peut pas voir l'image.

Mon système est une fenêtre de 10 à 64 bits avec opencv 3.3.0.

Le code est ci-dessous.

int main() 
{ 

    cv::VideoCapture cap(0); 

    if (!cap.isOpened()) { 
     std::cerr << "camera didn't connected." << std::endl; 
     return 0; 
    } 

    int nFrame = 0; 

    cv::Mat image = cv::imread("orgin102.jpg"); 

    cv::imshow("image", image); 

    cvWaitKey(0); 

    while (true) { 

     cv::Mat origin; 

     cap >> origin; 

     //flip orign 
     flip(origin, origin, 1); 

     nFrame++; 

     cv::imshow("image", origin); 

     //if (cv::waitKey(27) >= 0) break; 

     cvWaitKey(0); 
    } 
    return 0; 
} 

Répondre

1

J'ai corrigé ce problème en changeant le paramètre de cap.

ici, il est

cv::VideoCapture cap(1); 

Pour certains systèmes, 0 index montre que la première caméra. et pour les autres, l'index 1 montre la première caméra.

Espérons que cela aide. À la votre!