《OpenCV3学习笔记》1.2 Mat详解 :Mat数据逐像素读写

本文介绍了OpenCV3中Mat矩阵的像素读写,包括灰度图像的uchar类型和彩色图像的Vec3b类型。讨论了如何通过迭代器和指针高效地访问像素,并讲解了压缩颜色空间的方法,将三通道图像的大量颜色减少到26个级别,以简化后期处理。最后,提到了使用ptr函数和at方法快速访问图像像素。
摘要由CSDN通过智能技术生成

     Mat矩阵中每一个元素代表一个像素,灰度图像,像素用8U 无符号数,0黑色,255白色;彩色图像,每个像素需要3位这样的8U表示,即三个通道(R、G、B),矩阵依次存储一个像素的三个通道值,然后再存储下一个像素点。

      灰度图像素类型uchar;    彩色图像素点类型Vec3b

计时

double time0 = static_cast<double>(getTickCount());
{

}
time0 = ((double)getTickCount()-time0)/getTickFrequency();

压缩颜色空间

在一幅数字图像存储的矩阵一般是uchar类型,为8位256个值。如果是三通道图形,那么应该有256*256*256=16581375种不同的颜色,这1600多万种颜色,数据量会很大,影响后期的处理,这个时候,我们就需要将颜色空间进行缩减。

       对于三通道图像,本来有256*256*256种颜色,这里我们取:

       0-9的像素取值:0

       10-19的像素取值:1

       ……

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值