#include <opencv2/opencv.hpp>
#include <iostream> using namespace cv;
/*
1 加载图像
cv::imread() 加载图像为一个Mat对象
第一个参数 文件路径
第二个参数 加载文件类型 常见三个:
IMREAD_UNCHANGED(<0) 加载原图,不做改变
IMREAD_GRAYSCALE(0) 作为灰度图像加载进来
IMREAD_COLOR(>0) 作为rgb图像加载进来
opencv支持jpg、png、tiff等常见格式图像文件加载 2 显示图片
cv::namedWindows()
cv::imshow() 常见用法:
namedWindow("窗口名称", WINDOW_AUTOSIZE)
WINDOW_AUTOSIZE 自动控制窗口大小
WINDOW_NORMAL 跟qt集成时候使用 允许修改窗口大小
imshow("窗口名", Mat对象) 3 图像变换
cv::cvtColor(原图像, 转换后的图像, 转换空间)
将图像从一个色彩空间转换到另一个色彩空间
转换空间:
COLOR_BGR2HLS
COLOR_BGR2GRAY 4 保存图像 cv::imwrite(路径, Mat对象)
会根据路径拓展名 生成文件 */ int main() {
//Mat src = imread("d:/图片/m1.jpeg", IMREAD_UNCHANGED); // 原图加载 不做修改 //Mat src = imread("d:/图片/m1.jpeg", IMREAD_GRAYSCALE); // 作为灰度图像加载 Mat src = imread("d:/图片/m1.jpeg", IMREAD_COLOR); // 作为RBG图像加载
namedWindow("显示图像", CV_WINDOW_AUTOSIZE);
imshow("显示图像", src); // 进行图像转换
namedWindow("转换图像", CV_WINDOW_AUTOSIZE);
Mat output_image;
cvtColor(src, output_image, CV_BGR2HLS); // H L S
imshow("转换图像", output_image); imwrite("d:/图片/m1_change.png", output_image); waitKey();
return ;
}

opencv 加载 修改 保存 图像的更多相关文章

  1. OpenCV图像加载与保存

    OpenCV中的图像加载与保存 头文件是包含的库,在GitHub上下载的 imread("图片路径",图片加载方式) 图片加载方式: IMREAD_GRAYSCALE 灰度图像 I ...

  2. qt: 打不开png图像以及opencv加载中文路径问题;

    经过亲测, QT(版本: 5.9.4)提供的QImageReader或者函数load在加载本地png图像时,均会提示失败, 按照网上的方法,将Qt plugins下的imageformats 拷贝到e ...

  3. python实现图像加载与保存,窗口创建与销毁,图片常用属性,ROI,通道的分离与合并,对比度和亮度

    目录: (一)图像加载与保存 (二)图像显示窗口创建与销毁 (三)图片的常用属性的获取 (四)生成指定大小的矩形区域(ROI) (五)图片颜色通道的分离与合并 (六)两张图片相加,改变对比度和亮度 ( ...

  4. [技术翻译]预加载响应式图像,从Chrome 73开始实现

    本次预计翻译三篇文章如下: 01.[译]9个可以让你在2020年成为前端专家的项目 02.[译]预加载响应式图像,从Chrome 73开始实现 03.[译]您应该知道的13个有用的JavaScript ...

  5. 文字检测模型EAST应用详解 ckpt pb的tf加载,opencv加载

    参考链接:https://github.com/argman/EAST (项目来源) https://github.com/opencv/opencv/issues/12491  (遇到的问题)    ...

  6. KnockoutJS 3.X API 第七章 其他技术(1) 加载和保存JSON数据

    Knockout允许您实现复杂的客户端交互性,但几乎所有Web应用程序还需要与服务器交换数据,或至少将本地存储的数据序列化. 最方便的交换或存储数据的方式是JSON格式 - 大多数Ajax应用程序今天 ...

  7. Qt Load and Save PCL/PLY 加载和保存点云

    Qt可以跟VTK和PCL等其他库联合使用,十分强大,下面的代码展示了如何使用Qt联合PCL库来加载和保存PCL/PLY格式的点云: 通过按钮加载点云: void QMainWindow::on_pb_ ...

  8. 6.Knockout.Js(加载或保存JSON数据)

    前言 Knockout可以实现很复杂的客户端交互,但是几乎所有的web应用程序都要和服务器端交换数据(至少为了本地存储需要序列化数据),交换数据最方便的就是使用JSON格式 – 大多数的Ajax应用程 ...

  9. 【技术贴】第二篇 :解决使用maven jetty启动后无法加载修改过后的静态资源

    之前写过第一篇:[技术贴]解决使用maven jetty启动后无法加载修改过后的静态资源 一直用着挺舒服的,直到今天,出现了又不能修改静态js,jsp等资源的现象.很是苦闷. 经过调错处理之后,发现是 ...

随机推荐

  1. (CoreText框架)NSAttributedString 2

    CHENYILONG Blog (CoreText框架)NSAttributedString 2 Fullscreen © chenyilong. Powered by Postach.io Blog

  2. C++ Qt多线程 TcpSocket服务器实例

    服务器: incomming incomming.pro #------------------------------------------------- # # Project created ...

  3. Python标准库笔记(10) — itertools模块

    itertools 用于更高效地创建迭代器的函数工具. itertools 提供的功能受Clojure,Haskell,APL和SML等函数式编程语言的类似功能的启发.它们的目的是快速有效地使用内存, ...

  4. Linux USB驱动学习总结(一)---- USB基本概念及驱动架构

    USB,Universal Serial Bus(通用串行总线),是一个外部总线标准,用于规范电脑与外部设备的连接和通讯.是应用在PC领域的接口技术.USB接口支持设备的即插即用和热插拔功能.USB是 ...

  5. Linux移植随笔:终于解决Tslib的问题了【转】

    转自:http://www.latelee.org/embedded-linux/porting-linux-tslib.html 前段时间让Tslib搞晕头了,原来一切都是版本惹的祸.本文只是一个随 ...

  6. Html.DropDownListFor() 二级联动 ($.getJSON)

    Control: public ActionResult GetPositionName(int parentid) //发布新职位页面中的根据职位类别,获取职位名称 { List<Catego ...

  7. jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)

    参考学习: 第一篇:http://www.cnblogs.com/kissdodog/archive/2012/12/15/2819025.html 第二篇:http://www.jb51.net/a ...

  8. Java关于网络编程回顾

    一.Java网络编程三要素:1.IP地址:是要确定发送的地址,IP地址一般分为5类. 2.端口:要确定发送的程序是哪一个,端口的范围是0--65535,其中0-1024是系统使用或保留端口 3.协议: ...

  9. python面向对象(三)之继承

    继承 介绍 继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力.继承即常说的is-a关系.子类继承父类的特征和行为,使得子类具有父类的各种属性和方法.或子类从父类继承 ...

  10. 使用Appium 测试微信小程序和微信公众号方法

    由于腾讯系QQ.微信等都是基于腾讯自研X5内核,不是google原生webview,需要打开TBS内核Inspector调试功能才能用Chrome浏览器查看页面元素,并实现Appium自动化测试微信小 ...