gpt4 book ai didi

c - CvMat 类型属性的返回类型是 1111638021 而不是 5 或 6..指针错误?

转载 作者:太空宇宙 更新时间:2023-11-03 21:09:46 24 4
gpt4 key购买 nike

我有一个非常奇怪的错误,也许是指针错误,但我看不到它。我有以下代码...

// file scope
static CvMat *cam1_points;
const int n_boards = 2;
const int board_n = 54;

// snip

// function scope...
void initializeAndDoStuff()
{
cam1_points = cvCreateMat(n_boards*board_n, 2, CV_32FC1);
printf("Type: %d\n", cam1_points->type); // should be 5. returns crazy number in title.
};

是不是哪里出了问题?为什么我没有得到正确的回应?类型应返回 CV_32F,它符合整数 5 的条件。

最佳答案

type 是矩阵签名,它存储的不仅仅是函数类型。您会得到“奇怪”的数字,因为它是以下按位或运算的结果。

CV_MAT_MAGIC_VAL|5|CV_MAT_CONT_FLAG

所以,这就是您如何使用 type 来检查您的矩阵是否属于特定类型,或者是否连续等。

请注意,如果您使用 C++ 版本 (cv::Mat),则 type 将返回 5

关于c - CvMat 类型属性的返回类型是 1111638021 而不是 5 或 6..指针错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5706700/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com