onnx2tf 1.29.9__tar.gz → 1.29.10__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. {onnx2tf-1.29.9/onnx2tf.egg-info → onnx2tf-1.29.10}/PKG-INFO +6 -6
  2. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/README.md +5 -5
  3. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/__init__.py +1 -1
  4. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/onnx2tf.py +83 -73
  5. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/If.py +4 -2
  6. onnx2tf-1.29.10/onnx2tf/ops/Loop.py +392 -0
  7. onnx2tf-1.29.10/onnx2tf/ops/LpPool.py +296 -0
  8. onnx2tf-1.29.10/onnx2tf/ops/MaxRoiPool.py +236 -0
  9. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/common_functions.py +3 -0
  10. {onnx2tf-1.29.9 → onnx2tf-1.29.10/onnx2tf.egg-info}/PKG-INFO +6 -6
  11. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf.egg-info/SOURCES.txt +3 -2
  12. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/pyproject.toml +1 -1
  13. onnx2tf-1.29.9/onnx2tf/ops/_Loop.py +0 -306
  14. onnx2tf-1.29.9/onnx2tf/ops/__Loop.py +0 -509
  15. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/LICENSE +0 -0
  16. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/LICENSE_onnx-tensorflow +0 -0
  17. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/__main__.py +0 -0
  18. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Abs.py +0 -0
  19. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Acos.py +0 -0
  20. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Acosh.py +0 -0
  21. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Add.py +0 -0
  22. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/AffineGrid.py +0 -0
  23. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/And.py +0 -0
  24. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ArgMax.py +0 -0
  25. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ArgMin.py +0 -0
  26. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Asin.py +0 -0
  27. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Asinh.py +0 -0
  28. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Atan.py +0 -0
  29. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Atanh.py +0 -0
  30. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Attention.py +0 -0
  31. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/AveragePool.py +0 -0
  32. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BatchNormalization.py +0 -0
  33. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Bernoulli.py +0 -0
  34. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BitShift.py +0 -0
  35. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BitwiseAnd.py +0 -0
  36. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BitwiseNot.py +0 -0
  37. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BitwiseOr.py +0 -0
  38. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BitwiseXor.py +0 -0
  39. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/BlackmanWindow.py +0 -0
  40. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Cast.py +0 -0
  41. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Ceil.py +0 -0
  42. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Celu.py +0 -0
  43. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Clip.py +0 -0
  44. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Col2Im.py +0 -0
  45. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Compress.py +0 -0
  46. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Concat.py +0 -0
  47. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ConcatFromSequence.py +0 -0
  48. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Constant.py +0 -0
  49. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ConstantOfShape.py +0 -0
  50. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Conv.py +0 -0
  51. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ConvInteger.py +0 -0
  52. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ConvTranspose.py +0 -0
  53. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Cos.py +0 -0
  54. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Cosh.py +0 -0
  55. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/CumProd.py +0 -0
  56. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/CumSum.py +0 -0
  57. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/DepthToSpace.py +0 -0
  58. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/DequantizeLinear.py +0 -0
  59. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Det.py +0 -0
  60. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Div.py +0 -0
  61. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Dropout.py +0 -0
  62. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/DynamicQuantizeLinear.py +0 -0
  63. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Einsum.py +0 -0
  64. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Elu.py +0 -0
  65. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Equal.py +0 -0
  66. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Erf.py +0 -0
  67. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Exp.py +0 -0
  68. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Expand.py +0 -0
  69. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/EyeLike.py +0 -0
  70. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Flatten.py +0 -0
  71. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Floor.py +0 -0
  72. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/FusedConv.py +0 -0
  73. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GRU.py +0 -0
  74. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Gather.py +0 -0
  75. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GatherElements.py +0 -0
  76. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GatherND.py +0 -0
  77. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Gelu.py +0 -0
  78. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Gemm.py +0 -0
  79. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GlobalAveragePool.py +0 -0
  80. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GlobalLpPool.py +0 -0
  81. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GlobalMaxPool.py +0 -0
  82. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Greater.py +0 -0
  83. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GreaterOrEqual.py +0 -0
  84. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GridSample.py +0 -0
  85. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/GroupNorm.py +0 -0
  86. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/HammingWindow.py +0 -0
  87. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/HannWindow.py +0 -0
  88. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/HardSigmoid.py +0 -0
  89. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/HardSwish.py +0 -0
  90. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Hardmax.py +0 -0
  91. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Identity.py +0 -0
  92. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Input.py +0 -0
  93. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/InstanceNormalization.py +0 -0
  94. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Inverse.py +0 -0
  95. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/IsInf.py +0 -0
  96. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/IsNaN.py +0 -0
  97. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LRN.py +0 -0
  98. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LSTM.py +0 -0
  99. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LayerNormalization.py +0 -0
  100. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LeakyRelu.py +0 -0
  101. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Less.py +0 -0
  102. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LessOrEqual.py +0 -0
  103. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Log.py +0 -0
  104. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LogSoftmax.py +0 -0
  105. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/LpNormalization.py +0 -0
  106. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MatMul.py +0 -0
  107. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MatMulInteger.py +0 -0
  108. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Max.py +0 -0
  109. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MaxPool.py +0 -0
  110. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MaxUnpool.py +0 -0
  111. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Mean.py +0 -0
  112. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MeanVarianceNormalization.py +0 -0
  113. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/MelWeightMatrix.py +0 -0
  114. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Min.py +0 -0
  115. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Mish.py +0 -0
  116. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Mod.py +0 -0
  117. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Mul.py +0 -0
  118. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Multinomial.py +0 -0
  119. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Neg.py +0 -0
  120. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/NonMaxSuppression.py +0 -0
  121. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/NonZero.py +0 -0
  122. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Not.py +0 -0
  123. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/OneHot.py +0 -0
  124. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/OptionalGetElement.py +0 -0
  125. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/OptionalHasElement.py +0 -0
  126. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Or.py +0 -0
  127. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/PRelu.py +0 -0
  128. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Pad.py +0 -0
  129. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Pow.py +0 -0
  130. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearAdd.py +0 -0
  131. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearConcat.py +0 -0
  132. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearConv.py +0 -0
  133. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearLeakyRelu.py +0 -0
  134. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearMatMul.py +0 -0
  135. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearMul.py +0 -0
  136. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearSigmoid.py +0 -0
  137. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QLinearSoftmax.py +0 -0
  138. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/QuantizeLinear.py +0 -0
  139. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RNN.py +0 -0
  140. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RandomNormal.py +0 -0
  141. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RandomNormalLike.py +0 -0
  142. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RandomUniform.py +0 -0
  143. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RandomUniformLike.py +0 -0
  144. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Range.py +0 -0
  145. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Reciprocal.py +0 -0
  146. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceL1.py +0 -0
  147. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceL2.py +0 -0
  148. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceLogSum.py +0 -0
  149. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceLogSumExp.py +0 -0
  150. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceMax.py +0 -0
  151. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceMean.py +0 -0
  152. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceMin.py +0 -0
  153. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceProd.py +0 -0
  154. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceSum.py +0 -0
  155. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReduceSumSquare.py +0 -0
  156. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Relu.py +0 -0
  157. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Reshape.py +0 -0
  158. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Resize.py +0 -0
  159. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ReverseSequence.py +0 -0
  160. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/RoiAlign.py +0 -0
  161. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Round.py +0 -0
  162. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/STFT.py +0 -0
  163. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ScaleAndTranslate.py +0 -0
  164. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Scatter.py +0 -0
  165. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ScatterElements.py +0 -0
  166. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ScatterND.py +0 -0
  167. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Selu.py +0 -0
  168. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceAt.py +0 -0
  169. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceConstruct.py +0 -0
  170. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceEmpty.py +0 -0
  171. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceErase.py +0 -0
  172. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceInsert.py +0 -0
  173. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SequenceLength.py +0 -0
  174. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Shape.py +0 -0
  175. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Shrink.py +0 -0
  176. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sigmoid.py +0 -0
  177. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sign.py +0 -0
  178. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sin.py +0 -0
  179. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sinh.py +0 -0
  180. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Size.py +0 -0
  181. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Slice.py +0 -0
  182. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Softmax.py +0 -0
  183. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Softplus.py +0 -0
  184. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Softsign.py +0 -0
  185. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SpaceToDepth.py +0 -0
  186. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Split.py +0 -0
  187. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/SplitToSequence.py +0 -0
  188. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sqrt.py +0 -0
  189. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Squeeze.py +0 -0
  190. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/StringNormalizer.py +0 -0
  191. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sub.py +0 -0
  192. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Sum.py +0 -0
  193. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Tan.py +0 -0
  194. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Tanh.py +0 -0
  195. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/ThresholdedRelu.py +0 -0
  196. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Tile.py +0 -0
  197. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/TopK.py +0 -0
  198. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Transpose.py +0 -0
  199. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Trilu.py +0 -0
  200. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Unique.py +0 -0
  201. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Unsqueeze.py +0 -0
  202. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Upsample.py +0 -0
  203. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Where.py +0 -0
  204. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/Xor.py +0 -0
  205. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/ops/__init__.py +0 -0
  206. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/__init__.py +0 -0
  207. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/enums.py +0 -0
  208. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/iterative_json_optimizer.py +0 -0
  209. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/json_auto_generator.py +0 -0
  210. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf/utils/logging.py +0 -0
  211. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf.egg-info/dependency_links.txt +0 -0
  212. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf.egg-info/requires.txt +0 -0
  213. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/onnx2tf.egg-info/top_level.txt +0 -0
  214. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/setup.cfg +0 -0
  215. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/setup.py +0 -0
  216. {onnx2tf-1.29.9 → onnx2tf-1.29.10}/tests/test_model_convert.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: onnx2tf
