使用在远程主机上运行的opencv在本地显示器上显示图像?

时间:2011-12-25 16:05:31

标签: opencv embedded gtk

我有一段使用openCV的简单代码,我想在ARM开发板(freescale MX)上运行它,它没有连接显示器。 我已经尝试了几天来在这个远程设备上运行代码,并在我的本地机器上显示其图形输出,没有运气......

我的设置:

  • 我本地计算机上的Ubuntu 10.04
  • Linux 2.6在主板上运行,包含我能想到的所有相关软件包。
  • 以太网连接到我的本地计算机
  • 在启用GTK的情况下静态编译的openCV
  • 使用GDB / GDBServer进行SSH调试

并且一切正常运行,接受openCV的HIGHGUI显示功能,这些功能没有任何影响。

一些注意事项:

  • 我可以将DISPLAY env var设置为指向我的本地机器,然后我就可以了 gtk-demo / xterm / whatever-is-using-X出现在我的本地机器上, 即使从我用于运行的相同SSH会话运行时也是如此 调试我的代码。
  • 我正在努力避免进入GTK / QT并修补/准备我自己的显示包装器。我觉得我只需要对GTK / HIGHGUI配置进行一些小修改就可以完成这项工作......

我的代码(编译并运行正常,接受没有图形输出):

cv::Mat im = cv::imread("/root/capture.jpg");
//im is valid and not empty at this point
cvNamedWindow( "test" );
cv::imshow( "test", im);
cvWaitKey();
cvDestroyWindow( "test" );

有人可以帮忙吗?

由于


更新

解决

在阅读我刚刚发布的消息时,我发现 - 我实际上使用了getchar()而不是cvWaitKey(),这似乎很重要......

0 个答案:

没有答案