当前位置: 首页 > 知识库问答 >
问题:

向tensorflow lite添加BATCH\u TO_SPACE\u ND和SPACE\u TO_BATCH\u ND

司寇高洁
2023-03-14

NNAPI 1.1已经支持SPACE_TO_BATCH_ND和BATCH_TO_SPACE_ND操作,但是当前的TFLite代码还没有实现。参见:https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/nnapi_delegate.cc#L607

我试着这样添加它们:

case tflite::BuiltinOperator_SPACE_TO_BATCH_ND:
   nn_op_type = ANEURALNETWORKS_SPACE_TO_BATCH_ND;
   break;
case tflite::BuiltinOperator_BATCH_TO_SPACE_ND:
   nn_op_type = ANEURALNETWORKS_BATCH_TO_SPACE_ND;
   break;

但它不起作用,当我在android设备上运行它时,出现了一条错误消息:E/Utils:BATCH\u TO\u SPACE\ND操作的输入操作数(3,预期为2)或输出操作数(1,预期为1)的数量无效

如何将这些操作正确地添加到tensorflow lite?谢谢

共有2个答案

华知
2023-03-14

前面的答案是正确的。当时NNAPI不支持作物,所以代码只委托零作物的运算符。

孟浩然
2023-03-14

找到了一个答案,要做到这一点,你必须花一些时间理解他们的代码架构,然后尝试将tftensor“翻译”为NNAPI:

例如:ANEURALNETWORKS\u BATCH\u TO\u SPACE\u ND(NNAPI)需要2个参数(输入张量,block\u形状),而TFLite需要3个参数(输入张量,block\u形状,crops),因此需要处理它以绕过错误。

 类似资料:
  • 问题内容: 我们有一个简单的项目,我们从套接字读取数据,并希望用即将到来的数据填充表,但是我们找不到找到将行添加到尚未创建的对象的方法,只能在以下位置找到添加行的方法:表的创建时间。 是否可以向中动态添加行,或者有更好的替代对象来处理这种显示数据的方式? 编辑 :非常感谢您的回答。 他们三个看起来都很有前途,但是我只选择一个,我认为最好的就是纪尧姆的。 问题答案: 您应该创建一个自定义。A 实际上

  • 问题内容: 我有一个运行良好的Django应用程序。我正在添加REST服务。我正在寻找有关REST策略的其他信息。 以下是一些我正在绞尽脑汁的事例。 现在,我正在使用带有大量补丁的Django-REST API。 我正在考虑退一步,而只是在Django中编写返回JSON结果的视图函数。 我还可以看到在Apache中过滤REST请求并将它们路由到一个单独的非Django服务器实例。 请为每个答案指定

  • 我创建了一个JPanel,上面有我需要的所有JRadioButtons(称为PortSettings)。我还有一个按钮,叫做端口设置,当用户单击该按钮时,我需要JPanel上来显示单选按钮。我尝试将JPanel添加到actionlistener中,但没有效果。我的代码在下面。除了portsettings按钮之外,我已经从其他按钮中删除了所有其他ActionListener。如果这个问题让人困惑,我

  • 我正在尝试将内容添加到主面板,并将主面板添加到主滚动窗格。但是,将显示一个空对话框。 重要提示:它必须用JPanel和JScrollPane实现。。。 谢谢各位

  • 问题内容: 是否可以在向其添加一些参数数据的同时将请求转发给另一个控制器?我尝试添加到ModelMap中,但是它似乎不存在问题。我正在做类似的事情: 我能想到的唯一其他方法是将参数放在会话上,然后将其弹出目标控制器。 问题答案: 最简单的方法是将数据添加到请求中。 由于这是转发,因此将相同的请求传递到服务器内的不同处理程序。 作为示例,让我们从两个控制器的简单设置开始,一个转发到另一个: 添加数据

  • 问题内容: 我想在JAR文件中包含资源文件(图像,文本文件…)。我将资产文件夹添加到类路径中,因此当我在netBeans中运行该程序时,程序运行正常。 但是,如果我构建项目,则会收到错误消息: 这是正常错误吗? 所以我试图像这样手动添加资产: 但这行不通。我有事吗?对不起,我的英语,谢谢您的帮助。 问题答案: 不要将文件放在桌面上。转到项目的Source文件夹,然后将其复制到该文件夹​​中。在Ne