我已经开发了一个小项目,用C#帮助我选择住房(持续了3个小时)。
具体来说,我正在将犯罪统计信息叠加在Google地图上,以找到一个美好的社区。
这里有一个示例: http://otac0n.com/Demos/prospects.html
现在,我手动找到了与示例中显示的地图角落匹配的纬度和经度,但我还有几张地图要叠加。
我的新应用程序允许我选择一个地标并指向图像,以将像素连接到纬度和经度。就像这样:
locations.Add(new LocationPoint(37.6790f, -97.3125f, "Kellogg and I-135"));
// and later...
targetPoint.Pixel = FindPixel(mouseEvent.Location);
所以,我已经收集了一系列像素/纬度组合,并且现在想要通过仿射或非仿射变换来转换图像。
这里的目标是使每条街道都对齐。给定一个好的地图,唯一必要的变换将是旋转地图使其朝南(现在我会满意于此)。但我不知道从哪里开始。
有没有人在C#中进行图像变换有经验?我该如何找到适当的旋转角度使地图水平?
在解决完制作良好的地图之后,我最终希望能够叠加手绘地图。这显然需要对最终图像进行大量扭曲,可能超出了第一次迭代的范围。但是,我不希望开发一种无法扩展到未来的系统。