我们在看opencv官方示例的时候,经常会看到有关CommandLineParser类的用法,那就从官方教程中来看吧
OpenCV中出现此类的主要目:方便用户在命令行使用过程中减少工作量,在这个地方定义一些我们需要用的量,方便我们使用。

CommandLineParser parser(argc, argv, keys);
parser.about("Application name v1.0.0");
if (parser.has("help"))
{parser.printMessage();return 0;
}
int N = parser.get<int>("N");
double fps = parser.get<double>("fps");
String path = parser.get<String>("path");
use_time_stamp = parser.has("timestamp");
String img1 = parser.get<String>(0);
String img2 = parser.get<String>(1);
int repeat = parser.get<int>(2);
if (!parser.check())
{parser.printErrors();return 0;
}

Keys syntax
key参数是包含多个方块的字符串,每个方块都以卷曲大括号为内,并描述一个参数。每个参数包含由符号分开的三个部分:‎|

‎参数名称是一个空间分离的选项同义词列表(将参数标记为位置,将其与符号前缀)‎@
‎未提供参数(可为空)将使用默认值‎
‎帮助消息(可以是空的)‎
‎例如:‎

    const String keys ="{help h usage ? |      | print this message   }""{@image1        |      | image1 for compare   }""{@image2        |<none>| image2 for compare   }""{@repeat        |1     | number               }""{path           |.     | path to file         }""{fps            | -1.0 | fps for output video }""{N count        |100   | count of objects     }""{ts timestamp   |      | use time stamp       }";
}

‎请注意,没有默认值,因此我们可以使用该方法检查它们的存在。默认值的参数始终存在。在这些情况下,请使用该方法来检查其实际值。‎helptimestamphas()get()

‎字符串键(如默认返回空字符串) - 即使具有空默认值。使用特殊默认值强制执行返回的字符串不得空。(如在‎get("@image1")"“get(”@image2"))

打开opencv官方示例几乎都会看到这个类的用法,其实也并不难,总的来说就是定义变量和读取变量使用的。
官方说明:https://docs.opencv.org/4.1.0/d0/d2e/classcv_1_1CommandLineParser.html

opencv中的CommandLineParser类用法相关推荐

  1. OpenCV 中的 Scalar 类、Vec类

    转 自 http://www.bubuko.com/infodetail-1533054.html 文章目录 Scalar 类 Vec 类 Scalar 类 typedef Scalar_<do ...

  2. 如何将OpenCV中的Mat类绑定为OpenGL中的纹理

    https://blog.csdn.net/TTTTzTTTT/article/details/53456324 如果要调用外接的USB摄像头获取图像通常使用OpenCV来调用,如何调用摄像头请参考本 ...

  3. Opencv 中的向量类Vec

    向量类Vec 定义: 此向量可以理解为数学意义上的列向量,构造一个_cn×1的列向量,数据类型为 _Tp,格式如下:                               Vec<Type ...

  4. C++中的string类用法简介

    本文主要介绍C++中的string类的常见用法. 1. 概述 string是C++标准库的一个重要的部分,主要用于字符串处理.可以使用输入输出流方式直接进行string操作,也可以通过文件等手段进行s ...

  5. c 语言string类用法,C++中的string类用法简介

    本文主要介绍C++中的string类的常见用法. 1. 概述 string是C++标准库的一个重要的部分,主要用于字符串处理.可以使用输入输出流方式直接进行string操作,也可以通过文件等手段进行s ...

  6. ASP.NET2.0中的ClientScriptManager 类用法—如何添加客户端事件!

    在ASP.NET2.0中,ClientScriptManager 类通过键 String 和 Type 唯一地标识脚本.具有相同的键和类型的脚本被视为重复脚本.因此,我们可以使用脚本类型来避免混淆可能 ...

  7. ASP.NET2.0中的ClientScriptManager 类用法—如何添加客户端事件

    在ASP.NET2.0中,ClientScriptManager 类通过键 String 和 Type 唯一地标识脚本.具有相同的键和类型的脚本被视为重复脚本.因此,我们可以使用脚本类型来避免混淆可能 ...

  8. Opencv中的FaceRecognizer类

    随着Opencv库的不断完善,在opencv2.4.2中添加了contrib的相关内容,里面就包括了FaceRecognizer人脸识别类. 这个类的调用比较简单,主要是:训练和预测,分别对应着tra ...

  9. JAVA中的Vector类用法整理

    新的一天,新的知识: 和C语言一样,java中的数组只能保存固定数目的元素,且必须把所有需要的内存单元一次性申请出来. 而不能创建数组再追加数组元素数量.为了解决这个问题,Java中引入了向量类Vec ...

最新文章

  1. CentOS 7更新时出现Multilib version problems
  2. 内蒙古公安原创扫黑除恶主题MV《以警之名》全国首发
  3. 解读main()方法中的String[] args
  4. UDP模式与TCP模式的区别
  5. Android 解析JSON
  6. 如何清除图片下方出现几像素的空白间隙?
  7. /usr/include/openssl/des.h:91:9: error: unknown type name ‘DES_LONG’ DES_LONG deslong[2];
  8. Java基础编程机试题
  9. 环境影响评价知识点整理
  10. go技巧-json转map
  11. 网格搜索算法与K折交叉验证
  12. 选第二大算法(锦标赛算法)
  13. seo优化时网站_选择关键词的方法
  14. 苹果手机怎么在照片上添加文字_要给照片快速添加文字、图框、印章,用这款手机软件比较方便...
  15. convariate shift(协变量 转变)
  16. linux查看某个端口的流量_linux流量查看工具汇总
  17. 2021年R2移动式压力容器充装考试内容及R2移动式压力容器充装模拟考试
  18. 递归 算法 编程技巧
  19. 中国首个中小学人工智能教材出版,在上海、山东发布
  20. 计算机专业班级现状怎么写,计算机班同学的毕业感言范文

热门文章

  1. trap信号捕捉命令介绍与shell结合实战讲解
  2. thinkphp框架开启页面gzip压缩
  3. php顺序、二分查找
  4. 关系数据库的范式和反范式
  5. JSP实现在线调查问卷系统
  6. Uva1595 对称轴
  7. 20180917-1每周例行报告
  8. vijos 1512 SuperBrother打鼹鼠
  9. 一起学Hadoop——Hadoop的前世今生
  10. 动态规划---最长公共子序列