将keras顺序模型转换为张量rt

问题描述 投票:0回答:1

如何将keras顺序模型转换为tensor-rt?我正在进行人脸识别,我已经在人脸编码上使用keras顺序模型创建了模型。现在,我想在jtson xavier上实现它。这是模型架构:

    def Simple_NeuralNet(number_classes):
        model = Sequential()
        model.add(Dense(units=256, activation='relu', input_dim=128))
        model.add(BatchNormalization())
        model.add(Dense(units=1024, activation='relu'))
        model.add(Dropout(0.5))
        model.add(Dense(units=512, activation='relu'))
        model.add(BatchNormalization())
        model.add(Dense(units=number_classes, activation='softmax'))
        return model
python-3.x tensorflow tf.keras tensorrt
1个回答
0
投票

将tf2onnx(https://github.com/onnx/tensorflow-onnx)或keras2onnx(https://github.com/onnx/keras-onnx)检出以将模型转换为ONNX格式。这篇文章中有更多关于转换为ONNX的详细信息:https://stackoverflow.com/a/59793636/10993413

然后您应该可以使用以下方法快速验证模型:

trtexec --onnx=model.onnx

或TensorRT API在TensorRT 6.0(Jetson)中转换模型。

如果使用TensorRT 7.0,请确保将-explicitBatch标志添加到trtexec,如果使用API​​,请添加NetworkDefinitionCreationFlag.EXPLICIT_BATCH:

trtexec --explicitBatch --onnx=model.onnx

TensorRT版本附带了一些用于C ++和Python的示例,这些示例演示了如何使用API​​将ONNX模型转换为TensorRT。样本可以在TRT_RELEASE_DIR /样本中找到。

© www.soinside.com 2019 - 2024. All rights reserved.