这是我的第一篇文章!
我正在尝试制作一个可以确定网格(图像)中的某些点是亮还是暗的应用程序。原始网格定义明确(我知道所有点应该相对于角的位置)。一旦我知道该点应该在哪里,我就可以很容易地判断它是亮还是暗。
问题是,我想从手持相机拍摄的网格图像中做到这一点。显然,由于手部运动,视角会发生变化,我需要做一些数学运算来确定新点相对于角的位置(我知道如何检测角)。
我在其他帖子中读到,在转换过程中唯一保留的属性是交叉比率和发生率。具体来说,这篇文章让我朝着正确的方向前进,但作者没有完成数学运算。请注意,在这个例子中,作者是从倾斜的视角转向鸟瞰图,而我试图做相反的事情。不过,数学应该是一样的。
从发布投影变换
(所以显然我不能发布图片,因为我是新人,但图片在上面的帖子中)
1) 在由线段 AD 和 CP 定义的线的交点处找到点 C'。
2) 在由线段 AD 和 BP 定义的线的交点处找到点 B'。
3)确定B'DAC'的交叉比,即r = (BA' * DC') / (DA * B'C')。
4)构造投影线F'HEG'。这些点的交叉比等于r,即r = (F'E * HG') / (HE * F'G')。
5)F'F 和 G'G 将在投影点 Q 处相交,因此使交叉比率相等并知道正方形边的长度,您可以通过一些算术体操来确定 Q 的位置。
我的问题是第 4 步,构建 F'HEG' 线。是否可以仅知道 2 个点和所需的交叉比率来构建一条由 4 个点组成的线?我觉得那是一个有 2 个未知数的方程。
如果有人可以帮助我,我将不胜感激!
抱歉,拖了这么久,
抢
PS我会在那个论坛上发帖,但这是我的第一篇文章,所以我还没有获得许可。