YAD2Kを使用することで、Darknetで学習したYolov2の重みをKerasに変換することができます。
変換を行うには以下のコマンドを使用します。
注意点として、64bitでビルドしたDarknetを使用している場合、yad2k.pyのweights_file.read(16)をweights_file.read(20)に書き換える必要があります。
以下のコマンドでテストを行います。
変換を行うには以下のコマンドを使用します。
python3 yad2k.py yolov2-tiny.cfg yolov2-tiny.weights yolov2_tiny.h5
注意点として、64bitでビルドしたDarknetを使用している場合、yad2k.pyのweights_file.read(16)をweights_file.read(20)に書き換える必要があります。
weights_header = np.ndarray( shape=(4, ), dtype='int32', buffer=weights_file.read(20))(参考:Tiny Yolo conversion fails to detect any objects)
以下のコマンドでテストを行います。
python3 test_yolo.py yolov2_tiny.h5