3
- Version: 1.29.9
3
+ Version: 1.29.10
4
4
  Summary: Self-Created Tools to convert ONNX files (NCHW) to TensorFlow/TFLite/Keras format (NHWC).
5
5
  Home-page: https://github.com/PINTO0309/onnx2tf
6
6
  Author: Katsuya Hyodo
@@ -182,16 +182,16 @@ https://github.com/PINTO0309/onnx2tf/wiki/model_status
182
182
  |Less|:heavy_check_mark:|
183
183
  |Log|:heavy_check_mark:|
184
184
  |LogSoftmax|:heavy_check_mark:|
185
- |Loop|**Help wanted**|
185
+ |Loop|:heavy_check_mark:|
186
186
  |LpNormalization|:heavy_check_mark:|
187
- |LpPool|**Help wanted**|
187
+ |LpPool|:heavy_check_mark:|
188
188
  |LRN|:heavy_check_mark:|
189
189
  |LSTM|:heavy_check_mark:|
190
190
  |MatMul|:heavy_check_mark:|
191
191
  |MatMulInteger|:heavy_check_mark:|
192
192
  |MaxPool|:heavy_check_mark:|
193
193
  |Max|:heavy_check_mark:|
194
- |MaxRoiPool|**Help wanted**|
194
+ |MaxRoiPool|:heavy_check_mark:|
195
195
  |MaxUnpool|:heavy_check_mark:|
196
196
  |Mean|:heavy_check_mark:|
197
197
  |MeanVarianceNormalization|:heavy_check_mark:|
@@ -359,7 +359,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
359
359
  docker run --rm -it \
360
360
  -v `pwd`:/workdir \
361
361
  -w /workdir \
362
- ghcr.io/pinto0309/onnx2tf:1.29.9
362
+ ghcr.io/pinto0309/onnx2tf:1.29.10
363
363
 
364
364
  or
365
365
 
@@ -367,7 +367,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
367
367
  docker run --rm -it \
368
368
  -v `pwd`:/workdir \
369
369
  -w /workdir \
370
- docker.io/pinto0309/onnx2tf:1.29.9
370
+ docker.io/pinto0309/onnx2tf:1.29.10
371
371
 
372
372
  or
373
373
 
@@ -145,16 +145,16 @@ https://github.com/PINTO0309/onnx2tf/wiki/model_status
145
145
  |Less|:heavy_check_mark:|
146
146
  |Log|:heavy_check_mark:|
147
147
  |LogSoftmax|:heavy_check_mark:|
148
- |Loop|**Help wanted**|
148
+ |Loop|:heavy_check_mark:|
149
149
  |LpNormalization|:heavy_check_mark:|
150
- |LpPool|**Help wanted**|
150
+ |LpPool|:heavy_check_mark:|
151
151
  |LRN|:heavy_check_mark:|
