美文网首页
cuda图像缩放算法

cuda图像缩放算法

作者: G风 | 来源:发表于2017-06-22 17:15 被阅读0次

1.算法原理解析

假设源图像大小为mxn,目标图像为axb。那么两幅图像的边长比分别为:m/a和n/b。注意,通常这个比例不是整数,编程存储的时候要用浮点型。目标图像的第(i,j)个像素点(i行j列)可以通过边长比对应回源图像。其对应坐标为(i*m/a,j*n/b)。显然,这个对应坐标一般来说不是整数,而非整数的坐标是无法在图像这种离散数据上使用的。双线性插值通过寻找距离这个对应坐标最近的四个像素点,来计算该点的值(灰度值或者RGB值)。

若图像为灰度图像,那么(i,j)点的灰度值的数学计算模型是:

f(x,y)=b1+b2x+b3y+b4xy

其中b1,b2,b3,b4是相关的系数。关于其的计算过程如下如下:

如图,已知Q12,Q22,Q11,Q21,但是要插值的点为P点,这就要用双线性插值了,首先在x轴方向上,对R1和R2两个点进行插值,这个很简单,然后根据R1和R2对P点进行插值,这就是所谓的双线性插值。

其实就是,定义原图是src,目标图像是dst。遍历目标图像的每个像素的位置(x,y),按照一定的比例从原图src中找该点(x,y)的附近的四个点,然后根据一定的权重和四个点的像素值算出目标图像(x,y)的像素值。权重的计算就是双线性插值了。

2.参考代码,去除其中HANDLE_ERROR,stream流功能

http://blog.csdn.net/lingerlanlan/article/details/21706629?utm_source=tuicool&utm_medium=referral

相关文章

  • cuda图像缩放算法

    1.算法原理解析 假设源图像大小为mxn,目标图像为axb。那么两幅图像的边长比分别为:m/a和n/b。注意,通常...

  • 常用的像素操作算法:Resize、Flip、Rotate

    Resize 图像缩放是把原图像按照目标尺寸放大或者缩小,是图像处理的一种。 图像缩放有多种算法。最为简单的是最临...

  • 最临近插值和双线性插值

    插值在图像中的应用一般为处理图像的缩放。所谓缩放就是缩小和放大。在所有插值缩放算法中要数最邻近插值最简单最暴力,当...

  • opencv cuda 编程

    cuda练习(一):使用cuda将rbg图像转为灰度图像[https://blog.csdn.net/lingsu...

  • Unity Texture缩放 合成 解压

    图片缩放 图像放大有许多算法,关键在于对未知像素使用何种插值算法。 最邻近插值算法原理图:image.png 选取...

  • canvas的画布变化

    1 缩放 注意:1 缩放的是整个画布,缩放后,继续绘制的图像会被方法或缩小。 2 当前图像的原点,宽高都被缩放了。...

  • 图像缩放算法实现与对比

    算法原理 最临近插值算法原理图示: 选取对应原图位置距离最近的点,当然,距离相等的点的选取,需要自定一些规则。模块...

  • PS内容识别缩放

    Photoshop中的内容识别缩放用于缩放图像时令图像中的主要元素尽量不受缩放的影响.(根据颜色识别,即主要元素颜...

  • 2022-04-06 PythonOpenCV显示图像并能缩放

    常见的显示图像方式 这种显示方式,显示的图像尺寸是图像的原始尺寸,并且窗口不能缩放,有时候需要缩放图像以查看细节,...

  • 图像缩放小记

    算法AndroidJniBitmapOperations演示了最邻近插值法和双线性插值法来做图像缩放。这个项目里的...

网友评论

      本文标题:cuda图像缩放算法

      本文链接:https://www.haomeiwen.com/subject/hgvfcxtx.html