如何在OpenCV中使用Mat :: type()找出Mat对象的类型

我对OpenCV中type()的Mat对象方法感到困惑。

如果我有以下几行:


mat = imread("C:\someimage.jpg");

type = mat.type();

和type = 16。我如何找出垫矩阵的类型?

我试图在手册中或徒劳的几本书中找到答案。


红糖糍粑
浏览 1283回答 3
3回答

忽然笑

为了进行调试,以防在调试器中查找原始的Mat :: type:+--------+----+----+----+----+------+------+------+------+|        | C1 | C2 | C3 | C4 | C(5) | C(6) | C(7) | C(8) |+--------+----+----+----+----+------+------+------+------+| CV_8U  |  0 |  8 | 16 | 24 |   32 |   40 |   48 |   56 || CV_8S  |  1 |  9 | 17 | 25 |   33 |   41 |   49 |   57 || CV_16U |  2 | 10 | 18 | 26 |   34 |   42 |   50 |   58 || CV_16S |  3 | 11 | 19 | 27 |   35 |   43 |   51 |   59 || CV_32S |  4 | 12 | 20 | 28 |   36 |   44 |   52 |   60 || CV_32F |  5 | 13 | 21 | 29 |   37 |   45 |   53 |   61 || CV_64F |  6 | 14 | 22 | 30 |   38 |   46 |   54 |   62 |+--------+----+----+----+----+------+------+------+------+因此,例如,如果type = 30,则OpenCV数据类型为CV_64FC4。如果type = 50,则OpenCV数据类型为CV_16UC(7)。
打开App,查看更多内容
随时随地看视频慕课网APP