首先是基本的代码整理

 #include<iostream>
#include<opencv.hpp> using namespace std;
using namespace cv;
int main()
{
Mat sou, dest;
sou=imread("C:\\Users\\32829\\Desktop\\aa.jpg");
if (sou.empty())
{
cout << "图片读入失败" << endl;
}
namedWindow("new", );
imshow("new", sou); /*
//创建一张空白图像,大小和类型和原图一样
dest = Mat::zeros(sou.size(), sou.type());
//这个dest图片是一个二通道的,要是Scalar(0,0,0)就是一个三通道的,其实就是给这个空白的图片你附上颜色
//Scalar(1,3)表示对矩阵每个元素都赋值为(1,3),第一个通道中的值都是1,第二个通道中的值都是3.
dest = Scalar(0,0,0); namedWindow("old1", 1);
imshow("old1", dest); */ /*
Mat dst;
dst = sou.clone();
namedWindow("old1", 1);
imshow("old1", dst); */ /*
Mat dst;
sou.copyTo(dst);
namedWindow("old1", 1);
imshow("old1", dst); */ /*
//获取原图的通道数
Mat dst;
int a=sou.channels();
cout << a << endl; */ //我们生活中大多数看到的彩色图片都是RGB类型,但是在进行图像处理时,
//需要用到灰度图、二值图、HSV、HSI等颜色制式,opencv提供了cvtColor()函数来实现这些功能
Mat dst;
cvtColor(sou, dst, COLOR_BGR2GRAY);//这个就是转化为灰度图 //看一下,转化为灰度图,他的通道数是不是变了
int a = dst.channels();
cout << a << endl;//结果变成了1
namedWindow("old1");
imshow("old1", dst); const uchar* firstrow = dst.ptr<uchar>();
//不知道为啥用cout输出指针内容不行。
//cout << *firstrow << endl;
printf("输出结果 :%d\n", *firstrow);
printf("行数是:%d\n", dst.cols);
printf("列数是:%d\n", dst.rows); Mat M(, , CV_8UC3, Scalar(, , ));
cout << "M=" << M << endl;//打印出这张图片的各个像素大小
//每个像素有三个通道,然后显示就是3*3的
namedWindow("old2");
imshow("old2", M); waitKey(); return ;
}

然后基础知识整理:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

===================================================================================================

===================================================================================================

===================================================================================================

==============================================================================

================================================================================================

========================================================================================

(6)Mat对象的一些函数和方法的使用的更多相关文章

  1. 创建Mat对象

    Mat 是一个非常优秀的图像类,它同时也是一个通用的矩阵类,可以用来创建和操作多维矩阵.有多种方法创建一个 Mat 对象. 1.构造函数方法 下面是一个使用构造函数创建对象的例子. 常用的构造函数 2 ...

  2. JavaScript函数的方法

    在一个对象中绑定函数,称为这个对象的方法. 在JavaScript中,对象的定义是: var xiaoming = { name:'小明'; birth:1990; }; 但是,如果我们给xiaomi ...

  3. javascript 利用匿名函数对象给你异步回调方法传参数

    先来创建一个匿名函数对象: /*** * 匿名函数 */ var callChangeBtn=new function(bugBtn){ this.chage=function(json){ bugB ...

  4. C++11用于计算函数对象返回类型的统一方法

    [C++11用于计算函数对象返回类型的统一方法] 模板 std::result_of 被TR1 引进且被 C++11 所采纳,可允许我们决定和使用一个仿函数其回返值的类别.底下,CalculusVer ...

  5. 函数对象的call()、apply() 方法区别

    函数对象的call().apply() 方法 函数作为对象提供了call(),apply() 方法,他们也可以用来调用函数,这两个方法都接受一个对象作为参数,用来指定本次调用时函数中this的指向: ...

  6. 关于js函数,方法,对象实例的一些说明

    朋友们大家好,好久没有更新文章了,最近正好有空就想着写点什么吧,加上这段时间总是能听到一些朋友们问关于js函数,方法,对象实例到底有什么区别这个问题,所以今天就献丑来简单说明一些吧! 其实这些主要都是 ...

  7. javascript——对象的概念——函数 1 (函数对象的属性和方法)

    一.创建函数 函数是一种对象:Function类 是对象,可以通过 Function 实例化一个函数,不过最多的还是利用 function 来创建函数. 方式一:利用 Function类 来实例化函数 ...

  8. python—— 文件的打开模式和文件对象方法 & os、os.path 模块中关于文件、目录常用的函数使用方法

    引用自“鱼c工作室”     文件的打开模式和文件对象方法  : https://fishc.com.cn/forum.php?mod=viewthread&tid=45279&ext ...

  9. C#构造方法(函数) C#方法重载 C#字段和属性 MUI实现上拉加载和下拉刷新 SVN常用功能介绍(二) SVN常用功能介绍(一) ASP.NET常用内置对象之——Server sql server——子查询 C#接口 字符串的本质 AJAX原生JavaScript写法

    C#构造方法(函数)   一.概括 1.通常创建一个对象的方法如图: 通过  Student tom = new Student(); 创建tom对象,这种创建实例的形式被称为构造方法. 简述:用来初 ...

随机推荐

  1. vSphere 高级特性FT配置与管理

    内容预览: 1. Fault Tolerance 的工作方式 2. 5.X版本FT使用的vLockstep技术 3. 6.X版本FT使用的Fast Checkpointing技术 4. FT不支持的v ...

  2. XtraReport1添加参数

    解决了在report有个BeforePrint事件这里面直接 C# code   ? 1 string year = this.Parameters["year"].Value.T ...

  3. DB2的简单操作

    转 最近在看db2,边读边写了一些,记下来,虽然写的乱七八糟.以备后用. 这些都写的很简单.我觉得也算是一些简单的操作吧,有些也是摘自别人的blog具体是引用哪的就不太记得了. 一.DB2两种注释写法 ...

  4. XmlBeanDefinitionReader

  5. 图片与byte相互转换

    一.图片转byte public byte[] ImageToByte() { string imagefile = @"http://192.168.0.212/pass/T-1.jpg& ...

  6. Golang的运算符优先级实操案例

    Golang的运算符优先级实操案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.运算符优先级案例 运算符是用来在程序运行时执行数学或逻辑运算的,在Go语言中,一个表达式可以包 ...

  7. HihoCoder第九周 状态压缩 二 与POJ2411总结

    在此我向各位博友求助,特别想知道除了HihoCoder上面的结果要对1e9+7取余之外,这两道题还有什么其他的问题,都是骨牌覆盖问题,都是状态压缩+dp,为什么我能过poj2411的程序过不了Hiho ...

  8. Nginx+uwsgi+django部署项目

    nginx把请求转发给uwsgi,然后把uwsgi处理得到的结果返回给浏览器. 安装nginx: yum -y install gcc pcre-devel openssl-devel #安装Ngin ...

  9. 003、mysql输出多个结果

    SELECT VERSION(); SELECT NOW(); 结果1: 结果2: 不忘初心,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意金额给作者(微信号:382477247)哦 ...

  10. 122-PHP类成员函数(三)

    <?php class ren{ //定义人类 private function dance(){ //定义private成员方法dance echo '我要跳一支舞.'; } private ...