获取OpenCV中当前活动窗口的句柄

获取OpenCV中当前活动窗口的句柄,opencv,computer-vision,glut,Opencv,Computer Vision,Glut,是否存在GLUT glutGetWindow()/glutSetWindow()函数的OpenCV等价物,该函数允许识别当前活动窗口并从您自己的代码中切换 基本上,我希望能够从所有窗口中注册的鼠标回调函数中识别当前活动窗口,并让它为每个窗口调用另一个具有不同参数的处理函数 任何帮助都将不胜感激。在OpenCV中没有这样做的函数,但是,的签名允许您在每个窗口注册一个回调 您必须注册单个回调以实现您需要执行的操作 以下是HIGHGUI模块支持的功能列表 另一个(硬核)选择是深入研究您正在使用的操作系

是否存在GLUT glutGetWindow()/glutSetWindow()函数的OpenCV等价物,该函数允许识别当前活动窗口并从您自己的代码中切换

基本上,我希望能够从所有窗口中注册的鼠标回调函数中识别当前活动窗口,并让它为每个窗口调用另一个具有不同参数的处理函数


任何帮助都将不胜感激。

在OpenCV中没有这样做的函数,但是,的签名允许您在每个窗口注册一个回调

您必须注册单个回调以实现您需要执行的操作

以下是HIGHGUI模块支持的功能列表


另一个(硬核)选择是深入研究您正在使用的操作系统的本机API,并搜索实现此目的的方法。问题是这个解决方案不是跨平台的。

事实上,cvGetWindowHandle(const char*windowname)在opencv/highgui/highgui_c.h中是可用的。直到编写这个答案时的opencv 4

我建议你加上

#include <opencv/highgui/highgui_c.h> 

真可惜。目前,我决定使用一个模板函数来组合一些东西,其中windows ID是模板参数。它既不优雅也不聪明,但暂时可以。
cvGetWindowHandle(window_name_.c_str())