Opencv创建纯色图
Mat类的创建:
方法一:
通过读入一张图像,直接转换为Mat对象
Mat image = imread("test.jpg");
其中 imread()方法需要传入String类型的值,一般都是图像文件路径。
方法二:
使用无参数构造函数,创建Mat对象
Mat image = Mat();
image.create(4, 4, CV_8UC3);
此刻表示创建一个4x4大小的像素块,每个像素都是三通道每个通道的位数都是8位,一个字节的。上述CV_8UC3中的8表示8位、UC表示uchar类型、3表示三个通道。
方法三:
使用行、列、类型带这个三个参数的构造函数创建Mat对象
Mat m = Mat(4, 4, CV_8UC3)
表示创建一个跟方法二一样的像素块
方法四:
使用行、列、类型、Scalar向量四个参数的构造函数创建Mat对象
Mat m = Mat(4, 4, CV_8UC3, Scalar(0, 255, 255);
同样表示创建一个4x4的像素块,唯一不一样的是颜色不是默认值而是我们指定的三通道颜色值向量Scalar(0, 255, 255)。其中Scalar向量数目永远是等于通道数目
方法五:
使用大小、类型两个参数的构造函数创建Mat对象
Mat m = Mat(Size(4, 4), CV_8UC3);
同样创建一个4x4的每个通道8位三个通道的像素块
方法六:
使用大小、类型、Scalar向量三个参数的构造函数创建Mat对象
Mat m = Mat(Size(4, 4), CV_8UC3, Scalar(255, 0, 0));
同样创建一个4x4的每个通道8位三个通道的像素块
方法七:
使用Mat::zeros函数实现,两个参数一个是Size表示图像宽与高
另外一个表示类型:
Mat m = Mat::zeros(Size(4,4), CV_8UC3);
同样创建一个4x4的每个通道8位三个通道的像素块
方法八:
使用Mat::ones函数实现,两个参数一个是Size表示图像宽与高,
另外一个表示类型
Mat m = Mat::ones(Size(4,4), CV_8UC1);
同样创建一个4x4的每个通道8位一个通道的像素块
注意这次类型是CV_8UC1表示创建的是一个通道类型数据。
Mat类的复制:
方法一:
Mat m2;
Mat m1 = imread("test.jpg");
m2 = m1;
方法二:
Mat m1 = imread("test.jpg");
Mat m2(m1);
通过上述两种方法Mat对象只会复制头部分和指向像素数据的指针,不会真正复制数据部分。通过如下方法Mat可以实现数据对象的完全复制
方法三:
Mat src = imread("test.jpg");
Mat dst = src.clone();
方法四:
Mat src = imread("test.jpg");
Mat dst;
src.copyTo(dst);
比如说,我要创建纯白色图:
Img = cv::Mat(cDepthHeight,cDepthWidth,CV_8UC3,cvScalar(255,255,255,255));
Img.setTo(255);
我要创建纯黑色图,opencv默认黑色:
Img.create(cDepthHeight, cDepthWidth, CV_8UC3);
Img.setTo(0);
参考博客:https://www.cnblogs.com/long5683/p/9693014.html
Opencv创建纯色图相关推荐
- 用opencv-python建立纯色图
用opencv-python建立纯色图 方法一 方法二 方法一 可以创建任何颜色的图 import numpy as np import cv2 as cvimg1 = np.zeros((300,5 ...
- Python+OpenCV创建级联文件(Windows7/10环境)
目录 1.搭建环境 2.准备数据集 3.训练级联文件 之前使用Python+OpenCV实现交通路标识别,具体实现步骤及心得如下: OpenCV训练属于自己的xml文件,需以下几个步骤: 1.首先下载 ...
- 【Qt】在Qt中使用opencv,不要使用opencv创建窗口
问题描述 在ubuntu14.04.5 Qt5.6中使用opencv创建窗口显示摄像头时,报错: (:1103): Gtk-WARNING **: gtk_disable_setlocale() mu ...
- OpenCV之highgui 模块. 高层GUI和媒体I/O: 为程序界面添加滑动条 OpenCV的视频输入和相似度测量 用OpenCV创建视频
为程序界面添加滑动条 在以前的教程中 (例如 linear blending 和 brightness and contrast adjustments)你有可能注意到需要 input 一些数值到我们 ...
- OpenCV创建3D直方图
OpenCV创建3D直方图 创建3D直方图 目标 代码 解释 结果 创建3D直方图 目标 在本教程中,您将学习如何 为可视窗口创建自己的回调键盘功能. 在可视窗口中显示3D直方图. 代码 #inclu ...
- OpenCV创建小部件Creating Widgets
OpenCV创建小部件 创建小部件 目标 代码 解释 结果 创建小部件 目标 在本教程中,您将学习如何 使用WidgetAccessor和VTK创建自己的窗口小部件. 在可视化窗口中显示您的窗口小部件 ...
- OpenCV创建自己的corner检测器
OpenCV创建自己的corner检测器 创建自己的corner检测器 目标 代码 结果 创建自己的corner检测器 目标 在本教程中,您将学习如何: 使用OpenCV函数cv :: cornerE ...
- OpenCV创建校准图案calibration pattern
创建校准图案calibration pattern OpenCV创建校准图案calibration pattern 创建自己的图案 OpenCV创建校准图案calibration pattern 创建 ...
- 使用OpenCV创建视频
使用OpenCV创建视频 使用OpenCV创建视频 目标 源代码 影片的结构 VideoWriter类 使用OpenCV创建视频 目标 每当您使用视频供稿时,您最终都可能希望将图像处理结果以新的视频文 ...
- opencv 创建图像_非艺术家的图像创建(OpenCV项目演练)
opencv 创建图像 This project stemmed from my predilection of the visual arts - as a computing student, I ...
最新文章
- python 词云手把手_手把手教你生成炫酷的词云
- 计算机视觉行业迎来大发展,多角度解读未来前景
- 抽象类 VS 接口 (3)
- idea servlet自动配置web.xml_Spring Boot学习04_嵌入式Servlet容器自动配置原理
- 不允许使用不完整的类型_河南:限速标志不达标,坚决不允许通车!
- java 21-13 合并
- 【开发者成长】5 分钟搞定 Linux 正则表达式
- CentOS 系统盘迁移
- 白话学习MVC(七)Action的执行一
- 多线程Thread中常用方法,优先级的使用
- 三十万,买一只基金,放着不管,五年后会怎么样?
- 女孩子偷偷学好软件测试,想要年薪30w也没有很难!
- 3.5 RNN 字符级语言模型
- QCC512x QCC302x Earbud 工程增加三击事件
- mysql执行sql流程_mysql 执行sql流程
- JavaScript 图像对象
- 华为网页手机云服务器,华为Cloud 云服务
- 持安科技孙维伯:实战零信任最佳实践
- vue框架中使用高德地图自定义icon问题
- next. js_Next.js添加到您的应用程序中的图标