• OpenCV中Mat的属性


    OpenCV中Mat的属性

    最近在做一OpenCV的图像轮廓检验,但当用到霍夫变换时才发现对Mat的属性了解不足。Mat在OpenCV中的地位是及其重要的,因此有必要做一个总结。

    大体上来说,Mat是一个类,由两个数据部分组成:矩阵头(包括矩阵尺寸、存储方法、存储地址等信息)和指向数据部分的指针。

    • 矩阵头部分
    dims->矩阵的维度
    rows->矩阵的行数
    cols->矩阵的列数
    size->矩阵的大小,size(cols,rows)
    channels->矩阵元素拥有的通道数。
    type->矩阵中元素的类型以及矩阵的通道个数,为一些预定常量,CV_(位数)+(数据类型)+(通道数),如:CV_8UC1表示元素类型是一个8位无符号整数,通道数为1。数据类型中U-无符号整数,S-有符号整数,F-浮点数。具体值如下 
    CV_8UC1 CV_8UC2 CV_8UC3 CV_8UC4
    CV_8SC1 CV_8SC2 CV_8SC3 CV_8SC4
    CV_16UC1 CV_16UC2 CV_16UC3 CV_16UC4
    CV_16SC1 CV_16SC2 CV_16SC3 CV_16SC4
    CV_32SC1 CV_32SC2 CV_32SC3 CV_32SC4
    CV_32FC1 CV_32FC2 CV_32FC3 CV_32FC4
    CV_64FC1 CV_64FC2 CV_64FC3 CV_64FC4
    depth->矩阵中元素的一个通道的数据类型,对应于0,1,2,3,4,5,6的预定义常量为:
    CV_8U,CV_8S,CV_16U,CV_16S,CV_32S,CV_32F,CV_64F
    elemSize->矩阵一个元素占用的字节数,例如:type是CV_16CS3,那么elemSize=3*16/8=6B
    elemSize1->矩阵元素一个通道占用的字节数,例如:type是CV_16SC3,那么elemSize1=16/8=2B
    还有一个比较复杂的step稍后将补充。
  • 相关阅读:
    Centos7
    appium+python常见报错(appium方面)
    python标准库之datetime
    python异常捕获
    python写入文件和读取文件
    python标准库之collections
    python导入类
    python3+robotframework+pycharm安装运行
    python 继承/父类和子类的关系
    python_类
  • 原文地址:https://www.cnblogs.com/zhehan54/p/6698112.html
Copyright © 2020-2023  润新知