スタック・オーバーフロー Asked by marakasu on December 2, 2021
tiny-yolov3の学習済みモデルをkerasモデルに変換しそのモデルをcoremlモデル(mlmodel)に変換をしようとしています。
iosアプリでtiny-yolov3の学習モデルを用いて物体の座標を検出させるアプリを作っています。ですがiosでtiny-yolov3の学習済みモデルを直接使用することはできないのでcoremlモデルに変換する必要があります。そこでtiny-yolov3のモデルをkerasモデル(.h5)までは変換することができるのですがcoremlモデルに変換するところでエラーがでてcoremlモデルを作成することができません。
またkerasモデルへの変換はこのサイトを参考にしました。
https://github.com/qqwweee/keras-yolo3
(不足している情報がありましたらお知らせください。修正させていただきます)
tensorflow 1.14の場合
ValueError: ('Unrecognized keyword arguments:', dict_keys(['ragged']))
tensorflow 1.5.0の場合
ValueError: Keras layer '<class 'tensorflow.python.keras.engine.input_layer.InputLayer'>' not supported.
import coremltools
from tensorflow.keras import models, layers
model = models.load_model('yolo-tiny.h5')
coreml_model = coremltools.converters.keras.convert(model)
coreml_model.save('my_model.mlmodel')
coremlモデルに変換する手法の一つでtiny-yolov3学習モデルをtensorflow(pb)に変換しcoremlモデルに変換する方法を試しましたがtensorflow(pb)に変換するdarkflowがtiny-yolov3に対応していないため断念しました。
参考サイトではtiny-yolov3のモデルをdarkflowを用いて変換するという記述がありますがどうやって対応させたかが不明です。
<https://stackoverflow.com>
環境構築に参考にしたサイトhttps://qiita.com/shu223/items/7679eaeea9c243c80c4d
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP