opencv4opencv视频教程 C++(opencv教程)2加载,修改,保存图像
Posted Dontla
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv4opencv视频教程 C++(opencv教程)2加载,修改,保存图像相关的知识,希望对你有一定的参考价值。
上一讲:【opencv4】opencv视频教程 C++(opencv教程)1、opencv介绍和环境搭建
下一讲:【opencv4】opencv视频教程 C++(opencv教程)3、矩阵的掩膜操作(filter2D)
文章目录
加载、修改、保存图像
加载图像(用cv::imread)加载图像参数
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
int main(int argc, const char* argv[])
Mat src = imread("img.jpg"); //默认bgr加载
//Mat src = imread("img.jpg", IMREAD_UNCHANGED); //以原图加载
Mat src = imread("img.jpg", IMREAD_GRAYSCALE); //以灰度加载
//Mat src = imread("img.jpg", IMREAD_GRAYSCALE);
if (src.empty())
printf("could not load image...\\n");
return -1;
namedWindow("test opencv setup", WINDOW_AUTOSIZE);
imshow("test opencv setup", src);
waitKey(0);
return 0;
显示图像 (cv::namedWindos 与cv::imshow)
修改图像 (cv::cvtColor)
保存图像(cv::imwrite)
图像加载、修改、保存的代码演示
(main.cpp)
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
int main(int argc, const char* argv[])
Mat src = imread("img.jpg"); //默认bgr加载
if (src.empty())
printf("could not load image...\\n");
return -1;
namedWindow("test opencv setup"); //默认自动窗口大小
imshow("test opencv setup", src);
//waitKey(0);
Mat output_img;
//cvtColor(src, output_img, COLOR_BGR2RGB); //转换图像色彩空间(第三个参数值怎么看函数里看不到呢?)
cvtColor(src, output_img, COLOR_BGR2YUV);
namedWindow("test opencv setup2"); //默认自动窗口大小
imshow("test opencv setup2", output_img);
imwrite("output_img1.jpg", output_img); //保存图像
waitKey(0);
return 0;
VS编译运行结果:
以上是关于opencv4opencv视频教程 C++(opencv教程)2加载,修改,保存图像的主要内容,如果未能解决你的问题,请参考以下文章
opencv4opencv视频教程 C++(opencv教程)3矩阵的掩膜操作(filter2D)
opencv4opencv视频教程 C++ 6图像混合线性混合混合权重相加addWeighted()混合加add()混合乘multiply()
opencv4opencv视频教程 C++ 7手动调整图像亮度与对比度 g(i, j) = αf(i, j) + β(点操作与邻域操作概念)
opencv4opencv教程 C++ 4Mat对象(深拷贝:clone()copyTo(),create()创建图片,zeros()eye()初始化空白图像,Scalar()创建向量)
opencv4opencv视频教程 C++ 5读写图像imreadimwrite读写像素at<>()修改像素值ROI区域选择(图像裁剪)RectVec3b与Vec3FCV_32F)