双线性插值如何处理图像边缘防止越界?

xiaoyao888 2006-09-10 06:47:58
我写了一个双线性插值进行图像的缩放的函数,但是到图像右边缘和下边缘时却发生越界,如果这时只进行,横向和纵向的插值,放大到无所谓,但是缩小的时候就等于右边缘和下边缘并没有被缩小,尤其时当缩放系数小于0.5时,图像的右边和下边就难看了,不知道怎么才能有效的处理这种情况,是不是要在图像右边缘和下边缘进行反向插值?
...全文
911 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
collay 2006-11-25
  • 打赏
  • 举报
回复
(接楼上)
将超出图像原本范围的坐标点的用背景色来表示(例如白色(255,255,255)),
仍旧按照标准的双线性插值算法来做运算,这样可以使得图像边缘比较平滑。
但这种方法具有局限性。

alpha混合的办法应该比较好,但是在下对这种方法也不清楚,抱歉。
collay 2006-11-25
  • 打赏
  • 举报
回复
4个边缘都要做单独处理,
要看你的背景是什么颜色了。
这里有两种办法:
【1】用alpha混合的办法
【2】根据具体的背景颜色来进行插值
例如:双线性插值时,图像边缘处某待插值点坐标为(x,y)(浮点坐标)
则周围4个源坐标为:
(int(x), int(y)) (int(x) + 1, int(y)+1)
(int(x), int(y)) (int(x) + 1, int(y)+1)

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