PIL库和OpenCV中的LUT函数在cuda上快速实现

PIL库和OpenCV中的各种函数都使用了并行架构实现了多线程处理,处理速度都很快,但是有时候想要在GPU上实现差不多的函数功能,比如LUT查表函数,它能够快速的将一个数组映射到另一个数组,要想在GPU上实现这样的功能,就需要解决处理速度的问题,利用for循环肯定不行,一张图片(128*128)就有一万多像素点,一张图片循环下来,就需要十几秒,非常不切实际;
经过查阅资料,利用Pytorch中对Tensor的索引功能既可以解决这个问题,先建立一张查找表,转为tensor,然后将图像的三维tensor作为索引值给查找表,就可以根据索引的像素值映射为表中相应的值,具体索引的方式可以见:

https://blog.csdn.net/xpy870663266/article/details/101597144

猜你喜欢

转载自blog.csdn.net/m0_46429066/article/details/104988512