《Opencv入门》指针遍历

原创 2015年07月08日 20:31:03
#include <iostream> 
#include "opencv2/opencv.hpp" 

using namespace std;
using namespace cv;

int main(int argc, char* argv[])
{
	Mat grayim(600, 800, CV_8UC1);
	Mat colorim(600, 800, CV_8UC3);

	//遍历所有像素,并设置像素值 
	for (int i = 0; i < grayim.rows; ++i)
	{
		//获取第 i行首像素指针 
		uchar * p = grayim.ptr<uchar>(i);
		//对第i 行的每个像素(byte)操作 
		for (int j = 0; j < grayim.cols; ++j)
			p[j] = (i + j) % 255;
	}
	//遍历所有像素,并设置像素值 
	for (int i = 0; i < colorim.rows; ++i)
	{
		//获取第 i行首像素指针 
		Vec3b * p = colorim.ptr<Vec3b>(i);
		for (int j = 0; j < colorim.cols; ++j)
		{
			p[j][0] = i % 255; //Blue 
			p[j][1] = j % 255; //Green 
			p[j][2] = 0;     //Red 
		}
	}

	//显示结果 
	imshow("grayim", grayim);
	imshow("colorim", colorim);
	waitKey(0);

	return 0;
}

注意:

//获取第 i行首像素指针 
		uchar * p = grayim.ptr<uchar>(i);
ptr的使用!!!!

OpenCV学习篇之五 使用指针遍历图像

程序功能: 对图像进行颜色缩减程序:// learn_colorReduce.cpp : 定义控制台应用程序的入口点。 //#include "stdafx.h" #include #includ...
  • AA19922008
  • AA19922008
  • 2015年02月12日 20:01
  • 1285

使用指针遍历图像

#include #include #include #include using namespace std; using namespace cv; //颜色缩减函数 void colorRedu...
  • fanpengfei0
  • fanpengfei0
  • 2014年04月14日 14:43
  • 1013

OpenCV优化:图像的遍历4种方式

OpenCV优化:图像的遍历4种方式
  • daoqinglin
  • daoqinglin
  • 2014年04月13日 23:43
  • 41393

OpenCV中图像遍历与像素操作

OpenCV中表示图像遍历一般有三种方式,即数组遍历、指针遍历、迭代器遍历。...
  • qq_23968185
  • qq_23968185
  • 2016年04月26日 22:55
  • 4162

OpenCV学习之二: 使用指针遍历图像

图像矩阵是如何存储在内存之中的?
  • zhjm07054115
  • zhjm07054115
  • 2014年05月10日 19:21
  • 1236

【学习OpenCV】高效遍历Mat

一般来说图像行与行之间往往存储是不连续的,但是有些图像可以是连续的,Mat提供了一个检测图像是否连续的函数isContinuous()。当图像连通时,我们就可以把图像完全展开,看成是一行。 unsig...
  • Kelvin_Yan
  • Kelvin_Yan
  • 2014年11月29日 14:07
  • 5990

opencv学习笔记(2)----颜色缩减(使用指针遍历图像)

知识点 彩色图像由三个通道组成,由于每个强度值都是用一个8位的unsigned uchar表示,所以全部的可能颜色数目为256*256*256。有时为了降低复杂度,需要降低颜色数量 原理如下:将RGB...
  • mir_age
  • mir_age
  • 2017年05月20日 22:00
  • 194

openCV2 第三讲 遍历图像1

1,首先,对于遍历图像,我们主要可以采用两种方式,第一种是通过指针的方式进行遍历图像,第二种主要是通过迭代器的方式来遍历图像。但是在遍历图像之前,我们需要考虑一个问题,这个问题就是:对于一个图像来说,...
  • super_CV
  • super_CV
  • 2014年11月29日 20:17
  • 537

OpenCV 三种图像遍历方法

通过颜色压缩(color reduction)示例理解学习OpenCV中遍历图像的三种方法;
  • u013777351
  • u013777351
  • 2016年03月04日 00:21
  • 1281

OpenCV遍历图片像素点

之前一直用IplImage作为图像的载体,后来觉得Mat使用起来更直观明了,而且不用担心内存的释放问题。也看了许多前辈们关于两种载体的遍历,直接套用总是报错,修修改改之后,在这里做一个小总结。...
  • Tony__Kun
  • Tony__Kun
  • 2017年09月06日 22:29
  • 273
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:《Opencv入门》指针遍历
举报原因:
原因补充:

(最多只允许输入30个字)