OpenCV1.x中的宏定义CV_IS_MAT_CONT(src->type dst->type) 的含义
生活随笔
收集整理的這篇文章主要介紹了
OpenCV1.x中的宏定义CV_IS_MAT_CONT(src->type dst->type) 的含义
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
圖像處理開發(fā)需求、圖像處理接私活掙零花錢,請加微信/QQ 2487872782
圖像處理開發(fā)資料、圖像處理技術(shù)交流請加QQ群,群號 271891601
CV_IS_MAT_CONT翻譯成英文就是 Is MAT continuous?
翻譯成中文就是說咱們的MAT(實際上是指咱們的圖像矩陣)是否為連續(xù)存儲的!
問:啥為圖像連續(xù)存儲?
就是滿足條件 width×sizeof(elem)=stride
那么CV_IS_MAT_CONT是怎么樣實現(xiàn)這個判斷的呢?看了下面三行宏定義應(yīng)該就知道了。
#define CV_IS_MAT_CONT(flags) ? ((flags) & CV_MAT_CONT_FLAG) #define CV_MAT_CONT_FLAG ? ? ? ?(1 << CV_MAT_CONT_FLAG_SHIFT) #define CV_MAT_CONT_FLAG_SHIFT ?1通過上面的宏定義可以看出,宏定義CV_IS_MAT_CONT實際上是把CvMat對象中的type的第14位抽出來看看是否為1,為1就說明是連續(xù)的!記住CONT是 continuous的縮寫!
舉個使用的例子吧:
//reshape if possible ? ? ? ?//重新定義陣列的形狀?if( CV_IS_MAT_CONT(src->type & dst->type) ){size.width *= size.height;size.height = 1; }問,這樣寫有什么用?答:將二維矩陣轉(zhuǎn)化為一維向量,既便于代碼書寫,也有利于提高程序運行效率。
圖像處理開發(fā)需求、圖像處理接私活掙零花錢,請加微信/QQ 2487872782
圖像處理開發(fā)資料、圖像處理技術(shù)交流請加QQ群,群號 271891601
總結(jié)
以上是生活随笔為你收集整理的OpenCV1.x中的宏定义CV_IS_MAT_CONT(src->type dst->type) 的含义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 王者荣耀s10服务器维护,王者荣耀s9维
- 下一篇: Spring Cloud Gateway