OpenCV中读取图像像素值
2016-10-09 11:00
363 查看
OpenCV中用于读取图像像素点的值的方法很多,这里主要提供了两种常用的方法。
方法一
利用IplImage数据类型的imageData定位数据缓冲区来实现,imageData包含指向图像第一个像素数据的指针
例:
If( imgSource != 0 )//imgSource为IplImage*
{
for ( int i = 0; i < imgSource->height; ++i )
{
uchar * pucPixel = (uchar*)imgSource->imageData + i*imgSource->widthStep;
for ( int j = 0; j < imgSource->width; ++j )
{
pucPixel[3*j] = 0;//像素第一个通道的值
pucPixel[3*j + 1] = 0;//像素第二个通道的值
pucPixel[3*j + 2] = 0;//像素第三个通道的值
}
}
}
方法二
利用OpenCV提供的GetReal*D,SetReal*D和Get*D,Set*D,这里*为2,对于单通道图像可以使用前两个函数,对于多通道图像可以使用后两个函数
例:
If( imgSource != 0 )//imgSource为IplImage*
{
for ( int i = 0; i < imgSource->height; ++i )
for ( int j = 0; j < imgSource->width; ++j )
{
//获取(i, j)处的三通道图像像素值
CvScalar scaPixelVal = cvGet2D( imgSource, i, j );
//获取(i, j)处的单道图像像素值
double dPixelVal = cvGetReal2D( imgSource, i, j );
//设定(i, j)处的三通道图像像素值
cvSet2D( imgSource, i, j, scalPixelVal );
//设定(i, j)处的单通道图像像素值
cvSetReal2D( imgSource, i, j, dPixelVal );
}
}
本文转载自:
http://www.blogbus.com/hx1987-logs/213007207.html
方法一
利用IplImage数据类型的imageData定位数据缓冲区来实现,imageData包含指向图像第一个像素数据的指针
例:
If( imgSource != 0 )//imgSource为IplImage*
{
for ( int i = 0; i < imgSource->height; ++i )
{
uchar * pucPixel = (uchar*)imgSource->imageData + i*imgSource->widthStep;
for ( int j = 0; j < imgSource->width; ++j )
{
pucPixel[3*j] = 0;//像素第一个通道的值
pucPixel[3*j + 1] = 0;//像素第二个通道的值
pucPixel[3*j + 2] = 0;//像素第三个通道的值
}
}
}
方法二
利用OpenCV提供的GetReal*D,SetReal*D和Get*D,Set*D,这里*为2,对于单通道图像可以使用前两个函数,对于多通道图像可以使用后两个函数
例:
If( imgSource != 0 )//imgSource为IplImage*
{
for ( int i = 0; i < imgSource->height; ++i )
for ( int j = 0; j < imgSource->width; ++j )
{
//获取(i, j)处的三通道图像像素值
CvScalar scaPixelVal = cvGet2D( imgSource, i, j );
//获取(i, j)处的单道图像像素值
double dPixelVal = cvGetReal2D( imgSource, i, j );
//设定(i, j)处的三通道图像像素值
cvSet2D( imgSource, i, j, scalPixelVal );
//设定(i, j)处的单通道图像像素值
cvSetReal2D( imgSource, i, j, dPixelVal );
}
}
本文转载自:
http://www.blogbus.com/hx1987-logs/213007207.html
相关文章推荐
- opencv读取图像像素值
- opencv 中图像像素的读取与显示
- opencv从零开始——6. 图像的读取和像素遍历
- 【OpenCV学习笔记5】读取图像中任意点的像素值
- opencv对于bmp图像像素值的读取和赋值
- OpenCV中用于读取图像像素点的值
- OpenCV应用笔记】(彩色/灰度)图像像素值读取并保存到txt文件
- OpenCV图像像素读取及效率分析
- OPENCV系列(一) 读取图像中任意点的像素值,并显示坐标
- opencv 图像读取显示和像素操作
- 运用opencv 读取BMP图像像素信息 代码及实现
- 使用OpenCV从图像上读取像素坐标位置
- opencv中读取图像像素数据的问题
- opencv图像像素值读取
- 用opencv读取图像的每个像素值,鼠标点击获取每一个点,并显示像素
- OpenCV中读取图像像素值 - [图像处理\OpenCV编程]
- opencv读取图像,并获得像素值,图像高度和宽度不是4的倍数
- opencv读取图像像素值
- OpenCV读取RGB图像像素值,并保存到txt中
- 【OpenCV应用笔记】(彩色/灰度)图像像素值读取并保存到txt文件