我需要将一个位图图像放到我的directshow过滤器中。然后用户可以使用这个位图图像而不关心它在哪里。
首先,我将此位图文件导入资源包,然后获取一个IDB_BITMAP1。
然后,我需要使用opencv cvLoadImage或某些Windows图像API读取此IDB_BITMAP1以将此图像加载到缓冲区中。
所以问题是如何做到这一点?
或者可能吗?
由于
答案 0 :(得分:2)
我自己从未尝试过,但我相信您可以使用Loadbitmap和GetBitmapBits来执行此操作:
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,
/*...*/);