我正在处理图像识别(标记检测),并正在研究图像下采样预识别以提高性能。推理是我将对图像进行下采样,对其运行检测算法,然后使用下采样因子插入标记坐标。我认为下采样成本是微不足道的,因为我们的gpu一直在做。
所以我尝试使用opencv进行下采样,看到我不仅没有得到任何改进,实际上花了更长的时间。然后我想是因为我正在制作cpu这样做,所以我研究了使用opengl mipmaps甚至着色器的下采样,但是根据我所读到的它仍然是一项代价高昂的任务,花费数十甚至数百毫秒来将常见图像减半分辨率。
我的问题是,如果简单地继续进行下采样(想想在任何图像查看器或视频游戏中的任何纹理上调整图像大小),为什么使用最常用的方法这么慢?是否有一些秘密技术,或者我只是不理解某些东西?
答案 0 :(得分:0)
您可以将图像设置为纹理,并在四边形上使用此纹理。通过更改纹理坐标,您可以对图像进行任何变换。而且它的速度非常快。这里的瓶颈是将图像从主机复制到设备并返回。