运行OCR训练代码提示缺少必填参数-a/--az、-m/--model如何解决
OCR训练脚本必填参数报错解决方案
报错产生原因
代码中通过argparse模块定义了-a/--az(A-Z数据集路径)、-m/--model(训练模型输出路径)两个必填参数,运行脚本时未传入这两个参数的有效值,触发参数校验失败报错。
解决方法
方案1:运行时传入对应参数(符合原代码设计逻辑,推荐)
命令行运行场景
执行脚本时在命令后补充参数取值,示例命令:
python <你的训练脚本文件名>.py --az <A-Z数据集本地完整路径> --model <训练后模型保存的完整路径>
实际使用示例:
python train_ocr.py --az C:/datasets/a_z_handwritten_data.csv --model C:/projects/ocr_app/handwritten_ocr.h5
IDE运行场景(如PyCharm、VSCode)
找到对应脚本的运行配置入口,在「脚本参数/Parameters」输入栏中填入以下内容即可:
--az <A-Z数据集本地完整路径> --model <训练后模型保存的完整路径>
方案2:给参数添加默认值(适合本地反复调试场景)
直接修改argparse的参数定义代码,给两个必填参数配置默认值,修改后的参考代码如下:
ap = argparse.ArgumentParser() # 补充default值,把required改为False即可免传参数 ap.add_argument("-a", "--az", required=False, default="替换为你的A-Z数据集本地完整路径", help="path to A-Z dataset") ap.add_argument("-m", "--model", type=str, required=False, default="替换为训练模型的输出完整路径", help="path to output trained handwritten recognition model") ap.add_argument("-p", "--plot", type=str, default="C:/Users/berna/Desktop/Programming/AI_ML_DL/Projects/OCRApp_phototext/plot.png", help="path to output training history file") args = vars(ap.parse_args())
修改后直接运行脚本即可,不需要额外传参。
内容的提问来源于stack exchange,提问作者Bernardo Olisan
相关产品推荐
相关产品推荐

