码迷,mamicode.com
首页 > 其他好文 > 详细

OpenCV数据结构

时间:2019-06-07 12:46:24      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:转换   asi   表示   height   air   nbsp   scalar   help   基本   

1.分类

  基本数据结构(basic data types)

  辅助数据结构(Helper object)

  大型数据结构(Large array object):mat

  STL数据结构:vector,pair

2.基础数据结构:Point、Scalar、Size、cv::Rect、RotatedRect、Matx

3.点Point

  3.1Point构造

    cv::Point2i p;  //定义点p为2位的整形,例如(x,y) x和y取整形数据

    cv::Point3f p;  //定义点p为3位的浮点型,例如(a,b,c),abc取float数据

    cv::Point3f p2(p1);  //拷贝构造,将p1拷贝给p2

    cv::Point2i p(x0,x1);   //赋值构造,x0和x1直接取int型数据

    cv::Point3d p(x0,x1,x2);  //赋值构造,x0,x1,x2直接取double类型数据

  3.2Point取值

    int i=p.x;  //取Point2i的x坐标

    float f=p.y;  //Point2f的y坐标

  3.3Point函数

     p.inside(r);  //判断p是否在r中

    cv::Point2i p=Point2i(10,10);

    cv::Point2i p1=Point2i(200,200);

    cv::Recti2i r=Rect2i(0,0,100,100);

    bool b=p.inside(r);

    bool b1=p1.inside(r);

4.  4位double类型Scalar:n.数量,标量

    cv::Scalar是四位双浮点数的点集合  4位double

    Scalar(255)表示全白,Scalar(g,b,r)表示一个GBR色彩只是它功能的一种

    4.1Scalar构造

      cv::Scalar s;  //空构造

      cv::Scalar s2(s1);  //拷贝构造 将s1赋值给s2

      cv::Scalar s(x0);  //赋值构造

      cv::Scalar s(x0,x1,x2,x3);  //赋值构造

    4.2Scalar函数

      s1.mul(s2);  //乘法 每一位分别相乘

      Scalar s(255,255,255);

      Scalar s2(10,100,255);

      Scalar ss=s.mul(s2);

5.尺寸Size

  5.1Size构造

    cv::Size sz;  //空构造

    cv::Size2i sz;  //2位int型

    cv::Size2f sz;  //2位float型

    cv::Size sz2(sz1);  //将sz1拷贝给sz2

    cv::Size2f sz(w,h);  //赋值构造,w和h分别对应属性width和height

  5.2取值

    sz.width;  //取宽度  

    sz.height;  //取高度

  size不能够和老的数据结构相互转换。

  

    

 

OpenCV数据结构

标签:转换   asi   表示   height   air   nbsp   scalar   help   基本   

原文地址:https://www.cnblogs.com/yangmengke2018/p/10987922.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!