OpenCV 最近升级了它的显示窗口,当它用于 Qt 时。它看起来非常好,但是我没有发现任何可能将它嵌入到现有的 Qt GUI 窗口中。唯一的可能性似乎是创建cvNamedWindow
or cv::namedWindow
,但它创建了一个自由浮动的独立窗口。
是否有可能在现有 GUI 中创建该 OpenCV 窗口?我在 OpenCV 论坛上只能找到一个未回答的问题,有点类似于我自己的问题。
在 Qt 中显示 OpenCV 图像是一种直接的可能性,但它有两个主要问题:
- 它涉及逐像素复制图像,而且速度很慢。它对每个像素都有函数调用!(在我的测试应用程序中,如果我从图像中创建一个视频,并将其显示在 a
cvNamedWindow
中,即使同时处理多个视频,它也会非常流畅地运行,但是如果我通过IplImage
-->QImage
-->QPixmap
-->QLabel
路线,即使是一个视频也有严重的延迟) - 我不能使用
cvNamedWindow
它的那些漂亮的新控件。