152
152
  |LSTM|:heavy_check_mark:|
153
153
  |MatMul|:heavy_check_mark:|
154
154
  |MatMulInteger|:heavy_check_mark:|
155
155
  |MaxPool|:heavy_check_mark:|
156
156
  |Max|:heavy_check_mark:|
157
- |MaxRoiPool|**Help wanted**|
157
+ |MaxRoiPool|:heavy_check_mark:|
158
158
  |MaxUnpool|:heavy_check_mark:|
159
159
  |Mean|:heavy_check_mark:|
160
160
  |MeanVarianceNormalization|:heavy_check_mark:|
@@ -322,7 +322,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
322
322
  docker run --rm -it \
323
323
  -v `pwd`:/workdir \
324
324
  -w /workdir \
325
- ghcr.io/pinto0309/onnx2tf:1.29.9
325
+ ghcr.io/pinto0309/onnx2tf:1.29.10
326
326
 
327
327
  or
328
328
 
@@ -330,7 +330,7 @@ Video speed is adjusted approximately 50 times slower than actual speed.
330
330
  docker run --rm -it \
331
331
  -v `pwd`:/workdir \
332
332
  -w /workdir \
333
- docker.io/pinto0309/onnx2tf:1.29.9
333
+ docker.io/pinto0309/onnx2tf:1.29.10
334
334
 
335
335
  or
336
336
 
@@ -1,3 +1,3 @@
1
1
  from onnx2tf.onnx2tf import convert, main
2
2
 
3
- __version__ = '1.29.9'
3
+ __version__ = '1.29.10'
@@ -1467,82 +1467,89 @@ def convert(
1467
1467
  SIGNATURE_KEY = 'serving_default'
1468
1468
 
1469
1469
  # saved_model
1470
+ saved_model_log_level = get_log_level()
1470
1471
  try:
1471
- # concrete_func
1472
- info(Color.REVERSE(f'saved_model output started'), '=' * 58)
1473
- if not output_signaturedefs and not output_integer_quantized_tflite:
1474
- tf.saved_model.save(model, output_folder_path)
1475
- else:
1476
- export_archive = tf_keras.export.ExportArchive()
1477
- export_archive.add_endpoint(
1478
- name=SIGNATURE_KEY,
1479
- fn=lambda *inputs : model(inputs),
1480
- input_signature=[tf.TensorSpec(tensor.shape, tensor.dtype, tensor.name) for tensor in model.inputs],
1481
- )
1482
- export_archive.write_out(output_folder_path)
1483
- info(Color.GREEN(f'saved_model output complete!'))
1484
- except TypeError as e:
1485
- # Switch to .pb
1486
- info(Color.GREEN(f'Switch to the output of an optimized protocol buffer file (.pb).'))
1487
- except (KeyError, AssertionError) as e:
1488
- msg_list = [s for s in e.args if isinstance(s, str)]
1489
- if len(msg_list) > 0:
1490
- try:
1491
- for s in msg_list:
1492
- if 'Failed to add concrete function' in s \
1493
- or "Tried to export a function which references an 'untracked' resource" in s:
1494
- export_archive = tf_keras.export.ExportArchive()
1495
- export_archive.add_endpoint(
1496
- name=SIGNATURE_KEY,
1497
- fn=lambda *inputs : model(inputs),
1498
- input_signature=[tf.TensorSpec(tensor.shape, tensor.dtype, tensor.name) for tensor in model.inputs],
1499
- )
1500
- export_archive.write_out(output_folder_path)
1501
- break
1502
- except ValueError as e:
1503
- msg_list = [s for s in e.args if isinstance(s, str)]
1504
- if len(msg_list) > 0:
1472
+ if saved_model_log_level <= LOG_LEVELS['debug']:
1473
+ set_log_level('info')
1474
+ try:
1475
+ # concrete_func
1476
+ info(Color.REVERSE(f'saved_model output started'), '=' * 58)
1477
+ if not output_signaturedefs and not output_integer_quantized_tflite:
1478
+ tf.saved_model.save(model, output_folder_path)
1479
+ else:
1480
+ export_archive = tf_keras.export.ExportArchive()
1481
+ export_archive.add_endpoint(
1482
+ name=SIGNATURE_KEY,
1483
+ fn=lambda *inputs : model(inputs),
1484
+ input_signature=[tf.TensorSpec(tensor.shape, tensor.dtype, tensor.name) for tensor in model.inputs],
1485
+ )
1486
+ export_archive.write_out(output_folder_path)
1487
+ info(Color.GREEN(f'saved_model output complete!'))
1488
+ except TypeError as e:
1489
+ # Switch to .pb
1490
+ info(Color.GREEN(f'Switch to the output of an optimized protocol buffer file (.pb).'))
1491
+ except (KeyError, AssertionError) as e:
1492
+ msg_list = [s for s in e.args if isinstance(s, str)]
1493
+ if len(msg_list) > 0:
1494
+ try:
1505
1495
  for s in msg_list:
1506
- if 'A root scope name has to match the following pattern' in s:
1507
- error(
1508
- f'Generation of saved_model failed because the OP name does not match the following pattern. ^[A-Za-z0-9.][A-Za-z0-9_.\\\\/>-]*$'
1496
+ if 'Failed to add concrete function' in s \
1497
+ or "Tried to export a function which references an 'untracked' resource" in s:
1498
+ export_archive = tf_keras.export.ExportArchive()
1499
+ export_archive.add_endpoint(
1500
+ name=SIGNATURE_KEY,
1501
+ fn=lambda *inputs : model(inputs),
1502
+ input_signature=[tf.TensorSpec(tensor.shape, tensor.dtype, tensor.name) for tensor in model.inputs],
1509
1503
  )
1510
- matches = re.findall(r"'([^']*)'", s)
1511
- error(f'{matches[0]}')
1512
- error(
1513
- f'Please convert again with the `-osd` or `--output_signaturedefs` option.'
1514
- )
1515
- sys.exit(1)
1516
- else:
1517
- error(e)
1518
- import traceback
1519
- error(traceback.format_exc(), prefix=False)
1520
- else:
1521
- error(e)
1522
- import traceback
1523
- error(traceback.format_exc(), prefix=False)
1524
- except ValueError as e:
1525
- msg_list = [s for s in e.args if isinstance(s, str)]
1526
- if len(msg_list) > 0:
1527
- for s in msg_list:
1528
- if 'A root scope name has to match the following pattern' in s:
1529
- error(
1530
- f'Generation of saved_model failed because the OP name does not match the following pattern. ^[A-Za-z0-9.][A-Za-z0-9_.\\\\/>-]*$'
1531
- )
1532
- matches = re.findall(r"'([^']*)'", s)
1533
- error(f'{matches[0]}')
1534
- error(
1535
- f'Please convert again with the `-osd` or `--output_signaturedefs` option.'
1536
- )
1537
- sys.exit(1)
1538
- else:
1504
+ export_archive.write_out(output_folder_path)
1505
+ break
1506
+ except ValueError as e:
1507
+ msg_list = [s for s in e.args if isinstance(s, str)]
1508
+ if len(msg_list) > 0:
1509
+ for s in msg_list:
1510
+ if 'A root scope name has to match the following pattern' in s:
1511
+ error(
1512
+ f'Generation of saved_model failed because the OP name does not match the following pattern. ^[A-Za-z0-9.][A-Za-z0-9_.\\\\/>-]*$'
1513
+ )
1514
+ matches = re.findall(r"'([^']*)'", s)
1515
+ error(f'{matches[0]}')
1516
+ error(
1517
+ f'Please convert again with the `-osd` or `--output_signaturedefs` option.'
1518
+ )
1519
+ sys.exit(1)
1520
+ else:
1521
+ error(e)
1522
+ import traceback
1523
+ error(traceback.format_exc(), prefix=False)
1524
+ else:
1525
+ error(e)
1526
+ import traceback
1527
+ error(traceback.format_exc(), prefix=False)
1528
+ except ValueError as e:
1529
+ msg_list = [s for s in e.args if isinstance(s, str)]
1530
+ if len(msg_list) > 0:
1531
+ for s in msg_list:
1532
+ if 'A root scope name has to match the following pattern' in s:
1533
+ error(
1534
+ f'Generation of saved_model failed because the OP name does not match the following pattern. ^[A-Za-z0-9.][A-Za-z0-9_.\\\\/>-]*$'
1535
+ )
1536
+ matches = re.findall(r"'([^']*)'", s)
1537
+ error(f'{matches[0]}')
1538
+ error(
1539
+ f'Please convert again with the `-osd` or `--output_signaturedefs` option.'
1540
+ )
1541
+ sys.exit(1)
1542
+ else:
1543
+ error(e)
1544
+ import traceback
1545
+ error(traceback.format_exc(), prefix=False)
1546
+ except Exception as e:
1539
1547
  error(e)
1540
1548
  import traceback
1541
1549
  error(traceback.format_exc(), prefix=False)
1542
- except Exception as e:
1543
- error(e)
1544
- import traceback
1545
- error(traceback.format_exc(), prefix=False)
1550
+ finally:
1551
+ if get_log_level() != saved_model_log_level:
1552
+ set_log_level(saved_model_log_level)
1546
1553
 
1547
1554
  # TFv1 .pb
1548
1555
  if output_tfv1_pb:
@@ -1581,9 +1588,12 @@ def convert(
1581
1588
  Name: flatbuffers
1582
1589
  Version: 22.10.26
1583
1590
  """
1584
- converter = tf.lite.TFLiteConverter.from_concrete_functions(
1585
- [concrete_func]
1586
- )
1591
+ try:
1592
+ converter = tf.lite.TFLiteConverter.from_keras_model(model)
1593
+ except Exception as e:
1594
+ converter = tf.lite.TFLiteConverter.from_concrete_functions(
1595
+ [concrete_func]
1596
+ )
1587
1597
  converter.target_spec.supported_ops = [
1588
1598
  tf.lite.OpsSet.TFLITE_BUILTINS,
1589
1599
  tf.lite.OpsSet.SELECT_TF_OPS,
@@ -54,6 +54,8 @@ def make_node(
54
54
  graph_node_outputs = [] + graph_node.outputs
55
55
 
56
56
  # Then branch
57
+ subgraph_kwargs = dict(kwargs)
58
+ subgraph_kwargs['suppress_log'] = True
57
59
  then_branch_graph: gs.Graph = graph_node.attrs['then_branch']
58
60
  then_branch_graph_outputs = then_branch_graph.outputs
59
61
  for then_branch_graph_node in then_branch_graph.nodes:
@@ -73,7 +75,7 @@ def make_node(
73
75
  op.make_node(
74
76
  graph_node=then_branch_graph_node,
75
77
  tf_layers_dict=tf_layers_dict,
76
- **kwargs,
78
+ **subgraph_kwargs,
77
79
  )
78
80
  # Then branch - Resister constant
79
81
  for output in then_branch_graph_outputs:
@@ -115,7 +117,7 @@ def make_node(
115
117
  op.make_node(
116
118
  graph_node=else_branch_graph_node,
117
119
  tf_layers_dict=tf_layers_dict,
118
- **kwargs,
120
+ **subgraph_kwargs,
119
121
  )
120
122
  # Else branch - Resister constant
121
123
  for output in else_branch_graph_outputs: