Opencv的Vec类使用说明(图像像素.at方法访问)
Vec的类型
typedef Vec<uchar, 2> Vec2b;
typedef Vec<uchar, 3> Vec3b;
typedef Vec<uchar, 4> Vec4b;typedef Vec<short, 2> Vec2s;
typedef Vec<short, 3> Vec3s;
typedef Vec<short, 4> Vec4s;typedef Vec<ushort, 2> Vec2w;
typedef Vec<ushort, 3> Vec3w;
typedef Vec<ushort, 4> Vec4w;typedef Vec<int, 2> Vec2i;
typedef Vec<int, 3> Vec3i;
typedef Vec<int, 4> Vec4i;
typedef Vec<int, 6> Vec6i;
typedef Vec<int, 8> Vec8i;typedef Vec<float, 2> Vec2f;
typedef Vec<float, 3> Vec3f;
typedef Vec<float, 4> Vec4f;
typedef Vec<float, 6> Vec6f;typedef Vec<double, 2> Vec2d;
typedef Vec<double, 3> Vec3d;
typedef Vec<double, 4> Vec4d;
typedef Vec<double, 6> Vec6d;
通过上面可以看到Vec主要有uchar、short、ushort、int、float、double类型,然后维度有2,3,4,5,6。五种不同类型的维度。
下面对几种常用类型的说明:Vec3b、Vec3f、Vec3d
Vec3b主要用来访问三通道的0-255的灰度图,如:
int b = srcImage.at<Vec3b>(row, col)[0]; //获取像素值b
int g = srcImage.at<Vec3b>(row, col)[1]; //获取像素值gint r = srcImage.at<Vec3b>(row, col)[2]; //获取像素值r
Vec3f主要用来访问三通道的0-255实数类型的灰度图,如:
tempImg.at<Vec3f>(j, k)[0] = xResolution*j;
tempImg.at<Vec3f>(j, k)[1] = yResolution*i;
tempImg.at<Vec3f>(j, k)[2] = src.at<float>(j, k);
同理0-62235的16位的三通道灰度图像由Vec<ushort, 3> Vec3w类型进行访问。
上述主要对图像访问方式总结。
Vec类型的方法
这一部分主要对matx.hpp文件进行说明,以向量的角度对它的方法进行说明
1.共轭向量
Vec3f v0(1, 0, 1), v1(3, 2, 1), v2, v3;v2 = v0.conj(v1);
2.点乘
v2 = v0.dot(v1);
3.v1、v2叉乘
Vec3f vn = v0.cross(v1);
4.转为对角矩阵
Mat m=v1.diag();
Opencv的Vec类使用说明(图像像素.at方法访问)相关推荐
- opencv 几种不同遍历图像像素的方法详解
简述 我们在图像处理时经常会用到遍历图像像素点的方式,同样是遍历图像像素点,共有很多中方法可以做到:在这些方法中,有相对高效的,也有低效的:不是说低效的方法就不好,不同场景使用不同方法. 方法 下面将 ...
- opencv中Vec类的小白向介绍
大纲 前置知识:C++中类(class)的相关知识 前置知识:C++中模板(template)的相关知识 opencv中Vec类的定义及源码 引申:opencv中的宏定义如CV_8UC3 一.C++中 ...
- c#图像处理入门(-bitmap类和图像像素值获取方法)
c#图像处理入门 -bitmap类和图像像素值获取方法 一.Bitmap类 Bitmap对象封装了GDI+中的一个位图,此位图由图形图像及其属性的像素数据组成.因此Bitmap是用于处理由像素数据定义 ...
- OpenCV计算机视觉编程之三种图像像素的遍历方法
为了构建计算机视觉应用程序,需要学会访问图像内容,有时也要修改或创建图像,如何操作图像的像素,就需要遍历一幅图像并处理每一个像素.现在我们就来介绍OpenCV三种图像像素的遍历方法: 一. 用cv:: ...
- 【编程语言】利用CImage类对图像像素的处理(图像二值化)
最近做的课程作业需要用到CImage函数处理图像,其中涉及到读取图像以及对图像像素进行操作,在这里记录一下自己的理解. 首先是CImage类的定义和读取图片 CImage srcImage;CIm ...
- C#中的bitmap类和图像像素值获取方法
private void button1_Click_1(object sender, EventArgs e) { // 画直线 //Bitmap bitM ...
- python+OpenCV图像处理(二)图像像素的访问、通道的合并与分离
图像像素的访问.通道的合并与分离 (一)像素访问 在第一篇博客中,向大家介绍了,所谓的图像在计算机看来就是一个矩阵,对于RGB图像矩阵一共有三层,分别代表着RGB通道,矩阵中每一个数的大小代表着不同通 ...
- Cimage类处理图像像素(数据)的3种方式
这里只讨论对图像像素的处理,cimage类的具体用法查相关资料 #include <atlimage.h> //VS2010以后不用加这个 -------- CImage m_Im ...
- VTK修炼之道19:图像基本操作_图像像素值的访问与修改
1.直接访问图像像素(索引法) #include <vtkAutoInit.h> VTK_MODULE_INIT(vtkRenderingOpenGL);#include <vtkS ...
最新文章
- ES业界优秀实践案例汇总
- lucene源码分析的一些资料
- 玩转springboot:入门程序
- android ArcGIS学习笔记一
- python——asyncio模块实现协程、异步编程(二)
- 可靠的自托管「GitHub 热点速览 v.22.37」
- arm交叉编译工具链的选择
- 将数组文件转换成bin格式文件
- 二维码图片生成(带文字显示)
- windows下载安装ElasticSearch
- c++字符串题目:小草与小球
- 百度掉队了?正好相反,未来掉队的或许是腾讯阿里
- STM32芯片包下载和安装教程
- XUPT_ACM2021寒假训练第二周练习记录
- poj 1001 Exponentiation(java)
- c位边上还有什么位_λ(c位旁边二个位置叫什么)
- 软件设计模式——建造者模式
- [绍棠] PhotoKit介绍
- 大数据技术原理与应用(7-11)-TYUT
- 【那些年我在燕园读过的书】