C++ 为什么我看不到拍摄的图像?

C++ 为什么我看不到拍摄的图像?,c++,opencv3.3,C++,Opencv3.3,我面临一个奇怪的问题 我能够加载和显示图像。此外,我能够捕获图像,但我无法在显示器上看到图像。摄像头连接良好,捕捉图像良好,但无法看到图像 我的系统是Windows10-64位的opencv 3.3.0 代码如下 int main() { cv::VideoCapture cap(0); if (!cap.isOpened()) { std::cerr << "camera didn't connected." << std::endl

我面临一个奇怪的问题

我能够加载和显示图像。此外,我能够捕获图像,但我无法在显示器上看到图像。摄像头连接良好,捕捉图像良好,但无法看到图像

我的系统是Windows10-64位的opencv 3.3.0

代码如下

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;
}
intmain()
{
cv::视频捕获上限(0);
如果(!cap.isOpened()){
标准:cerr来源;
//翻转原点
翻转(原点,原点,1);
nFrame++;
cv::imshow(“图像”,原点);
//如果(cv::waitKey(27)>=0)中断;
cvWaitKey(0);
}
返回0;
}

我通过更改cap的参数解决了这个问题

给你

cv::VideoCapture cap(1);
对于某些系统,0索引显示为第一个摄影机。对于其他人,索引1显示第一个摄像头

希望这有帮助。 干杯