gpu*_*guy 5 matlab opencv image-processing
我正在图像上绘制一些几何图形。问题是坐标以浮点数形式出现,所以我无法绘制它们。作为一种解决方法,我正在使用 floor(); 将其截断为最接近的整数。这在某些情况下效果很好,只是它稍微改变了我的形象。
x=9.7
x'=floor(x)= 9 //the plot is now at 9 and not at 9.7 as desired, (this is 'shift')
Run Code Online (Sandbox Code Playgroud)
但是,如果我的要求是以等距绘制多个形状,我会面临问题,因为每个形状的移位(因为 floor();)并不统一。
它就像数字通信中的量化噪声。
有什么办法可以解决这个问题吗?
这个问题实际上在计算机图形学中很常见。光栅化是您当前正在努力解决的问题领域。您可能会发现Bresenham 的直线算法很好地介绍了该主题。这是一个很好的交互式网站,有一些不同的光栅化算法。
希望有帮助!