日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenCV Mat基础认知感

發布時間:2025/3/12 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV Mat基础认知感 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

OpenCV是一個開源的供開發的計算機視覺處理庫,涵蓋的內容包括圖像處理,機器學習。由c到c++ ,再到各平臺的跨平臺框架。

Mat - 圖像容器

Mat類用于表示一個多維的單通道或者多通道的稠密數組。能夠用來保存實數或復數的向量、矩陣,灰度或彩色圖像,立體元素,點云,張量以及直方圖(高維的直方圖使用SparseMat保存比較好)。簡言之,Mat就是用來保存多維的矩陣的。

在接口層面上,Mat是OpenCV進行圖像處理的基本結構定義。可以簡單的理解為就是一個圖片抽象類,但它不只表示圖像、還能表示立體、矩陣。

Mat屬性

  • data uchar型的指針。Mat類分為了兩個部分:矩陣頭和指向矩陣數據部分的指針,data就是指向矩陣數據的指針。

  • dims 矩陣的維度,例如5*6矩陣是二維矩陣,則dims=2,三維矩陣dims=3.

  • rows 矩陣的行數(平常我們說的圖像的高度)

  • cols 矩陣的列數(平常我們說的圖像的寬度)

  • size 矩陣的大小 (簡單理解為圖像的像素點),size(cols,rows),如果矩陣的維數大于2,則是size(-1,-1)

  • channels 矩陣元素擁有的通道數,例如常見的彩色圖像,每一個像素由RGB三部分組成,則channels = 3

  • type
    表示了矩陣中元素的類型以及矩陣的通道個數,它是一系列的預定義的常量,其命名規則為CV_(位數)+(數據類型)+(通道數)。具體如下:

    U(unsigned integer)表示的是無符號整數,S(signed integer)是有符號整數,F(float)是浮點數。例如:CV_32F就表示浮點數。
    值得說明的是上表中的具體值、值、值,是指OpenCV中對這些值的類型做了一次枚舉定義,枚舉出來的值也就是上表中的值。不要混淆了。 如:CV_8UC1 = 0 ,CV_8SC1 = 1

  • depth
    矩陣中元素的一個通道的數據類型,這個值和type是相關的。例如 type為 CV_16SC2,一個2通道的16位的有符號整數。那么,depth則是CV_16S。depth也是一系列的預定義值,
    將type的預定義值去掉通道信息就是depth值:
    CV_8U CV_8S CV_16U CV_16S CV_32S CV_32F CV_64F,同理,它的具體值也分別定義為:
    CV_8U = 0,
    CV_8S = 1,
    CV_16U = 2,
    CV_16S = 3,
    CV_32S = 4,
    CV_32F = 5,
    CV_64F = 6,
    CV_USRTYPE1 = 7;

  • elemSize
    矩陣 一個元素占用的字節數,例如:type是CV_16SC3,那么elemSize = 3 * 16 / 8 = 6 bytes

  • elemSize1
    矩陣元素 一個通道 占用的字節數,例如:type是CV_16CS3,那么elemSize1 = 16 / 8 = 2 bytes = elemSize / channels

type 和 depth

  • Mat depth,不要和圖片的位深度混淆了,在mat里面,這個屬性代表的是Mat中的數據類型,例如無符號 CV_8S。
  • type 它即包含了depth,也包含了chanel,從字面意思上是比較容易理解,但到具體值的時候,恐怕看代碼就不如意了,但只要理解這層關系,逆向看也能知道是什么意思。例如CV_8UC1,很自然,這個表達了一個通道的數據,且數據類型是CV_8U。CV_8UC1 = 0,只看0 就沒那么容易了,但也是習慣和熟練度問題,一旦形成經驗,自然也知道這些值所表達的意思。
  • 總結

    以上是生活随笔為你收集整理的OpenCV Mat基础认知感的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。