如何将网络摄像头捕获的帧坐标投影到屏幕坐标

本文关键字:坐标 投影 屏幕坐标 网络 摄像头 | 更新日期: 2023-09-27 18:31:25

>我正在开发一个通过网络摄像头控制鼠标的应用程序,从这个应用程序开始

它只是使用肤色分割、一些噪声过滤和轮廓分析来跟踪手,然后计算质心并将其分配给鼠标光标。当然,通过这种方式,您获得的手迹质心的坐标是指网络摄像头捕获的图像帧,与实际屏幕坐标不对应,因此屏幕中会有一些您无法到达的区域。除非您的网络摄像头框架和屏幕具有相同的分辨率,否则我怎么能到达屏幕中的每个点?

编辑

比我想象的要简单,这里是答案中提出的解决方案:

            Rectangle resolution = Screen.PrimaryScreen.Bounds;
            int real_X = (int)((Convert.ToDouble(current_X) / frame.Width)*resolution.Width);
            int real_Y = (int)((Convert.ToDouble(current_Y) / frame.Height)*resolution.Height);

如何将网络摄像头捕获的帧坐标投影到屏幕坐标

触摸板或图形输入板如何解决这个问题?它们还将产生绝对坐标。为什么不应用一个简单的映射,例如通过规范化网络摄像头的坐标,然后再次乘以显示器的分辨率?

我实际上没有看到问题,所以我错过了什么吗?