dnn-proto.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366
  1. var $root = protobuf.get('dnn');
  2. $root.dnn = {};
  3. $root.dnn.Model = class Model {
  4. constructor() {
  5. this.input_shape = [];
  6. this.input_name = [];
  7. this.node = [];
  8. this.input = [];
  9. this.output = [];
  10. }
  11. static decode(reader, length) {
  12. const message = new $root.dnn.Model();
  13. const end = length !== undefined ? reader.position + length : reader.length;
  14. while (reader.position < end) {
  15. const tag = reader.uint32();
  16. switch (tag >>> 3) {
  17. case 1:
  18. message.name = reader.string();
  19. break;
  20. case 2:
  21. message.version = reader.int32();
  22. break;
  23. case 4:
  24. message.input_shape = reader.array(message.input_shape, () => reader.int32(), tag);
  25. break;
  26. case 7:
  27. message.input_name.push(reader.string());
  28. break;
  29. case 10:
  30. message.node.push($root.dnn.Node.decode(reader, reader.uint32()));
  31. break;
  32. case 12:
  33. message.input.push($root.dnn.Parameter.decode(reader, reader.uint32()));
  34. break;
  35. case 13:
  36. message.output.push($root.dnn.Parameter.decode(reader, reader.uint32()));
  37. break;
  38. case 14:
  39. message.a014 = reader.double();
  40. break;
  41. default:
  42. reader.skipType(tag & 7);
  43. break;
  44. }
  45. }
  46. return message;
  47. }
  48. };
  49. $root.dnn.Model.prototype.name = "";
  50. $root.dnn.Model.prototype.version = 0;
  51. $root.dnn.Model.prototype.a014 = 0;
  52. $root.dnn.Parameter = class Parameter {
  53. constructor() {
  54. }
  55. static decode(reader, length) {
  56. const message = new $root.dnn.Parameter();
  57. const end = length !== undefined ? reader.position + length : reader.length;
  58. while (reader.position < end) {
  59. const tag = reader.uint32();
  60. switch (tag >>> 3) {
  61. case 1:
  62. message.name = reader.string();
  63. break;
  64. case 2:
  65. message.shape = $root.dnn.Shape.decode(reader, reader.uint32());
  66. break;
  67. default:
  68. reader.skipType(tag & 7);
  69. break;
  70. }
  71. }
  72. return message;
  73. }
  74. };
  75. $root.dnn.Parameter.prototype.name = "";
  76. $root.dnn.Parameter.prototype.shape = null;
  77. $root.dnn.Shape = class Shape {
  78. constructor() {
  79. }
  80. static decode(reader, length) {
  81. const message = new $root.dnn.Shape();
  82. const end = length !== undefined ? reader.position + length : reader.length;
  83. while (reader.position < end) {
  84. const tag = reader.uint32();
  85. switch (tag >>> 3) {
  86. case 1:
  87. message.dim0 = reader.int32();
  88. break;
  89. case 2:
  90. message.dim1 = reader.int32();
  91. break;
  92. case 3:
  93. message.dim2 = reader.int32();
  94. break;
  95. case 4:
  96. message.dim3 = reader.int32();
  97. break;
  98. default:
  99. reader.skipType(tag & 7);
  100. break;
  101. }
  102. }
  103. return message;
  104. }
  105. };
  106. $root.dnn.Shape.prototype.dim0 = 0;
  107. $root.dnn.Shape.prototype.dim1 = 0;
  108. $root.dnn.Shape.prototype.dim2 = 0;
  109. $root.dnn.Shape.prototype.dim3 = 0;
  110. $root.dnn.Node = class Node {
  111. constructor() {
  112. this.input = [];
  113. this.output = [];
  114. }
  115. static decode(reader, length) {
  116. const message = new $root.dnn.Node();
  117. const end = length !== undefined ? reader.position + length : reader.length;
  118. while (reader.position < end) {
  119. const tag = reader.uint32();
  120. switch (tag >>> 3) {
  121. case 1:
  122. message.layer = $root.dnn.Layer.decode(reader, reader.uint32());
  123. break;
  124. case 2:
  125. message.input.push(reader.string());
  126. break;
  127. case 3:
  128. message.output.push(reader.string());
  129. break;
  130. default:
  131. reader.skipType(tag & 7);
  132. break;
  133. }
  134. }
  135. return message;
  136. }
  137. };
  138. $root.dnn.Node.prototype.layer = null;
  139. $root.dnn.Layer = class Layer {
  140. constructor() {
  141. this.weight = [];
  142. }
  143. static decode(reader, length) {
  144. const message = new $root.dnn.Layer();
  145. const end = length !== undefined ? reader.position + length : reader.length;
  146. while (reader.position < end) {
  147. const tag = reader.uint32();
  148. switch (tag >>> 3) {
  149. case 1:
  150. message.name = reader.string();
  151. break;
  152. case 2:
  153. message.type = reader.string();
  154. break;
  155. case 3:
  156. message.filters = reader.int32();
  157. break;
  158. case 7:
  159. message.a007 = reader.int32();
  160. break;
  161. case 8:
  162. message.a008 = reader.int32();
  163. break;
  164. case 9:
  165. message.groups = reader.int32();
  166. break;
  167. case 10:
  168. message.a010 = reader.int32();
  169. break;
  170. case 11:
  171. message.a011 = reader.int32();
  172. break;
  173. case 14:
  174. message.slope = reader.float();
  175. break;
  176. case 15:
  177. message.intercept = reader.float();
  178. break;
  179. case 50:
  180. message.weight.push($root.dnn.Tensor.decode(reader, reader.uint32()));
  181. break;
  182. case 72:
  183. message.operation = reader.int32();
  184. break;
  185. case 65:
  186. message.axis = reader.int32();
  187. break;
  188. case 77:
  189. message.a077 = reader.int32();
  190. break;
  191. case 79:
  192. message.scale = reader.float();
  193. break;
  194. case 80:
  195. message.pad_1 = reader.int32();
  196. break;
  197. case 81:
  198. message.pad_2 = reader.int32();
  199. break;
  200. case 82:
  201. message.pad_3 = reader.int32();
  202. break;
  203. case 83:
  204. message.pad_4 = reader.int32();
  205. break;
  206. case 84:
  207. message.pad_5 = reader.int32();
  208. break;
  209. case 85:
  210. message.a085 = reader.int32();
  211. break;
  212. case 90:
  213. message.a090 = reader.int32();
  214. break;
  215. case 101:
  216. message.is_quantized = reader.bool();
  217. break;
  218. case 104:
  219. message.quantization = $root.dnn.Buffer.decode(reader, reader.uint32());
  220. break;
  221. case 109:
  222. message.stride_w = reader.int32();
  223. break;
  224. case 110:
  225. message.stride_h = reader.int32();
  226. break;
  227. case 111:
  228. message.kernel_w = reader.int32();
  229. break;
  230. case 112:
  231. message.kernel_h = reader.int32();
  232. break;
  233. case 115:
  234. message.a115 = reader.int32();
  235. break;
  236. case 116:
  237. message.a116 = reader.int32();
  238. break;
  239. default:
  240. reader.skipType(tag & 7);
  241. break;
  242. }
  243. }
  244. return message;
  245. }
  246. };
  247. $root.dnn.Layer.prototype.name = "";
  248. $root.dnn.Layer.prototype.type = "";
  249. $root.dnn.Layer.prototype.filters = 0;
  250. $root.dnn.Layer.prototype.a007 = 0;
  251. $root.dnn.Layer.prototype.a008 = 0;
  252. $root.dnn.Layer.prototype.groups = 0;
  253. $root.dnn.Layer.prototype.a010 = 0;
  254. $root.dnn.Layer.prototype.a011 = 0;
  255. $root.dnn.Layer.prototype.slope = 0;
  256. $root.dnn.Layer.prototype.intercept = 0;
  257. $root.dnn.Layer.prototype.operation = 0;
  258. $root.dnn.Layer.prototype.axis = 0;
  259. $root.dnn.Layer.prototype.a077 = 0;
  260. $root.dnn.Layer.prototype.scale = 0;
  261. $root.dnn.Layer.prototype.pad_1 = 0;
  262. $root.dnn.Layer.prototype.pad_2 = 0;
  263. $root.dnn.Layer.prototype.pad_3 = 0;
  264. $root.dnn.Layer.prototype.pad_4 = 0;
  265. $root.dnn.Layer.prototype.pad_5 = 0;
  266. $root.dnn.Layer.prototype.a085 = 0;
  267. $root.dnn.Layer.prototype.a090 = 0;
  268. $root.dnn.Layer.prototype.is_quantized = false;
  269. $root.dnn.Layer.prototype.quantization = null;
  270. $root.dnn.Layer.prototype.stride_w = 0;
  271. $root.dnn.Layer.prototype.stride_h = 0;
  272. $root.dnn.Layer.prototype.kernel_w = 0;
  273. $root.dnn.Layer.prototype.kernel_h = 0;
  274. $root.dnn.Layer.prototype.a115 = 0;
  275. $root.dnn.Layer.prototype.a116 = 0;
  276. $root.dnn.Buffer = class Buffer {
  277. constructor() {
  278. }
  279. static decode(reader, length) {
  280. const message = new $root.dnn.Buffer();
  281. const end = length !== undefined ? reader.position + length : reader.length;
  282. while (reader.position < end) {
  283. const tag = reader.uint32();
  284. switch (tag >>> 3) {
  285. case 5:
  286. message.data = reader.bytes();
  287. break;
  288. default:
  289. reader.skipType(tag & 7);
  290. break;
  291. }
  292. }
  293. return message;
  294. }
  295. };
  296. $root.dnn.Buffer.prototype.data = new Uint8Array([]);
  297. $root.dnn.Tensor = class Tensor {
  298. constructor() {
  299. }
  300. static decode(reader, length) {
  301. const message = new $root.dnn.Tensor();
  302. const end = length !== undefined ? reader.position + length : reader.length;
  303. while (reader.position < end) {
  304. const tag = reader.uint32();
  305. switch (tag >>> 3) {
  306. case 1:
  307. message.dim0 = reader.int32();
  308. break;
  309. case 2:
  310. message.dim1 = reader.int32();
  311. break;
  312. case 3:
  313. message.dim2 = reader.int32();
  314. break;
  315. case 4:
  316. message.dim3 = reader.int32();
  317. break;
  318. case 5:
  319. message.data = reader.bytes();
  320. break;
  321. case 6:
  322. message.quantized_data = reader.bytes();
  323. break;
  324. default:
  325. reader.skipType(tag & 7);
  326. break;
  327. }
  328. }
  329. return message;
  330. }
  331. };
  332. $root.dnn.Tensor.prototype.dim0 = 0;
  333. $root.dnn.Tensor.prototype.dim1 = 0;
  334. $root.dnn.Tensor.prototype.dim2 = 0;
  335. $root.dnn.Tensor.prototype.dim3 = 0;
  336. $root.dnn.Tensor.prototype.data = new Uint8Array([]);
  337. $root.dnn.Tensor.prototype.quantized_data = new Uint8Array([]);