如何从资源位图文件加载directshow过滤器的图像数据?

时间:2010-03-14 08:27:52

标签: c++ opencv directshow

我需要将一个位图图像放到我的directshow过滤器中。然后用户可以使用这个位图图像而不关心它在哪里。

首先,我将此位图文件导入资源包,然后获取一个IDB_BITMAP1。

然后,我需要使用opencv cvLoadImage或某些Windows图像API读取此IDB_BITMAP1以将此图像加载到缓冲区中。

所以问题是如何做到这一点?

或者可能吗?

由于

2 个答案:

答案 0 :(得分:2)

我自己从未尝试过,但我相信您可以使用LoadbitmapGetBitmapBits来执行此操作:

HBITMAP hBitmap = LoadBitmap(hInstance,MAKEINTRESOURCE(IDB_BITMAP1));
GetBitmapBits(hBitmap, size, pBits);

答案 1 :(得分:0)

我不知道OpenCV,但Win32 API LoadImage()也可以从资源加载。 E.g:

LoadImage(hInstance, 
          MAKEINTRESOURCE(IDB_BITMAP1),
          IMAGE_BITMAP,
          /*...*/);