2013-07-09 26 views
0

现在,我有了使用CUDA-C将彩色图像更改为白色&黑色图像的简单项目。CUDA-C导入位图图像

但我遇到了导入/加载位图图像到程序中的问题。我不知道如何导入它。

所以......

  1. CUDA-C有关于导入/加载位图图像特异功能?
  2. 如果是,它是什么以及如何使用它?
  3. 如果不是,您如何处理导入/加载位图图像?

谢谢。

+0

有充足的CUDA文档。对API参考目录的扫描需要30秒,并回答(1)和(2)。 – talonmies

+0

我刚刚查看了Cuda文档,并且提到了opengl实现,这很难暗示将图像导入CUDA内核的可能性。对于初学者来说,他们不知道为什么OpenGL很重要。尽管如此,除了罗伯特提供的难以找到的样本之外,文档中没有列出任何示例。由于您没有列出显示此类文档证据的链接,因此提出了投票问题。 –

回答

1

CUDA特有的关于将位图图像加载到应用程序中真的没有什么特别的。 如果您有将位图图像加载到应用程序的首选方法,则应该可以将其用于CUDA应用程序。显然,您将首先将映像加载到主机应用程序空间中。之后,如果您想将其传输到设备,则可以使用任何标准方法将数据传输到设备来完成此操作。

  1. CUDA(即运行时API)不具有任何特定的功能用于导入/加载一个位图图像
  2. -
  3. 有许多方法来加载的图像。如果您已经在使用OpenGL或DirectX,那么您需要使用与其中一个API关联的方法,然后使用CUDA中的appropriate interop API来操作该对象。

如果你想直接导入的位图图像到CUDA程序,而不使用图形API,看看在CUDA samples,因为其中一些这样做,并提供你可能要重新辅助功能使用。

例如,dct8x8 sample提供了一个名为BmpUtil.cpp文件,它包含了许多有用的位图导入/处理例程,并且所述的DCT8×8的应用程序(dct8x8.cu)示出了这些可直接在CUDA应用使用。