opencv2中访问像素的简单方法-自定义一个宏CV_MAT_ELEM2
生活随笔
收集整理的這篇文章主要介紹了
opencv2中访问像素的简单方法-自定义一个宏CV_MAT_ELEM2
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
利用Mat的step[0],step[1]訪問像素的行列,自定義一個宏CV_MAT_ELEM2(src,dtype,y,x),src是待訪問的Mat,dtype是src的數據類型(int,float,char等),
訪問像素位置是y行、x列。
宏定義如下:
#define CV_MAT_ELEM2(src,dtype,y,x)? ??(dtype*)(src.data+src.step[0]*y+src.step[1]*x)
演示代碼如下所示: #include <iostream> #include <opencv2/opencv.hpp> #define CV_MAT_ELEM2(src,dtype,y,x) \(dtype*)(src.data+src.step[0]*y+src.step[1]*x) using namespace cv; using namespace std;int main() {float a[]={1,2,3,4,5,6,7,8,9};Mat mat2=Mat(3,3,CV_32F,a);Mat mv[]={mat2,mat2,mat2};Mat pp;merge(mv,3,pp);float* em=CV_MAT_ELEM2(pp,float,2,2);cout<<em[0]<<","<<em[1]<<","<<em[2]<<endl;return 0; }?
轉載于:https://www.cnblogs.com/phoenixdsg/p/6944205.html
總結
以上是生活随笔為你收集整理的opencv2中访问像素的简单方法-自定义一个宏CV_MAT_ELEM2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 导包
- 下一篇: VS之设置文件编码格式