c++ - 运行基本 OpenCV 命令 VideoCapture 时 Qt 崩溃
问题描述
当我切换到 OpenCV 4.3.0 版本时,我遇到了一个有趣的问题。我使用 Cmake 3.16.0 和 mingw730_64 使用 Qt 构建 OpenCV 4.3.0,并在 Windows 10 机器上以发布模式完成构建
当我编译一个包括 VideoCapture 在内的简单代码时,我可以毫无错误地构建它,但是当我在发布模式下运行它时,exe 只会崩溃..
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/imgcodecs.hpp>
..
void MainWindow::on_pushButton_2_clicked()
{
..
VideoCapture capWebcam(0);
..
}
读取和显示图像时没有问题..!
void MainWindow::on_pushButton_clicked()
{
Mat Test_Image;
QString fileName = QFileDialog::getOpenFileName(this, "Open Image File", QDir::currentPath(), "Image (*.*)");
if(QFile::exists(fileName))
{
Test_Image = imread(fileName.toStdString(), IMREAD_COLOR);
if(Test_Image.empty()){
QMessageBox msg;
msg.setText("File couldn't load!");
msg.exec();
}
else {
namedWindow("Test Window", WINDOW_AUTOSIZE);
flip(Test_Image, Test_Image,0);
cvtColor(Test_Image, Test_Image, COLOR_BGR2GRAY);
imshow("Test Window", Test_Image);
waitKey(1);
}
}
谁能帮我理解为什么当我实例化 VideoCapture 对象时程序会立即崩溃?
C:\Qt_Projects\build-Deneme1-Desktop_Qt_5_14_2_MinGW_64_bit-Release\release\Deneme1.exe crashed.
先感谢您。
解决方案
推荐阅读
- angular - 角度解析器中的回调和可观察
- sql - 将存储过程中的特殊字符 [char(11), char(7)] 作为字符串传递
- networking - 通过服务器连接到 rasberry pi
- jenkins - Jenkins:如何在代理 docker args 中使用变量?
- c# - 移动数组并添加先前值的副本
- java - OpenJDK JDK11 没有 JMC-Java Mission Controller-FlightRecorder
- c++ - is_assignable 和 std::unique_ptr
- c# - ArgumentOutOfRangeException:使用 c# 处理 POCO 类时无法找出错误?
- angularjs-directive - 如何结构化从一个数组中获取数据
- php - Orderby 与加入 laravel 检查空结果