OpenCV中关于InputArray、InputArrayOfArrays使用的注意事项
2016-08-23 09:10
537 查看
分享一个今天使用opencv时遇到函数形参为InputArrayOfArrays类型的调试过程。
1. 今天写程序使用到fillPoly()函数,声明如下:
2. 然后看了一下InputArrayOfArrays原来是InputArray,(如下图)
3. 然后再在doc文档里看了一下_InputArray的构造函数,发现可以用vector,(如下图)
4. 这样就好办了,直接在fillPoly()的第二个参数里,用了一个vector,(如下图)
5. 这样写完之后,编译通过,运行会出错,调试代码跟进fillPoly(),发现出错在这里,(如下图)
即如果是一个简单的vector类型,在这一步会出错。
6. 一番周折后发现,再看doc里_InputArray的构造函数,(如下图)
7. 再想想其类的名称,InputArrayOfArrays,数组的数组嘛,所以把原来的参数vector外边又填了一层vector,如下
8. 运行成功。
经验:Opencv里一个类型会起很多个别名,一定程度上这是很有意义。如上述问题其构造函数可以用vector作为参数,也可以使用vector
1. 今天写程序使用到fillPoly()函数,声明如下:
2. 然后看了一下InputArrayOfArrays原来是InputArray,(如下图)
3. 然后再在doc文档里看了一下_InputArray的构造函数,发现可以用vector,(如下图)
4. 这样就好办了,直接在fillPoly()的第二个参数里,用了一个vector,(如下图)
5. 这样写完之后,编译通过,运行会出错,调试代码跟进fillPoly(),发现出错在这里,(如下图)
即如果是一个简单的vector类型,在这一步会出错。
6. 一番周折后发现,再看doc里_InputArray的构造函数,(如下图)
7. 再想想其类的名称,InputArrayOfArrays,数组的数组嘛,所以把原来的参数vector外边又填了一层vector,如下
8. 运行成功。
经验:Opencv里一个类型会起很多个别名,一定程度上这是很有意义。如上述问题其构造函数可以用vector作为参数,也可以使用vector
相关文章推荐
- 关于array_unshift函数使用的一些问题及其注意事项
- 关于cordova混合型app使用input file注意事项
- 关于 STM_SETIMAGE 的使用 有一个注意事项
- 关于mojoportal在局域网或单机使用时注意事项
- struts2之整合sitemesh(关于过滤一些不使用模板文件的注意事项)
- PHP IN_ARRAY 函数使用注意事项
- 关于使用存储过程的一些好处以及注意事项
- 关于笔记本使用的几点注意事项
- Android中关于线程使用的几点注意事项
- 关于U盾使用的一些注意事项
- input控件使用时一点注意事项
- 关于在oracle中是使用索引的几点注意事项
- ASP.NET学习笔记[2] - 关于使用Master.Page的几点注意事项
- 在WEB程序中使用.NET Remoting的IpcChannel时注意事项(关于“拒绝访问”问题的解决)
- 关于使用存储过程的一些好处以及注意事项[转]
- 关于Java开发中使用Oracle数据库的一点注意事项
- OPENCV的在LINUX下的安装使用注意事项
- MFC使用OpenCv注意事项【转】
- 关于预编译语句使用的注意事项
- 关于Ibatis 2.3使用的注意事项