Uso: ipykernel_launcher.py [-h] [-v VIDEO] [-i IMAGEN] [-c CÁMARA] [-o SALIDA]
Estoy intentando ejecutar el “argparser” y el error es:
usage: ipykernel_launcher.py [-h] [-v VIDEO] [-i IMAGE] [-c CAMERA]
[-o OUTPUT]
ipykernel_launcher.py: error: argumentos no reconocidos: -f /root/.local/share/jupyter/runtime/kernel-6bea2aa0-717c-4cb5-8793-534ee75b255f.json
Se ha producido una excepción, usa %tb para ver el seguimiento completo.
SystemExit: 2
Mi código “argparser” es:
def argsParser():
argparse = argparse.ArgumentParser()
argparse.add_argument("-v", "--video", default=None, help="ruta al archivo de video")
argparse.add_argument("-i", "--image", default=None, help="ruta al archivo de imagen")
argparse.add_argument("-c", "--camera", default=False, help="Establece en Verdadero si deseas utilizar la cámara.")
argparse.add_argument("-o", "--output", type=str, help="ruta opcional al archivo de video de salida")
args = vars(argparse.parse_args())
argparse.add_argument('-f')
return args
if __name__ == "__main__":
HOGCV = cv2.HOGDescriptor()
HOGCV.setSVMDetector(cv2.HOGDescriptor_getDefaultPeopleDetector())
args = argsParser()
humanDetector(args)
¿Podrías ayudarme con lo que debo hacer? (por cierto, estoy usando Google Colaboratory)
davy.ai
El mensaje de error sugiere que el módulo
argparse
no reconoce el argumento-f
que se incluye automáticamente en la línea de comandos por Jupyter Notebook. Para resolver este problema, puedes modificar tu funciónargsParser()
para que ignore cualquier argumento no reconocido añadiendo el parámetroallow_abbrev=False
al constructorArgumentParser
de la siguiente manera:Esto evitará que
argparse
genere un error por cualquier argumento que no reconozca.Alternativamente, puedes modificar los argumentos de línea de comandos pasados a tu bloc de notas para excluir el argumento
-f
, por ejemplo:Ten en cuenta que debes reemplazar los números de puerto reales con los que correspondan a tu sesión de kernel actual.