[英]How to convert IplImage to a GLubyte array?
我有一個函數可以讀取圖像並使用各種 openCV 函數對其進行一些圖像處理。 現在,我想使用 openGL 將此圖像顯示為紋理。 為此,如何在 cv::Mat 數組到 Glubyte 數組之間執行轉換?
這取決於您的IplImage / cv::Mat
的數據類型。 如果它是 CV_8U 類型,那么像素格式已經正確,您只需要:
cvFlip() / cv::flip()
垂直翻轉它。 背后的道理是,OpenCV 的坐標系原點在左上角(y 軸向下),而 OpenGL 應用程序的原點通常在底部(y 軸向上)IplImage / cv::Mat
的data
指針字段來訪問像素數據並將其加載到 OpenGL 中。 如果您的圖像數據的格式不是 CV_8U,那么您需要首先使用函數cvConvertScale() / cv::Mat::convertTo()
將其轉換為這種像素格式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.