关于将Mat.ptr直接赋值给整型的疑问?

问题描述:

在学习视觉14讲的点云拼接时碰到了以下问题:

unsigned int d = depth.ptr ( v )[u];

depth是Mat类型。

一个指针被赋值给了整型,是因为ptr是uchar*的指针,所以可以直接输出所指的对象吗?

你写得不对,应该是

unsigned int d = depth.ptr<unsigned short> ( v )[u];

模板参数unsigned short,说明返回的数组是unsigned short,所以可以用unsigned int