お世話になっております。また質問をさせてください。
前回の質問に引き続き、食料品の検品プログラムを作成しています。
検品対象の食料品を画像からピンポイントで取り出すためのプログラムを作成しています。
画像は工場や倉庫内で撮影されたものであり、
人やダンボール箱、コンテナや食品を置いている台などが写り込んでいるため、
その中で対象の食料品だけを抽出したいです。
YOLO v3の転移学習が目的に合致していたので、下記の記事を元に実装を進めて見たのですが、つまづいてしまいました。
<RIGHT CODE様 IT技術Windows 10 で YOLOv3 を自前画像で学習させる(物体検出編)【機械学習】>
https://rightcode.co.jp/blog/information-technology/learn-yolov3-image-windows10-object-detection
※当方Macで作業をしているため環境構築などは別サイトを参照しながら作業しています。
おそらく、
記事記載の通り、何も考えずに、アノテーション・教師画像・学習ファイルリスト について、
keras-yolo3以下のファイルパス(VOCDevlit/VOC2007)を作成して、データを格納しています。
・ アノテーション
keras-yolo3/VOCdevkit/VOC2007/Annotations
・ 教師画像
keras-yolo3/VOCdevkit/VOC2007/JPEGImages
・ 学習ファイルリスト
keras-yolo3/VOCdevkit/VOC2007/ImageSet/Main
データ格納したのち、
クラス定義などやファイル変換など一通りの作業を完了させ、
学習を開始(python train.py)したのですが、下記のエラーが出力され、解消できません。
FileNotFoundError: [Errno 2] No such file or directory: 'IMG_1297'
※存在しないと言われているファイルは、ランダムに読み込みに行く仕様のようで、実行の度に、IMG_1860などのファイル名は変わります。
またこれらのファイルは、上記のパス内にそれぞれ正しく存在していることは確認済みです。
※またアノテーション作成時にファイルの大きさを揃えるのを忘れていたため、ワーニングが出ておりますが、
当問題とは関係ないので、無視してください。
再三確認して、パスの指定ミスなどでは無さそうなのですが、、、
何度やっても、エラーになってしまいます。
大変お手数ですが、対応方法や、そもそもこっちのやり方がいいのでは等ございましたら、
是非ご教示頂けますと嬉しいです。
宜しくお願いいたします。
-Version-
Python 3.7.3
keras 2.4.3
2021-02-14 01:41:11.100994: I tensorflow/compiler/jit/xla_cpu_device.cc:41] Not creating XLA devices, tf_xla_enable_xla_devices not set 2021-02-14 01:41:11.101203: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX2 FMA To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. Create YOLOv3 model with 9 anchors and 3 classes. WARNING:tensorflow:Skipping loading of weights for layer conv2d_58 due to mismatch in shape ((1, 1, 1024, 24) vs (255, 1024, 1, 1)). WARNING:tensorflow:Skipping loading of weights for layer conv2d_58 due to mismatch in shape ((24,) vs (255,)). WARNING:tensorflow:Skipping loading of weights for layer conv2d_66 due to mismatch in shape ((1, 1, 512, 24) vs (255, 512, 1, 1)). WARNING:tensorflow:Skipping loading of weights for layer conv2d_66 due to mismatch in shape ((24,) vs (255,)). WARNING:tensorflow:Skipping loading of weights for layer conv2d_74 due to mismatch in shape ((1, 1, 256, 24) vs (255, 256, 1, 1)). WARNING:tensorflow:Skipping loading of weights for layer conv2d_74 due to mismatch in shape ((24,) vs (255,)). Load weights model_data/yolo_weights.h5. Freeze the first 249 layers of total 252 layers. 2021-02-14 01:41:13.877343: I tensorflow/core/profiler/lib/profiler_session.cc:136] Profiler session initializing. 2021-02-14 01:41:13.877413: I tensorflow/core/profiler/lib/profiler_session.cc:155] Profiler session started. 2021-02-14 01:41:13.877493: I tensorflow/core/profiler/lib/profiler_session.cc:172] Profiler session tear down. WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen. Train on 25 samples, val on 2 samples, with batch size 32. /Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py:1844: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators. warnings.warn('`Model.fit_generator` is deprecated and ' Traceback (most recent call last): File "train.py", line 190, in <module> _main() File "train.py", line 65, in _main callbacks=[logging, checkpoint]) File "/Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py", line 1861, in fit_generator initial_epoch=initial_epoch) File "/Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/training.py", line 1064, in fit steps_per_execution=self._steps_per_execution) File "/Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/data_adapter.py", line 1112, in __init__ model=model) File "/Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/data_adapter.py", line 779, in __init__ peek, x = self._peek_and_restore(x) File "/Users/matt/anaconda3/lib/python3.7/site-packages/tensorflow/python/keras/engine/data_adapter.py", line 836, in _peek_and_restore peek = next(x) File "train.py", line 175, in data_generator image, box = get_random_data(annotation_lines[i], input_shape, random=True) File "/Users/matt/Document/keras-yolo3/yolo3/utils.py", line 39, in get_random_data image = Image.open(line[0]) File "/Users/matt/anaconda3/lib/python3.7/site-packages/PIL/Image.py", line 2634, in open fp = builtins.open(filename, "rb") FileNotFoundError: [Errno 2] No such file or directory: 'IMG_1860'
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。