Toybrick

楼主: jefferyzhang

人工智能开发系列(4) 通过《人脸识别》学习从Keras到rknn

puyanan

中级会员

积分
206
发表于 2019-7-23 16:29:20 | 显示全部楼层
jefferyzhang 发表于 2019-6-15 15:32
建议你别等,可以自己动手做起来。
因为我后面深入研究发现facenet的损失很难复现出论文的效果,真正使用 ...

我想把facenet的模型pb模型转换成rknn模型,在加载tensorflow模型时出错。
测试代码如下:
-----------------------------------------------------------------------------
from rknn.api import RKNN
INPUT_SIZE = 160

if __name__ == '__main__':
    # Create RKNN object
    rknn = RKNN()

    # Config for Model Input PreProcess
    rknn.config(channel_mean_value='128 128 128 128', reorder_channel='0 1 2')
    print('config done')

    #load tensorflow model
    print('--> Loading model')
    rknn.load_tensorflow(tf_pb='./20180402-114759.pb',
                         inputs=['input'],
                         outputs=['embeddings'],
                         input_size_list=[[INPUT_SIZE, INPUT_SIZE, 3]])                  
    print('done')




出错信息是这样:
-----------------------------------------------------------------------------
pu@pu-vm:~/RKNN/demo/facenet$ python3 test1.py
config done
--> Loading model
W Not match node embeddings/Rsqrt Rsqrt
E Catch exception when loading tensorflow model: ./20180402-114759.pb!
T Traceback (most recent call last):
T   File "rknn/api/rknn_base.py", line 185, in rknn.api.rknn_base.RKNNBase.load_tensorflow
T   File "rknn/base/RKNNlib/converter/convert_tf.py", line 589, in rknn.base.RKNNlib.converter.convert_tf.convert_tf.match_paragraph_and_param
T   File "rknn/base/RKNNlib/converter/convert_tf.py", line 488, in rknn.base.RKNNlib.converter.convert_tf.convert_tf._tf_push_ready_node
T TypeError: 'NoneType' object is not iterable
done
pu@pu-vm:~/RKNN/demo/facenet$


inputs 和 outputs 节点名字,我用tensorboard打开看,就是“input”  和 “embeddings” 。
请问是哪里出了问题呢?
回复

使用道具 举报

jefferyzhang

版主

积分
12844
 楼主| 发表于 2019-7-23 16:40:05 | 显示全部楼层
puyanan 发表于 2019-7-23 16:29
我想把facenet的模型pb模型转换成rknn模型,在加载tensorflow模型时出错。
测试代码如下:
------------- ...

rknn = RKNN(verbose=True)
打开verbose看下,不然log看不出什么,单独发一个贴问,不用回在这下头。
你回这帖子只有我看得到,真正懂的同事看不到问我也没办法。。。
回复

使用道具 举报

puyanan

中级会员

积分
206
发表于 2019-7-23 16:57:48 | 显示全部楼层
jefferyzhang 发表于 2019-7-23 16:40
rknn = RKNN(verbose=True)
打开verbose看下,不然log看不出什么,单独发一个贴问,不用回在这下头。
你 ...

好的。先谢过版主的回复
回复

使用道具 举报

puyanan

中级会员

积分
206
发表于 2019-7-23 17:56:10 | 显示全部楼层
jefferyzhang 发表于 2019-7-23 16:40
rknn = RKNN(verbose=True)
打开verbose看下,不然log看不出什么,单独发一个贴问,不用回在这下头。
你 ...

根据版主提示,看了详细的运行日志,猜测了出错原因("embeddings"既是输出node的名字,也是一个模块的名字,该模块内有多个中间节点,比如“embeddings/Rsqrt”、“embeddings/Sum”,    build过程中会一一比对这些节点,然后出错,似乎是因为“embeddings/Rsqrt” 与 “Rsqrt”不匹配)。理解的是否正确,还需要看后面能否顺利运行facenet。等我跑完了,就总结一下这个问题。(要我把facenet改成RK平台能跑的代码,还困难重重,水平有限 要是能够给出demo就多谢多谢啦
回复

使用道具 举报

jfangah

中级会员

积分
214
发表于 2020-3-9 11:34:19 | 显示全部楼层
请问可以提供训练好的facenet的pb模型或者rknn模型进行测试吗?
回复

使用道具 举报

jefferyzhang

版主

积分
12844
 楼主| 发表于 2020-3-9 12:02:01 | 显示全部楼层
jfangah 发表于 2020-3-9 11:34
请问可以提供训练好的facenet的pb模型或者rknn模型进行测试吗?

这年头谁还用facenet啊?
有需要的话自己可以从facenet官方预训练模型转rknn。
回复

使用道具 举报

Gang

注册会员

积分
91
发表于 2021-1-20 16:49:34 | 显示全部楼层
jefferyzhang 发表于 2020-3-9 12:02
这年头谁还用facenet啊?
有需要的话自己可以从facenet官方预训练模型转rknn。 ...

版主,现在流行什么模型啊?
回复

使用道具 举报

sunkai

中级会员

积分
310
发表于 2021-3-26 10:40:10 | 显示全部楼层
我看了教程的源码,是只有创建模型训练部分的吗,转换后的处理是没有的吧,不完整的
回复

使用道具 举报

jefferyzhang

版主

积分
12844
 楼主| 发表于 2021-3-26 10:49:55 | 显示全部楼层
sunkai 发表于 2021-3-26 10:40
我看了教程的源码,是只有创建模型训练部分的吗,转换后的处理是没有的吧,不完整的 ...

教程而已 - -# 训练也要自己动手的。
而且这个模型现在没人用的额。
还有rknn 1.6已经不需要把keras转pb再转rknn了,新版本rknn直接可以通过h5转rknn。
这个教程已经过时了
回复

使用道具 举报

sunkai

中级会员

积分
310
发表于 2021-3-27 20:27:13 | 显示全部楼层
jefferyzhang 发表于 2021-3-26 10:49
教程而已 - -# 训练也要自己动手的。
而且这个模型现在没人用的额。
还有rknn 1.6已经不需要把keras转pb ...

ok,现在facenet的模型可以直接转了吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表