gpt4 book ai didi

c++ - OpenCV imshow 不在 osx 中显示图像

转载 作者:太空宇宙 更新时间:2023-11-03 23:13:25 31 4
gpt4 key购买 nike

我正在根据一本书工作,并复制了以下代码(本质上是 openCV 等同于“hello world”):

//helloCV.cpp
#include <opencv2/opencv.hpp>

int main(int argc, char** argv){

cv::Mat img = cv::imread(argv[1], -1);
if (img.empty()) return -1;

cv::namedWindow("Example1", cv::WINDOW_AUTOSIZE);
cv::imshow("Example1", img);
cv::waitKey(0);
cv::destroyWindow("Example1");

return 0;

}//main

不幸的是,当我运行这段代码时,我得到一个带有标题但没有任何内容的窗口:

我怀疑我在安装 OpenCV 时弄乱了环境或类似的环境,但是 cmake 没有抛出任何错误,并且代码按预期运行,在击键时正确退出等等,除了一个明显的异常(exception)缺少显示的照片。

有什么建议吗?

谢谢!

最佳答案

感谢@DanMašek 在这方面的领导,以及此页面上的所有人:http://answers.opencv.org/question/160201/video-window-not-loading-frame/

重复他们所说的,对我有用的是以下内容:

To resolve this, locate the file window_cocoa.mm; if built from source it'll be in opencv/modules/highgui/src.

Change the following:

@implementation CVView
#if defined(__LP64__)
@synthesize image;
#else // 32-bit Obj-C does not have automatic synthesize
@synthesize image = _image;
#endif

To this:

@implementation CVView
@synthesize image = _image;

Do the same thing for the CVWindow and CVSlider implementations to accommodate videos as well.

Recompile OpenCV and test out your code.

希望这可以帮助其他正在努力解决这个问题的人!

关于c++ - OpenCV imshow 不在 osx 中显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44835931/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com