//将一张彩色图片转成灰度图;
////////////////////////////
#include<cv.h>
#include<cvaux.h>
#include<highgui.h>
#include<ml.h> #include<iostream> using namespace std;
using namespace cv; int main()
{
IplImage *src=0;
src=cvLoadImage("G:/1.jpg",1); IplImage *img1=cvCreateImage(cvGetSize(src),8,1);
IplImage *img2=cvCreateImage(cvGetSize(src),8,1); cvCvtColor(src,img1,CV_BGR2GRAY); for(int i=0;i<src->height;i++)
{
for(int j=0;j<src->width;j++)
{
((uchar*)(img2->imageData+i*img2->widthStep))[j]=((uchar *)(src->imageData+i*src->widthStep))[j*src->nChannels+0]*0.114+
((uchar *)(src->imageData+i*src->widthStep))[j*src->nChannels+0]*0.587+
((uchar *)(src->imageData+i*src->widthStep))[j*src->nChannels+0]*0.299;
}
} cvNamedWindow("src",1);
cvShowImage("src",src); cvNamedWindow("img1",1);
cvShowImage("img1",img1); cvNamedWindow("img2",1);
cvShowImage("img2",img2); cvWaitKey(0); cvDestroyWindow("src");
cvDestroyWindow("img1");
cvDestroyWindow("img2"); return 0;
}

主要采用两种方式将彩色图片转换成灰度图,一种是直接利用Opencv自带的cvCvtColor函数进行转换,另一种是直接对像素进行处理。

OprenCV学习之路一:将彩色图片转换成灰度图的更多相关文章

  1. Matlab 如何/怎样 读取图片 显示图片 转换成灰度图

    % 读取图片 im = imread('路径') >> im = imread('ny.png'); % 显示图片 imshow(im) >> imshow(im) % 转换成 ...

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

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

  3. [转] 小tip: 使用CSS将图片转换成模糊(毛玻璃)效果 ---张鑫旭

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=3804 去年盛夏之时, ...

  4. java中如何把图片转换成二进制流的代码

    在学习期间,把开发过程经常用到的一些代码段做个备份,下边代码内容是关于java中如何把图片转换成二进制流的代码,应该能对各朋友也有用处. public byte[] SetImageToByteArr ...

  5. centos下 将(jgp、png)图片转换成webp格式

    由于项目要求需要将jpg.png类型的图片  转换成webp格式,最开始使用了php gd类库里 imagewebp 方法实现,结果发现转换成的webp格式文件会偶尔出现空白内容的情况.像创建了一个透 ...

  6. 使用CSS将图片转换成黑白(灰色、置灰)z转

    小tip: 使用CSS将图片转换成黑白(灰色.置灰) by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.c ...

  7. [转]C#将image中的显示的图片转换成二进制

    本文转自:http://www.cnblogs.com/shuang121/archive/2012/07/09/2582654.html .将Image图像文件存入到数据库中 我们知道数据库里的Im ...

  8. 小tip: 使用CSS将图片转换成模糊(毛玻璃)效果

    去年盛夏之时,曾写过“小tip: 使用CSS将图片转换成黑白”一文,本文的模式以及内容其实走得是类似路线.CSS3 → SVG → IE filter → canvas. 前段时间,iOS7不是瓜未熟 ...

  9. ABBYY如何把图片转换成pdf格式

    在制作工作文件的时候,有时候会遇到需要进行文件格式转换的情况,比较常见的文件格式转换就包含了Office与pdf格式之间的转换.但除此之外,图片与pdf格式也是可以进行转换的,那么图片要怎么操作,才能 ...

随机推荐

  1. B. Case of Fake Numbers( Codeforces Round #310 (Div. 2) 简单题)

    B. Case of Fake Numbers time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

  2. Java中根据字节截取字符串

    一.简介 为了统一世界各国的字符集,流行开了Unicode字符集,java也支持Unicode编码,即java中char存的是代码点值,即无论是‘A’还是‘中’都占两个字节. 代码点值:与Unicod ...

  3. 大话设计模式宏观总结——创建型&amp;结构型&amp;行为型

    师傅验收项目的时候.问大话设计模式那三种类型的差别和联系是什么,顿时我傻了眼.由于除了知道这三种类型分别如何称呼以外.从来都没想过为什么这样划分?于是,我便回答:我没想过这个问题.若是从字面上来理解的 ...

  4. JavaScript Patterns 2.3 For loops

    HTMLCollections are objects returned by DOM methods such as: • document.getElementsByName() • docume ...

  5. 使用WCF进行跨平台开发之一(WCF的实现、控制台托管与.net平台的调用)

    WCF是Windows Communication Foundation的缩写,是微软发展的一组数据通信的应用程序开发接口,它是.NET框架的一部分,是WinFx的三个重要开发类库之一,其它两个是WP ...

  6. 洛谷[USACO06JAN]把牛Corral the Cows

    题目描述 约翰打算建一个围栏来圈养他的奶牛.作为最挑剔的兽类,奶牛们要求这个围栏必须是正方 形的,而且围栏里至少要有C< 500)个草场,来供应她们的午餐. 约翰的土地上共有C<=N< ...

  7. JS属性defer

      其实就是简单的利用defer属性,让浏览器读JS脚本的时候完全不等脚本开始读就开始读下面的图片啊,html代码了.然后让js脚本自己在那里慢慢读取完以后再执行. 给外链的js脚本添加defer=& ...

  8. android ListView,GridView 设置某一项显示位置

    在项目中有时会用到,当使用 listview  想让它显示某一项,当它又不在前面的位置,可以 使用 //让某一项显示出来(否则可能不在当前) listview.setSelection(positio ...

  9. 324 Wiggle Sort II 摆动排序 II

    给定一个无序的数组nums,将它重新排列成nums[0] < nums[1] > nums[2] < nums[3]...的顺序.例子:(1) 给定nums = [1, 5, 1, ...

  10. Spark 概念学习系列之Spark基本概念和模型(十八)

    打好基础,别小瞧它! spark的运行模式多种多样,在单机上既可以本地模式运行,也可以伪分布模式运行.而当以分布式的方式在集群中运行时.底层的资源调度可以使用Mesos或者Yarn,也可使用spark ...