opencv中的Mat使用相关说明

首先参考以下几个链接

http://ilovecv.com/a/OPENCV2_xrumen/2011/1105/3.html

http://www.cnblogs.com/tornadomeet/archive/2012/04/29/2476277.html

http://hi.baidu.com/25wensanmu/item/bd8b0718cdbf0e0ee75c3607


对于使用Mat对像素点进行操作,有以下方法:

Mat img2 = imread(".//img//et000.jpg");

对于单通道,如灰度图,有:

for(int i=0;i<img2.rows;i++)

    for(int j=0;j<img2.cols;j++)

         img2.at<uchar>(i,j)=255;   //取得像素或者赋值

对于三通道如RGB图有:

for(int i=0;i<img2.rows;i++)

    for(int j=0;j<img2.cols;j++)

        for(int n=0;n<img2.channels();n++)

              img2.at<uchar>(i,j*img2.channels()+n)=255;   //取得像素或者赋值


或者采用模板类的方法

Mat m(Size(3,3), CV_32FC2 );
Vec2f& elem = m.at<Vec2f>( row , col );// or m.at<Vec2f>( Point(col,row) );
elem[0]=1212.0f;
elem[1]=326.0f;
float c1 = m.at<Vec2f>( row , col )[0];// or m.at<Vec2f>( Point(col,row) );
float c2 = m.at<Vec2f>( row , col )[1];
m.at<Vec2f>( row, col )[0]=1986.0f;
m.at<Vec2f>( row, col )[1]=326.0f;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值