【发布时间】:2016-01-23 00:13:38
【问题描述】:
我正在开发一个通过网络摄像头控制鼠标的应用程序,从application开始
它只是使用肤色分割、一些噪声过滤和轮廓分析来跟踪手,然后计算质心并将其分配给鼠标光标。 当然,这样你得到的追踪手的质心坐标是指网络摄像头捕捉到的图像帧,并不对应真实的屏幕坐标,所以屏幕上会有你无法到达的区域。除非您的网络摄像头框架和屏幕具有相同的分辨率,否则我如何才能到达屏幕中的每个点?
编辑
比我想象的要简单,这里的解决方案是答案中提出的:
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);
【问题讨论】: