当前位置: 首页 > news >正文

openCV


Mat能存储的数据类型:

_Tp:用户自定义的数据类型

Mat类的创建

1、利用矩阵宽、高和类型参数创建Mat类
 

cv:Mat::Mat(int rows, int cols, int type);

rows:构造矩阵的行数
cols:矩阵的列数
type:矩阵中存储的数据类型。此处除了CV_8UC1\CV_64FC4等从1到4通道以外,还提供了更多通道的参数,通过CV_8UC(n)中的n来构建多通道矩阵,其中n最大可以取到512.

2、利用矩阵Size()结构和数据类型参数2创建Mat类

cv:Mat:Mat(Size size, int type);

size:2D数组变量尺寸,通过Size(cols, rows)进行赋值。

type:矩阵中存储的数据类型。此处除了CV_8UC1\CV_64FC4等从1到4通道以外,还提供了更多通道的参数,通过CV_8UC(n)中的n来构建多通道矩阵,其中n最大可以取到512.

3、利用已有Mat类创建新的Mat类
 

cv:Mat:Mat(const Mat & m, const Range & rowRange, const Range & colRange = Range::all());

m:已经构建完成的Mat类矩阵数据。

rowRange:在已有矩阵中需要截取的行数范围,是一个Range变量,例如从第2行到第5行可以表示为Range(2,5)。

colRange:在已有矩阵中需要截取的列数范围,是一个Range变量,例如从第2列到第5列可以表示为Range(2,5),当不输入任何值时表示所有列都会被截取。

Mat类的赋值

1、类方法赋值

eye:单位对角阵

diag:对角矩阵

ones:元素全为1的矩阵

zeros:元素全为0的矩阵

2、

cv::Mat::Mat(int rows, int cols, int type, const Scalar & s);
rows:矩阵的行数
l cols :矩阵的列数
l type :存储数据的类型
s:给矩阵中每个像素赋值的参数变量,例如Scalar(0, 0, 255)

3、枚举法赋值

cv::Mat a = (cv::Mat_<int>(3,  3)<<1, 2, 3, 4, 5, 6, 7, 8, 9);

l cv::Mat b = (cv::Mat_<double>(2, 3) << 1.0, 2.1, 3.2, 4.0, 5.1, 6.2);

图像加载(读取)

cv::Mat cv::imread(const String & fliename, int flags = IMREAD_COLOR);

filename:需要读取图像的文件名称,包含图像地址、名称和图像文件扩展名

flags:读取图像形式的标志

图像显示

void cv::namedWindow(const String & winName, int flags = WINDOW_AUTOSIZE);

winName:窗口名称,作用窗口的标识符
flags:窗口属性设置标志

void cv::imshow(const String & winname, InputArray mat);

winname:要显示图像窗口的名字,用字符串形式赋值
mat:要显示的图像矩阵

图像保存

bool cv::imwrite(const String & filename, InputArray img, const std::vector<int> & params = std::vector<int> ());

filename:保存图像的地址和文件名,包含图像格式

img:将要保存的Mat类矩阵变量

params:保存图片格式属性设置标志

视频加载(读取)/摄像头调用

cv::VideoCapture::VideoCapture(const String & fileName, int apiPreference = CAP_ANY);

fileNmae:读取的视频文件或者图像序列名称

apiPreference:读取数据时设置的属性,例如编码格式、是否调用OpenNI


cv::VideoWriter::VideoWriter(const String filename, int fourcc, double fps, Size frameSize, bool isColor = true);
filename :保存视频的地址和文件名,包含视频格式
fourcc :压缩帧的 4 字符编解码器代码,详细参数在表 2-7 给出。
fps :保存视频的帧率,即视频中每秒图像的张数。
framSize :视频帧的尺寸
isColor :保存视频是否为彩色视频
http://www.lqws.cn/news/479395.html

相关文章:

  • openai-agents实现input_guardrails
  • 策略设计模式
  • 使用 RedisVL 进行复杂查询
  • Vue 组件定义方式的区别
  • Rabbitmq集成springboot 使用死信队列
  • day 39 打卡
  • 10-K 和 10-Q是什么?
  • MySQL基础函数篇
  • DubboSPI
  • 如何在FastAPI中玩转GitHub认证,让用户一键登录?
  • 安卓对外发布工程源码:怎么做到仅UI层公布
  • Openwrt基本初始化(安装中文包,磁盘扩容)
  • MATLAB的.mat文件
  • Python 商务数据分析—— NumPy 学习笔记Ⅱ
  • Spark教程1:Spark基础介绍
  • 爬虫入门练习(文字数据的爬取)
  • Vue3解析Spring Boot ResponseEntity
  • “MOOOA多目标鱼鹰算法在无人机多目标路径规划
  • 2025国际无人机应用及防控大会四大技术专题深度解析
  • 算法-动态规划-钢条切割问题
  • 理解后端开发中的中间件(以gin框架为例)
  • Android14 app被冻结导致进程间通信失败
  • 一键打包利器:gopack - 极简Go程序编译与压缩工具
  • 解决OSS存储桶未创建导致的XML错误
  • 【CBAP50技术手册】#44 Survey and Questionnaire(问卷调研):BA(业务分析师)的“信息入口”
  • 反无人机系统:技术利刃如何守护低空安全?
  • 【2025年软考中级】第三章数据结构3.4 数组与矩阵
  • 计算鱼眼相机的内参矩阵和畸变系数方法
  • 开源 python 应用 开发(二)基于pyautogui、open cv 视觉识别的工具自动化
  • linux VFS简介