ndl-lab / ndlocr_cli

NDLOCRアプリケーションのリポジトリ(ソースコードを含む)
Creative Commons Attribution 4.0 International
358 stars 23 forks source link

submoduleのmodelが見つからないと言われる #25

Closed junichiyamasaki closed 1 year ago

junichiyamasaki commented 1 year ago

glt cloneした後、

cd ndlocr_cli
docker\dockerbuild.bat

では何も動かなかったので、過去のissuesを参考にして docker build -t ocr-v2-cli-py37 -f docker\Dockerfile . し、 その後は docker run --gpus all -d --rm --name ocr_cli_runner -v /home/user/tmpdir:/root/tmpdir/img -i ocr-v2-cli-py37:latest で無事起動した(/home/user/tempdirは適宜変えてますが)ので中に入ってinferしようとしたのですが、以下のようなエラーが出ています。

python main.py infer /root/tmpdir/img/test.png /root/tmpdir/img/output -p 3 -s f
start inference !
input_root : /root/tmpdir/img/test.png
output_root : /root/tmpdir/img/output
config_file : config.yml
[WARNING] Directory /root/tmpdir/img/output already exist.
[WARNING] Directory is changed to /root/tmpdir/img/output_20230829113828.
/usr/local/lib/python3.8/dist-packages/pytorch_lightning/utilities/parsing.py:261: UserWarning: Attribute 'net' is an instance of `nn.Module` and is already saved during checkpointing. It is recommended to ignore them using `self.save_hyperparameters(ignore=['net'])`.  rank_zero_warn(
Logger config is empty.
Traceback (most recent call last):
  File "main.py", line 142, in <module>
    main()
  File "main.py", line 138, in main
    cmd(obj={})
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "main.py", line 75, in infer
    inferrer = OcrInferrer(infer_cfg)
  File "/root/ocr_cli/cli/core/inference.py", line 60, in __init__
    self.proc_list = self._create_proc_list(cfg)
  File "/root/ocr_cli/cli/core/inference.py", line 508, in _create_proc_list
    proc_list.append(procs.LineAttributeProcess(cfg, 'ex3'))
  File "/root/ocr_cli/cli/procs/line_attribute.py", line 54, in __init__
    self._object_dict = create_object_dict(self._hydra_cfg, title_model_path, author_model_path)
  File "/root/ocr_cli/submodules/text_recognition_lightning/src/tasks/infer_rf_task.py", line 26, in create_object_dict
    trainer_title = joblib.load(pkl_path_title)
  File "/usr/local/lib/python3.8/dist-packages/joblib/numpy_pickle.py", line 650, in load
    with open(filename, 'rb') as f:
FileNotFoundError: [Errno 2] No such file or directory: 'submodules/text_recognition_lightning/models/rf_title/model.pkl'

git cloneした際にもsubmoduleをDLしている様子はあり、buildでエラーも出ていないので、原因がわからずにいます。submodules/text_recognition_lightningの中を見てみると、画像のようにmodelsというフォルダ自体がないようでした。

Screen Shot 2023-08-29 at 11 46 03

何か解決策ご存じでしょうか?

環境としては windows 10.0.19045 Nvidia ドライバ 516.94 Quadro RTX 5000 CUDA 11.7 です。

ndl-lab-staff commented 1 year ago

申し訳ございません。 Windows 用のdockerbuild.bat及びrun_docker.batにつきまして、配布が漏れておりました。 dockerディレクトリ内に追加しましたのでご確認いただけますでしょうか。 https://github.com/ndl-lab/ndlocr_cli/blob/master/docker/dockerbuild.bat

https://github.com/ndl-lab/ndlocr_cli/blob/master/docker/run_docker.bat

cd ndlocr_cli docker\dockerbuild.bat 及び cd ndlocr_cli docker\run_docker.bat を実行できるようになっているかと存じます。 どうぞよろしくお願い致します。

junichiyamasaki commented 1 year ago

最新版をpullし、batを使うようにしたら無事解決しました。大変ありがとうございました。