因此,我一直在使用gnu-gsl和CImg来实现一些用于仿射和公制校正的基本投影空间技术。
我已经完成了仿射校正的计算,但我很难弄清楚如何将仿射校正矩阵应用于原始(输入)图像。
我目前的想法是遍历每个像素坐标的输入图像。然后将原始像素坐标(转换为齐次坐标)与仿射校正矩阵相乘,得到输出像素坐标。
然后使用输出像素坐标访问输出图像,并对输出图像的像素位置与原始图像的像素颜色进行混合(加法)操作。
这听起来对吗?在将原始像素坐标乘以仿射校正矩阵后,我得到了许多非常奇怪的值。
发布于 2011-03-11 06:17:48
不,你的价值观不应该是奇怪的。你为什么不举一个简单的例子,一个小比例的小翻译?
x' = 1.01*x + 0.0*y + 5;
y' = 0.0*x + 0.98*y + 10;
现在(10,10)处的像素应该映射到(15.1,19.8),对吗?
如果你想做一个好的输出图像,你应该找到正向投影,然后向后投影到输入图像并在那里插值,而不是试图混合到输出图像中。否则,您最终将在输出中出现间隙。
在这里,您需要小心使用您的术语;在我看来,您是在做投影,在计算机图形社区中有时称为扭曲。整顿是另一回事,但这取决于你在做什么。
https://stackoverflow.com/questions/5264430
复制相似问题