OpenCV中Mat数据的访问报错
2024-08-25 04:00:48
最近再写一段程序的时候,要访问Mat中的元素。在定义Mat型数据的时候,用
Mat ObjectPoints(48,3,CV_32FC1,0)
对其进行初始化后,用at进行访问时报内存错误。
Mat ObjectPoints(,,CV_32FC1);
Mat ImgPoints(,,CV_32FC1);
Mat CameraMatrix(,,CV_32FC1);
CvMat *intrinsic_matrix;
CvMat *ObjPoint;
CvMat *ImgPoint;
CvMat rotation_vector;
CvMat translation_vector; int j,k,n;
n = ;
for( j = ; j < ; j++ )
{
for( k = ; k < ; k++ )
{int m=*j+k;
objectPoints[n++] = cv::Point3f(j*, k*, );
ObjectPoints.at<float>(m,)=objectPoints[n++].x;
ObjectPoints.at<float>(m,)=objectPoints[n++].y;
ObjectPoints.at<float>(m,)=objectPoints[n++].z;
}
}
在网上搜了下CV_32FC1,表示32位即float型数据,但是我却对其赋了初值0(int 数据)。改为
Mat ObjectPoints(48,3,CV_32FC1,0.0);
Mat ObjectPoints(48,3,CV_32FC1,0.0f); 即可消除错误,错误虽然小,可也耽误了不少时间,以后编程时要更加注意程序的规范性。
最新文章
- 动手搭个wordpress
- JavaScript学习笔记2之Tab切换
- go文件操作大全
- java内部类的作用分析
- java简单字符串处理
- 其他函数:值为NULL时的默认值NVL,DECODE
- Mac appium apk覆盖性安装的问题
- 二、docker的安装和基本命令
- CentOS7设置SVN自启动,提交报错,无权限.手动kill掉后重启,成功.
- [Python]基础教程(2)、PyCharm安装及中文编码
- 如何使用Bootstrap自带图标
- syslog-ng应用详解
- SpringSecurity-ConcurrentSessionFilter的作用
- go语言使用go-sciter创建桌面应用(二) ui元素查找,增加,删除,修改
- <;魔鬼投资学>;读书笔记
- 技术分享:SSH实战项目
- MySQL 四种链接
- CSS选择器复习
- 五个瓶颈影响你的Asp.Net程序(网站)性能
- 【BZOJ】1741: [Usaco2005 nov]Asteroids 穿越小行星群