我有一个问题。python
还有... Opencv
我只是为了尝试这个脚本从 用OpenCV测量图像中物体之间的距离
/Users/Acer/OneDrive/Desktop/contohajaya/distance_between.py
usage: distance_between.py [-h] -i IMAGE -w WIDTH
distance_between.py: error: the following arguments are required: -i/--image, -w/--width
我有 import argparse
如果你有一个解决方案,请写下来雅:)
这不是错误,但预期的结果。
你必须在consoleterminalcmd.exebashetc.中运行代码,并使用参数。
distance_between.py -i path_to_image -w some_width_value
你不能在没有参数的情况下运行它,因为它是没用的。
而且这意味着你不能双击脚本来运行它,因为它将在没有参数的情况下运行。
EDIT:
你可以使用 add_argument( default=... )
当你不在控制台设置参数时,使用默认值 - 即默认值 width
800
ap.add_argument("-w", "--width", type=float, required=True, default=800, help="...")
它可以用于 width
可能经常会需要相同的图像,但总是用相同的图像运行代码会很无聊。
当然,你可以删除所有的 ArgumentParser
并在代码中使用常量值 - 即
args = {"width": 800, "image": "path/to/image.jpg"}
但如果总是为同一个图像运行,那就更无聊了。
如果要使用不同的图像,你必须在代码中改变这个值。
使用 default=...
在 ArgumentParser
它要好得多,因为你可以在没有参数的情况下运行,它会使用默认值,但你仍然可以在控制台中使用不同的参数来运行,而无需更改代码。