原文链接:https://blog.csdn.net/qq_36653505/article/details/83788460
argparse模块
1.使用步骤:
(1)import argparse 首先导入模块
(2)parser = argparse.ArgumentParser() 创建一个解析对象
(3)parser.add_argument() 向该对象中添加你要关注的命令行参数和选项
(4)parser.parse_args() 进行解析
2.参数含义
(1)help()函数:是查看函数或模块用途的详细说明
(2)action:运行到该变量时该变量有参数就设置为什么值
例:action=‘store_true’,只要运行时该变量有传参就将该变量设为True
store 保存参数值,可能会先将参数值转换成另一个数据类型。若没有显式指定动作,则默认为该动作。
store_const 保存一个被定义为参数规格一部分的值,而不是一个来自参数解析而来的值。这通常用于实现非布尔值的命令行标记。
store_ture/store_false 保存相应的布尔值。这两个动作被用于实现布尔开关。
append 将值保存到一个列表中。若参数重复出现,则保存多个值。
append_const 将一个定义在参数规格中的值保存到一个列表中。
version 打印关于程序的版本信息,然后退出
(3)nargs:类似于正则符
parser.add_argument('num', nargs=2, type=int)
表示脚本可以读入两个整数赋予num键(此时的值为2个整数的数组)。nargs还可以’*‘用来表示如果有该位置参数输入的话,之后所有的输入都将作为该位置参数的值;‘+’表示读取至少1个该位置参数。’?'表示该位置参数要么没有,要么就只要一个。
(4)required:表示它前面的参数是必需的
例:
parser.add_argument('--verbose', required=True, type=int)
required标签就是说–verbose参数是必需的,并且类型为int,输入别的类型会报错
(5)const:A constant value required by some action and nargs selections
opencv
opencv中读取图片用cv.imread()进行读取,默认读取三通道图片。
Img读取图片通过Image.open()读取,图片原是几通道读取后也为几通道。Img读图片的大小是图片的(width, height);而skimage的是(height,width, channel)