關於使用cv::ogl在cv::cuda::gpumat上加速繪製

首先需要在cmake opencv時,勾選上with_opengl。

需要#include<windows.h>

基本流程:

1.創建cuda::gpumat 對象。

2.upload cpu上的圖像到gpu上,函數爲upload(Mat )。

3.cv::namewindow()  這一步非常重要!!如果沒有無法使用opengl,因爲opengl初始化時需要獲取opengl的上下文環境。

需要注意的是,此處用法爲namewindow("名字", WINDOW_OPENGL);

4.綁定setOpenGlContext("名字"). 此處的名字與之前的窗口名對應

5.創建opengl紋理 ogl::Texture2D tex;

6. tex.copyFrom(gpumat, true);

7.綁定 tex.bind(). 這一步必須要copyfrom前,否則不顯示圖片

8.綁定頂點信息 setVertexArray

9.調用setOpenGlDrawCallback繪製

10.updateWindow 刷新窗口

11.setOpenGlDrawCallback 結束

代碼下載地址:

https://download.csdn.net/download/yinhou1771/11304361

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章