#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;

//加载图片并显示灰度图
void loadGrayImg()
{
  Mat src = imread("D:\\images\\1.jpg");
  if (src.empty())
  {
    cout <<"could load image..." << endl;
  }

  namedWindow("window1",CV_WINDOW_AUTOSIZE);
  imshow("window1",src);//显示原图

  //灰度图
  Mat grayImg;
  cvtColor(src,grayImg,CV_BGR2GRAY);
  namedWindow("window2", CV_WINDOW_AUTOSIZE);
  imshow("window2",grayImg);//显示灰度图

  //其他色彩空间
  Mat otherImg;
  cvtColor(src,otherImg,CV_BGR2HLS);
  namedWindow("window3",CV_WINDOW_AUTOSIZE);
    imshow("window3",otherImg);

  //保存图片
  imwrite("D:\\images\\1-gray.jpg",grayImg);
  imwrite("D:\\images\\1-gray.tif", grayImg);
}

int main()
{
  loadGrayImg();

  waitKey(0);
  return 0;
}

opencv生成灰度图并保存的更多相关文章

  1. Qt生成灰度图(转载)

    Qt生成灰度图(转载)   项目中用到大量基础图像处理知识,其中灰度图的生成是很重要的一环. 先补充一些基础知识: ------------------------------------------ ...

  2. opencv之批量转换灰度图并保存

    当图片名字有数字规律时,批量处理方式. ①srcImage 图片名字有规律 ②将srcImage文件下的图片,转换为灰度图并保存入grayImage文件夹. ③ #include <iostre ...

  3. opencv与灰度图

    https://blog.csdn.net/qq_32211827/article/details/56854985 首先,灰度图可以是一个通道存成图片,也可以是3个通道存成图片,3个通道存成图片,其 ...

  4. 图像分割利用KMeans生成灰度图

    import numpy as np import PIL.Image as image from sklearn.cluster import KMeans def loadData(filePat ...

  5. OpenCV使用标定图

    本文由 @lonelyrains 出品,转载请注明出处.  文章链接: http://blog.csdn.net/lonelyrains/article/details/46915705 上一步生成标 ...

  6. 怎么样用opencv将彩色图片转化成像素值只有0和255的灰度图?

      分类: OpenCV [Q1]怎么样用opencv将彩色图片转化成像素值只有0和255的灰度图? 进行灰度化,IplImage* pImg = cvLoadImage( "C:\\1.b ...

  7. unity 读取灰度图生成按高程分层设色地形模型

    准备灰度图 1.高程按比例对应hue色相(hsv)生成mesh效果 o.color = float4(hsv2rgb(float3(v.vertex.y/100.0, 0.5, 0.75)), 1.0 ...

  8. unity读取灰度图生成三维地形mesh

    准备灰度图 IGray.png及草地贴图 IGrass.jpg ,放入Assets下StreamingAssets文件夹中.     创建空材质,用作参数传入脚本.   脚本如下,挂载并传入材质球即可 ...

  9. python的N个小功能(图片预处理:打开图片,滤波器,增强,灰度图转换,去噪,二值化,切割,保存)

    ############################################################################################# ###### ...

随机推荐

  1. Ubuntu下常用的快捷键

    熟练地快捷键操作可以大大的节省我们的时间,下面贴上一些快捷键的操作: 桌面常用快捷键 Alt + F1:聚焦到桌面左侧任务导航栏,可按上下键进行导航 Alt + F2:运行命令 Alt + F4:关闭 ...

  2. SpringBoot WebSocket实现

    1.添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  3. 水滴效果的下拉刷新--第三方开源 开源--WaveSwipeRefreshLayout

    下载地址:https://github.com/recruit-lifestyle/WaveSwipeRefreshLayout 直接把代码复制到你的项目于即可使用: 使用: 在xml中: <j ...

  4. LeetCode OJ:Triangle(三角形)

    Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...

  5. java学习笔记 --- 多线程(线程安全问题——同步代码块)

    1.导致出现安全问题的原因: A:是否是多线程环境 B:是否有共享数据 C:是否有多条语句操作共享数据 2.解决线程安全问题方法: 同步代码块: synchronized(对象){ 需要同步的代码; ...

  6. Java NIO阻塞式通信

    package com.nio.t; import java.io.IOException; import java.net.InetSocketAddress; import java.nio.By ...

  7. (转)关于Linux核心转储文件 core dump

    所谓核心转储文件是内含进程终止时内存映像的一个文件.产生条件:特定的信号会引发进程创建一个核心转储文件并终止运行. 包括哪些特定信号,请参见http://man7.org/linux/man-page ...

  8. 3143 codevs 二叉树的序遍历

    题目描述 Description 求一棵二叉树的前序遍历,中序遍历和后序遍历 输入描述 Input Description 第一行一个整数n,表示这棵树的节点个数. 接下来n行每行2个整数L和R.第i ...

  9. Rabbitmq用户权限配置

    由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq(该 ...

  10. C#检查网络是否可以连接互联网

    添加引用: using System.Runtime.InteropServices; using System.Net.NetworkInformation; [DllImport("wi ...