react-native-executorch 0.5.2 → 0.5.4

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 (561) hide show
  1. package/android/CMakeLists.txt +24 -0
  2. package/android/build.gradle +1 -0
  3. package/android/src/main/cpp/CMakeLists.txt +27 -1
  4. package/android/src/main/java/com/swmansion/rnexecutorch/RnExecutorchPackage.kt +1 -13
  5. package/common/rnexecutorch/RnExecutorchInstaller.cpp +52 -18
  6. package/common/rnexecutorch/RnExecutorchInstaller.h +0 -25
  7. package/common/rnexecutorch/TokenizerModule.cpp +1 -1
  8. package/common/rnexecutorch/TokenizerModule.h +4 -1
  9. package/common/rnexecutorch/data_processing/FileUtils.h +2 -2
  10. package/common/rnexecutorch/data_processing/ImageProcessing.cpp +5 -5
  11. package/common/rnexecutorch/data_processing/ImageProcessing.h +2 -2
  12. package/common/rnexecutorch/data_processing/Numerical.cpp +40 -19
  13. package/common/rnexecutorch/data_processing/Numerical.h +53 -4
  14. package/common/rnexecutorch/data_processing/dsp.cpp +1 -1
  15. package/common/rnexecutorch/data_processing/dsp.h +1 -1
  16. package/common/rnexecutorch/data_processing/gzip.cpp +47 -0
  17. package/common/rnexecutorch/data_processing/gzip.h +7 -0
  18. package/common/rnexecutorch/host_objects/JsiConversions.h +43 -62
  19. package/common/rnexecutorch/host_objects/ModelHostObject.h +67 -24
  20. package/common/rnexecutorch/metaprogramming/ConstructorHelpers.h +8 -6
  21. package/common/rnexecutorch/metaprogramming/FunctionHelpers.h +1 -1
  22. package/common/rnexecutorch/metaprogramming/TypeConcepts.h +21 -1
  23. package/common/rnexecutorch/models/BaseModel.cpp +5 -4
  24. package/common/rnexecutorch/models/BaseModel.h +8 -2
  25. package/common/rnexecutorch/models/classification/Classification.cpp +6 -6
  26. package/common/rnexecutorch/models/classification/Classification.h +5 -0
  27. package/common/rnexecutorch/models/classification/Constants.h +3 -3
  28. package/common/rnexecutorch/models/embeddings/BaseEmbeddings.cpp +2 -2
  29. package/common/rnexecutorch/models/embeddings/BaseEmbeddings.h +2 -2
  30. package/common/rnexecutorch/models/embeddings/image/ImageEmbeddings.cpp +3 -3
  31. package/common/rnexecutorch/models/embeddings/image/ImageEmbeddings.h +5 -0
  32. package/common/rnexecutorch/models/embeddings/text/TextEmbeddings.cpp +2 -2
  33. package/common/rnexecutorch/models/embeddings/text/TextEmbeddings.h +6 -1
  34. package/common/rnexecutorch/models/image_segmentation/Constants.h +3 -3
  35. package/common/rnexecutorch/models/image_segmentation/ImageSegmentation.cpp +6 -5
  36. package/common/rnexecutorch/models/image_segmentation/ImageSegmentation.h +8 -1
  37. package/common/rnexecutorch/models/llm/LLM.cpp +58 -0
  38. package/common/rnexecutorch/models/llm/LLM.h +35 -0
  39. package/common/rnexecutorch/models/object_detection/Constants.h +3 -3
  40. package/common/rnexecutorch/models/object_detection/ObjectDetection.cpp +8 -8
  41. package/common/rnexecutorch/models/object_detection/ObjectDetection.h +11 -5
  42. package/common/rnexecutorch/models/object_detection/Types.h +13 -0
  43. package/common/rnexecutorch/models/object_detection/Utils.cpp +13 -11
  44. package/common/rnexecutorch/models/object_detection/Utils.h +7 -13
  45. package/common/rnexecutorch/models/ocr/CTCLabelConverter.cpp +2 -2
  46. package/common/rnexecutorch/models/ocr/CTCLabelConverter.h +2 -2
  47. package/common/rnexecutorch/models/ocr/Constants.h +33 -26
  48. package/common/rnexecutorch/models/ocr/Detector.cpp +20 -22
  49. package/common/rnexecutorch/models/ocr/Detector.h +4 -4
  50. package/common/rnexecutorch/models/ocr/OCR.cpp +9 -8
  51. package/common/rnexecutorch/models/ocr/OCR.h +11 -3
  52. package/common/rnexecutorch/models/ocr/RecognitionHandler.cpp +20 -19
  53. package/common/rnexecutorch/models/ocr/RecognitionHandler.h +9 -7
  54. package/common/rnexecutorch/models/ocr/Recognizer.cpp +7 -7
  55. package/common/rnexecutorch/models/ocr/Recognizer.h +2 -2
  56. package/common/rnexecutorch/models/ocr/Types.h +4 -6
  57. package/common/rnexecutorch/models/ocr/{DetectorUtils.cpp → utils/DetectorUtils.cpp} +70 -63
  58. package/common/rnexecutorch/models/ocr/{DetectorUtils.h → utils/DetectorUtils.h} +12 -11
  59. package/common/rnexecutorch/models/ocr/{RecognitionHandlerUtils.cpp → utils/RecognitionHandlerUtils.cpp} +14 -11
  60. package/common/rnexecutorch/models/ocr/{RecognitionHandlerUtils.h → utils/RecognitionHandlerUtils.h} +5 -5
  61. package/common/rnexecutorch/models/ocr/{RecognizerUtils.cpp → utils/RecognizerUtils.cpp} +28 -26
  62. package/common/rnexecutorch/models/ocr/{RecognizerUtils.h → utils/RecognizerUtils.h} +15 -14
  63. package/common/rnexecutorch/models/speech_to_text/SpeechToText.cpp +102 -41
  64. package/common/rnexecutorch/models/speech_to_text/SpeechToText.h +48 -19
  65. package/common/rnexecutorch/models/speech_to_text/asr/ASR.cpp +307 -0
  66. package/common/rnexecutorch/models/speech_to_text/asr/ASR.h +61 -0
  67. package/common/rnexecutorch/models/speech_to_text/stream/HypothesisBuffer.cpp +80 -0
  68. package/common/rnexecutorch/models/speech_to_text/stream/HypothesisBuffer.h +27 -0
  69. package/common/rnexecutorch/models/speech_to_text/stream/OnlineASRProcessor.cpp +96 -0
  70. package/common/rnexecutorch/models/speech_to_text/stream/OnlineASRProcessor.h +36 -0
  71. package/common/rnexecutorch/models/speech_to_text/types/DecodingOptions.h +15 -0
  72. package/common/rnexecutorch/models/speech_to_text/types/GenerationResult.h +12 -0
  73. package/common/rnexecutorch/models/speech_to_text/types/ProcessResult.h +12 -0
  74. package/common/rnexecutorch/models/speech_to_text/types/Segment.h +14 -0
  75. package/common/rnexecutorch/models/speech_to_text/types/Word.h +13 -0
  76. package/common/rnexecutorch/models/style_transfer/StyleTransfer.cpp +5 -5
  77. package/common/rnexecutorch/models/style_transfer/StyleTransfer.h +6 -0
  78. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.cpp +23 -22
  79. package/common/rnexecutorch/models/vertical_ocr/VerticalDetector.h +4 -4
  80. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.cpp +34 -34
  81. package/common/rnexecutorch/models/vertical_ocr/VerticalOCR.h +27 -20
  82. package/{third-party/ios/ExecutorchLib/ExecutorchLib/sampler → common/runner}/sampler.cpp +3 -2
  83. package/{third-party/ios/ExecutorchLib/ExecutorchLib/sampler → common/runner}/sampler.h +3 -2
  84. package/ios/libs/executorch/libbackend_coreml_ios.a +0 -0
  85. package/ios/libs/executorch/libbackend_coreml_simulator.a +0 -0
  86. package/{third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64 → ios/libs/executorch}/libbackend_mps_ios.a +0 -0
  87. package/{third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/ios-arm64-simulator → ios/libs/executorch}/libbackend_mps_simulator.a +0 -0
  88. package/ios/libs/executorch/libbackend_xnnpack_ios.a +0 -0
  89. package/ios/libs/executorch/libbackend_xnnpack_simulator.a +0 -0
  90. package/ios/libs/executorch/libexecutorch_ios.a +0 -0
  91. package/ios/libs/executorch/libexecutorch_simulator.a +0 -0
  92. package/ios/libs/executorch/libkernels_custom_ios.a +0 -0
  93. package/ios/libs/executorch/libkernels_custom_simulator.a +0 -0
  94. package/ios/libs/executorch/libkernels_optimized_ios.a +0 -0
  95. package/ios/libs/executorch/libkernels_optimized_simulator.a +0 -0
  96. package/ios/libs/executorch/libkernels_portable_ios.a +0 -0
  97. package/ios/libs/executorch/libkernels_portable_simulator.a +0 -0
  98. package/ios/libs/executorch/libkernels_quantized_ios.a +0 -0
  99. package/ios/libs/executorch/libkernels_quantized_simulator.a +0 -0
  100. package/ios/libs/tokenizers-cpp/physical-arm64-release/libsentencepiece.a +0 -0
  101. package/ios/{ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/ExecutorchLib → libs/tokenizers-cpp/physical-arm64-release/libtokenizers_c.a} +0 -0
  102. package/ios/libs/tokenizers-cpp/physical-arm64-release/libtokenizers_cpp.a +0 -0
  103. package/ios/libs/tokenizers-cpp/simulator-arm64-debug/libsentencepiece.a +0 -0
  104. package/ios/{ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/ExecutorchLib → libs/tokenizers-cpp/simulator-arm64-debug/libtokenizers_c.a} +0 -0
  105. package/ios/libs/tokenizers-cpp/simulator-arm64-debug/libtokenizers_cpp.a +0 -0
  106. package/lib/Error.js +9 -6
  107. package/lib/ThreadPool.d.ts +10 -0
  108. package/lib/ThreadPool.js +28 -0
  109. package/lib/constants/modelUrls.js +1 -1
  110. package/lib/controllers/OCRController.js +9 -14
  111. package/lib/controllers/VerticalOCRController.js +9 -14
  112. package/lib/hooks/computer_vision/useOCR.js +7 -8
  113. package/lib/hooks/computer_vision/useVerticalOCR.js +3 -5
  114. package/lib/index.d.ts +0 -2
  115. package/lib/index.js +1 -3
  116. package/lib/module/controllers/LLMController.js +6 -10
  117. package/lib/module/controllers/LLMController.js.map +1 -1
  118. package/lib/module/hooks/computer_vision/useClassification.js +2 -2
  119. package/lib/module/hooks/computer_vision/useClassification.js.map +1 -1
  120. package/lib/module/hooks/computer_vision/useImageEmbeddings.js +2 -2
  121. package/lib/module/hooks/computer_vision/useImageEmbeddings.js.map +1 -1
  122. package/lib/module/hooks/computer_vision/useImageSegmentation.js +2 -2
  123. package/lib/module/hooks/computer_vision/useImageSegmentation.js.map +1 -1
  124. package/lib/module/hooks/computer_vision/useObjectDetection.js +2 -2
  125. package/lib/module/hooks/computer_vision/useObjectDetection.js.map +1 -1
  126. package/lib/module/hooks/computer_vision/useStyleTransfer.js +2 -2
  127. package/lib/module/hooks/computer_vision/useStyleTransfer.js.map +1 -1
  128. package/lib/module/hooks/general/useExecutorchModule.js +2 -2
  129. package/lib/module/hooks/general/useExecutorchModule.js.map +1 -1
  130. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js +2 -2
  131. package/lib/module/hooks/natural_language_processing/useTextEmbeddings.js.map +1 -1
  132. package/lib/module/hooks/useModule.js +13 -9
  133. package/lib/module/hooks/useModule.js.map +1 -1
  134. package/lib/module/index.js +1 -1
  135. package/lib/module/index.js.map +1 -1
  136. package/lib/module/modules/BaseModule.js +9 -17
  137. package/lib/module/modules/BaseModule.js.map +1 -1
  138. package/lib/module/modules/computer_vision/ClassificationModule.js +2 -2
  139. package/lib/module/modules/computer_vision/ClassificationModule.js.map +1 -1
  140. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js +2 -2
  141. package/lib/module/modules/computer_vision/ImageEmbeddingsModule.js.map +1 -1
  142. package/lib/module/modules/computer_vision/ImageSegmentationModule.js +2 -2
  143. package/lib/module/modules/computer_vision/ImageSegmentationModule.js.map +1 -1
  144. package/lib/module/modules/computer_vision/ObjectDetectionModule.js +2 -2
  145. package/lib/module/modules/computer_vision/ObjectDetectionModule.js.map +1 -1
  146. package/lib/module/modules/computer_vision/StyleTransferModule.js +2 -2
  147. package/lib/module/modules/computer_vision/StyleTransferModule.js.map +1 -1
  148. package/lib/module/modules/general/ExecutorchModule.js +2 -2
  149. package/lib/module/modules/general/ExecutorchModule.js.map +1 -1
  150. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js +75 -53
  151. package/lib/module/modules/natural_language_processing/SpeechToTextModule.js.map +1 -1
  152. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js +2 -2
  153. package/lib/module/modules/natural_language_processing/TextEmbeddingsModule.js.map +1 -1
  154. package/lib/module/native/RnExecutorchModules.js +1 -2
  155. package/lib/module/native/RnExecutorchModules.js.map +1 -1
  156. package/lib/modules/computer_vision/OCRModule.d.ts +4 -5
  157. package/lib/modules/computer_vision/OCRModule.js +9 -12
  158. package/lib/modules/computer_vision/VerticalOCRModule.d.ts +4 -5
  159. package/lib/modules/computer_vision/VerticalOCRModule.js +9 -12
  160. package/lib/native/RnExecutorchModules.d.ts +5 -1
  161. package/lib/native/RnExecutorchModules.js +3 -1
  162. package/lib/tsconfig.tsbuildinfo +1 -0
  163. package/lib/types/common.d.ts +1 -0
  164. package/lib/typescript/controllers/LLMController.d.ts +1 -1
  165. package/lib/typescript/controllers/LLMController.d.ts.map +1 -1
  166. package/lib/typescript/hooks/natural_language_processing/useSpeechToText.d.ts +5 -5
  167. package/lib/typescript/hooks/useModule.d.ts +8 -5
  168. package/lib/typescript/hooks/useModule.d.ts.map +1 -1
  169. package/lib/typescript/index.d.ts +1 -0
  170. package/lib/typescript/index.d.ts.map +1 -1
  171. package/lib/typescript/modules/BaseModule.d.ts +7 -6
  172. package/lib/typescript/modules/BaseModule.d.ts.map +1 -1
  173. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts +2 -2
  174. package/lib/typescript/modules/computer_vision/ClassificationModule.d.ts.map +1 -1
  175. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts +2 -2
  176. package/lib/typescript/modules/computer_vision/ImageEmbeddingsModule.d.ts.map +1 -1
  177. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts +2 -2
  178. package/lib/typescript/modules/computer_vision/ImageSegmentationModule.d.ts.map +1 -1
  179. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts +2 -2
  180. package/lib/typescript/modules/computer_vision/ObjectDetectionModule.d.ts.map +1 -1
  181. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts +2 -2
  182. package/lib/typescript/modules/computer_vision/StyleTransferModule.d.ts.map +1 -1
  183. package/lib/typescript/modules/general/ExecutorchModule.d.ts +2 -2
  184. package/lib/typescript/modules/general/ExecutorchModule.d.ts.map +1 -1
  185. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts +7 -12
  186. package/lib/typescript/modules/natural_language_processing/SpeechToTextModule.d.ts.map +1 -1
  187. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts +2 -2
  188. package/lib/typescript/modules/natural_language_processing/TextEmbeddingsModule.d.ts.map +1 -1
  189. package/lib/typescript/native/RnExecutorchModules.d.ts +1 -3
  190. package/lib/typescript/native/RnExecutorchModules.d.ts.map +1 -1
  191. package/lib/typescript/types/stt.d.ts +0 -9
  192. package/lib/typescript/types/stt.d.ts.map +1 -1
  193. package/lib/utils/ResourceFetcherUtils.js +0 -1
  194. package/lib/utils/llm.js +0 -1
  195. package/package.json +1 -2
  196. package/react-native-executorch.podspec +49 -44
  197. package/src/controllers/LLMController.ts +8 -13
  198. package/src/hooks/computer_vision/useClassification.ts +2 -2
  199. package/src/hooks/computer_vision/useImageEmbeddings.ts +2 -2
  200. package/src/hooks/computer_vision/useImageSegmentation.ts +2 -2
  201. package/src/hooks/computer_vision/useObjectDetection.ts +2 -2
  202. package/src/hooks/computer_vision/useStyleTransfer.ts +2 -2
  203. package/src/hooks/general/useExecutorchModule.ts +2 -2
  204. package/src/hooks/natural_language_processing/useTextEmbeddings.ts +2 -2
  205. package/src/hooks/useModule.ts +23 -13
  206. package/src/index.ts +3 -2
  207. package/src/modules/BaseModule.ts +17 -28
  208. package/src/modules/computer_vision/ClassificationModule.ts +2 -2
  209. package/src/modules/computer_vision/ImageEmbeddingsModule.ts +2 -2
  210. package/src/modules/computer_vision/ImageSegmentationModule.ts +2 -2
  211. package/src/modules/computer_vision/ObjectDetectionModule.ts +2 -2
  212. package/src/modules/computer_vision/StyleTransferModule.ts +2 -2
  213. package/src/modules/general/ExecutorchModule.ts +2 -2
  214. package/src/modules/natural_language_processing/SpeechToTextModule.ts +118 -54
  215. package/src/modules/natural_language_processing/TextEmbeddingsModule.ts +2 -2
  216. package/src/native/RnExecutorchModules.ts +1 -5
  217. package/src/types/stt.ts +0 -12
  218. package/third-party/android/libs/cpuinfo/arm64-v8a/libcpuinfo.so +0 -0
  219. package/third-party/android/libs/pthreadpool/arm64-v8a/libpthreadpool.so +0 -0
  220. package/third-party/include/cpuinfo/cpuinfo.h +2305 -0
  221. package/third-party/include/executorch/extension/threadpool/cpuinfo_utils.h +26 -0
  222. package/third-party/include/executorch/extension/threadpool/threadpool.h +94 -0
  223. package/third-party/include/pthreadpool/pthreadpool.h +2236 -0
  224. package/android/src/main/java/com/swmansion/rnexecutorch/LLM.kt +0 -63
  225. package/common/rnexecutorch/models/EncoderDecoderBase.cpp +0 -21
  226. package/common/rnexecutorch/models/EncoderDecoderBase.h +0 -31
  227. package/common/rnexecutorch/models/speech_to_text/SpeechToTextStrategy.h +0 -27
  228. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.cpp +0 -50
  229. package/common/rnexecutorch/models/speech_to_text/WhisperStrategy.h +0 -25
  230. package/ios/ExecutorchLib.xcframework/Info.plist +0 -43
  231. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Headers/ETModel.h +0 -27
  232. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Headers/HuggingFaceTokenizer.h +0 -14
  233. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Headers/LLaMARunner.h +0 -32
  234. package/ios/ExecutorchLib.xcframework/ios-arm64/ExecutorchLib.framework/Info.plist +0 -0
  235. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Headers/ETModel.h +0 -27
  236. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Headers/HuggingFaceTokenizer.h +0 -14
  237. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Headers/LLaMARunner.h +0 -32
  238. package/ios/ExecutorchLib.xcframework/ios-arm64-simulator/ExecutorchLib.framework/Info.plist +0 -0
  239. package/ios/RnExecutorch/LLM.h +0 -5
  240. package/ios/RnExecutorch/LLM.mm +0 -78
  241. package/lib/Error.d.ts +0 -30
  242. package/lib/constants/directories.d.ts +0 -1
  243. package/lib/constants/ocr/symbols.d.ts +0 -75
  244. package/lib/controllers/OCRController.d.ts +0 -23
  245. package/lib/controllers/VerticalOCRController.d.ts +0 -25
  246. package/lib/hooks/useModule.d.ts +0 -17
  247. package/lib/module/modules/BaseNonStaticModule.js +0 -17
  248. package/lib/module/modules/BaseNonStaticModule.js.map +0 -1
  249. package/lib/module/native/NativeLLM.js +0 -5
  250. package/lib/module/native/NativeLLM.js.map +0 -1
  251. package/lib/module/utils/SpeechToTextModule/ASR.js +0 -191
  252. package/lib/module/utils/SpeechToTextModule/ASR.js.map +0 -1
  253. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js +0 -73
  254. package/lib/module/utils/SpeechToTextModule/OnlineProcessor.js.map +0 -1
  255. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js +0 -56
  256. package/lib/module/utils/SpeechToTextModule/hypothesisBuffer.js.map +0 -1
  257. package/lib/module/utils/stt.js +0 -22
  258. package/lib/module/utils/stt.js.map +0 -1
  259. package/lib/modules/BaseModule.d.ts +0 -8
  260. package/lib/modules/BaseNonStaticModule.d.ts +0 -9
  261. package/lib/native/NativeETInstaller.d.ts +0 -6
  262. package/lib/native/NativeOCR.d.ts +0 -8
  263. package/lib/native/NativeVerticalOCR.d.ts +0 -8
  264. package/lib/types/imageSegmentation.d.ts +0 -24
  265. package/lib/types/objectDetection.d.ts +0 -104
  266. package/lib/types/ocr.d.ts +0 -11
  267. package/lib/typescript/modules/BaseNonStaticModule.d.ts +0 -10
  268. package/lib/typescript/modules/BaseNonStaticModule.d.ts.map +0 -1
  269. package/lib/typescript/native/NativeLLM.d.ts +0 -12
  270. package/lib/typescript/native/NativeLLM.d.ts.map +0 -1
  271. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts +0 -27
  272. package/lib/typescript/utils/SpeechToTextModule/ASR.d.ts.map +0 -1
  273. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts +0 -23
  274. package/lib/typescript/utils/SpeechToTextModule/OnlineProcessor.d.ts.map +0 -1
  275. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts +0 -13
  276. package/lib/typescript/utils/SpeechToTextModule/hypothesisBuffer.d.ts.map +0 -1
  277. package/lib/typescript/utils/stt.d.ts +0 -2
  278. package/lib/typescript/utils/stt.d.ts.map +0 -1
  279. package/lib/utils/stt.d.ts +0 -1
  280. package/src/modules/BaseNonStaticModule.ts +0 -26
  281. package/src/native/NativeLLM.ts +0 -14
  282. package/src/utils/SpeechToTextModule/ASR.ts +0 -303
  283. package/src/utils/SpeechToTextModule/OnlineProcessor.ts +0 -87
  284. package/src/utils/SpeechToTextModule/hypothesisBuffer.ts +0 -79
  285. package/src/utils/stt.ts +0 -28
  286. package/third-party/include/tokenizers-cpp/tokenizers_c.h +0 -61
  287. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.h +0 -27
  288. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/ETModel.mm +0 -249
  289. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.h +0 -14
  290. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/HuggingFaceTokenizer.mm +0 -80
  291. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.h +0 -32
  292. package/third-party/ios/ExecutorchLib/ExecutorchLib/Exported/LLaMARunner.mm +0 -95
  293. package/third-party/ios/ExecutorchLib/ExecutorchLib/InputType.h +0 -12
  294. package/third-party/ios/ExecutorchLib/ExecutorchLib/Utils.hpp +0 -217
  295. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.cpp +0 -11
  296. package/third-party/ios/ExecutorchLib/ExecutorchLib/model/Model.h +0 -11
  297. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/base64.h +0 -202
  298. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.cpp +0 -313
  299. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/bpe_tokenizer.h +0 -57
  300. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.cpp +0 -78
  301. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/llama_tiktoken.h +0 -23
  302. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.cpp +0 -427
  303. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tiktoken.h +0 -87
  304. package/third-party/ios/ExecutorchLib/ExecutorchLib/tokenizer/tokenizer.h +0 -76
  305. package/third-party/ios/ExecutorchLib/ExecutorchLib.xcodeproj/project.pbxproj +0 -683
  306. package/third-party/ios/ExecutorchLib/build.sh +0 -44
  307. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/Info.plist +0 -43
  308. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64/libbackend_coreml_ios.a +0 -0
  309. package/third-party/ios/ExecutorchLib/frameworks/backend_coreml.xcframework/ios-arm64-simulator/libbackend_coreml_simulator.a +0 -0
  310. package/third-party/ios/ExecutorchLib/frameworks/backend_mps.xcframework/Info.plist +0 -43
  311. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/Info.plist +0 -43
  312. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64/libbackend_xnnpack_ios.a +0 -0
  313. package/third-party/ios/ExecutorchLib/frameworks/backend_xnnpack.xcframework/ios-arm64-simulator/libbackend_xnnpack_simulator.a +0 -0
  314. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/Info.plist +0 -47
  315. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Export.h +0 -163
  316. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/macros/Macros.h +0 -497
  317. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-inl.h +0 -342
  318. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16-math.h +0 -266
  319. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/BFloat16.h +0 -125
  320. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half-inl.h +0 -347
  321. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/Half.h +0 -416
  322. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/TypeSafeSignMath.h +0 -133
  323. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/bit_cast.h +0 -43
  324. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/floating_point_utils.h +0 -33
  325. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/c10/util/irange.h +0 -107
  326. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorch.h +0 -13
  327. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchError.h +0 -16
  328. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchLog.h +0 -76
  329. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchModule.h +0 -286
  330. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchTensor.h +0 -742
  331. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/ExecuTorchValue.h +0 -219
  332. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/module/module.h +0 -492
  333. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor.h +0 -13
  334. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_accessor.h +0 -190
  335. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr.h +0 -347
  336. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/extension/tensor/tensor_ptr_maker.h +0 -653
  337. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_execution_context.h +0 -71
  338. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/backend_init_context.h +0 -72
  339. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/backend/interface.h +0 -166
  340. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/array_ref.h +0 -235
  341. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/data_loader.h +0 -136
  342. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/defines.h +0 -20
  343. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/error.h +0 -229
  344. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/evalue.h +0 -521
  345. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer.h +0 -565
  346. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks.h +0 -323
  347. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +0 -197
  348. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/exec_aten.h +0 -147
  349. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +0 -263
  350. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +0 -1331
  351. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +0 -21
  352. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +0 -69
  353. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +0 -1250
  354. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/freeable_buffer.h +0 -107
  355. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/hierarchical_allocator.h +0 -107
  356. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/memory_allocator.h +0 -198
  357. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/named_data_map.h +0 -86
  358. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16.h +0 -27
  359. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +0 -14
  360. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/bits_types.h +0 -83
  361. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +0 -163
  362. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +0 -497
  363. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +0 -342
  364. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +0 -266
  365. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +0 -125
  366. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +0 -347
  367. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +0 -416
  368. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +0 -133
  369. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +0 -43
  370. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +0 -33
  371. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +0 -107
  372. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/complex.h +0 -44
  373. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/device.h +0 -70
  374. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/half.h +0 -27
  375. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/optional.h +0 -36
  376. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/qint_types.h +0 -83
  377. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar.h +0 -110
  378. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/scalar_type.h +0 -154
  379. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/string_view.h +0 -29
  380. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor.h +0 -142
  381. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_impl.h +0 -261
  382. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/portable_type/tensor_options.h +0 -60
  383. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/result.h +0 -258
  384. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/span.h +0 -93
  385. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tag.h +0 -71
  386. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_layout.h +0 -79
  387. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/core/tensor_shape_dynamism.h +0 -39
  388. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/memory_manager.h +0 -113
  389. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method.h +0 -387
  390. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/method_meta.h +0 -251
  391. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/program.h +0 -320
  392. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/pte_data_map.h +0 -144
  393. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/executor/tensor_parser.h +0 -156
  394. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/kernel_runtime_context.h +0 -122
  395. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/kernel/operator_registry.h +0 -278
  396. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/abort.h +0 -36
  397. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/assert.h +0 -119
  398. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/clock.h +0 -43
  399. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compat_unistd.h +0 -75
  400. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/compiler.h +0 -191
  401. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/log.h +0 -177
  402. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/platform.h +0 -133
  403. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/profiler.h +0 -292
  404. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/runtime.h +0 -35
  405. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/system.h +0 -49
  406. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/runtime/platform/types.h +0 -24
  407. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/executorch/schema/extended_header.h +0 -76
  408. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/Headers/module.modulemap +0 -5
  409. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64/libexecutorch_ios.a +0 -0
  410. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Export.h +0 -163
  411. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/macros/Macros.h +0 -497
  412. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-inl.h +0 -342
  413. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16-math.h +0 -266
  414. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/BFloat16.h +0 -125
  415. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half-inl.h +0 -347
  416. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/Half.h +0 -416
  417. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/TypeSafeSignMath.h +0 -133
  418. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/bit_cast.h +0 -43
  419. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/floating_point_utils.h +0 -33
  420. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/c10/util/irange.h +0 -107
  421. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorch.h +0 -13
  422. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchError.h +0 -16
  423. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchLog.h +0 -76
  424. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchModule.h +0 -286
  425. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchTensor.h +0 -742
  426. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/ExecuTorchValue.h +0 -219
  427. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/module/module.h +0 -492
  428. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor.h +0 -13
  429. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_accessor.h +0 -190
  430. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr.h +0 -347
  431. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/extension/tensor/tensor_ptr_maker.h +0 -653
  432. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_execution_context.h +0 -71
  433. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/backend_init_context.h +0 -72
  434. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/backend/interface.h +0 -166
  435. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/array_ref.h +0 -235
  436. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/data_loader.h +0 -136
  437. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/defines.h +0 -20
  438. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/error.h +0 -229
  439. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/evalue.h +0 -521
  440. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer.h +0 -565
  441. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks.h +0 -323
  442. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/event_tracer_hooks_delegate.h +0 -197
  443. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/exec_aten.h +0 -147
  444. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/dim_order_util.h +0 -263
  445. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/scalar_type_util.h +0 -1331
  446. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_dimension_limit.h +0 -21
  447. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_shape_to_c_string.h +0 -69
  448. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/exec_aten/util/tensor_util.h +0 -1250
  449. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/freeable_buffer.h +0 -107
  450. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/hierarchical_allocator.h +0 -107
  451. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/memory_allocator.h +0 -198
  452. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/named_data_map.h +0 -86
  453. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16.h +0 -27
  454. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bfloat16_math.h +0 -14
  455. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/bits_types.h +0 -83
  456. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Export.h +0 -163
  457. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/macros/Macros.h +0 -497
  458. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-inl.h +0 -342
  459. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16-math.h +0 -266
  460. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/BFloat16.h +0 -125
  461. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half-inl.h +0 -347
  462. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/Half.h +0 -416
  463. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/TypeSafeSignMath.h +0 -133
  464. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/bit_cast.h +0 -43
  465. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/floating_point_utils.h +0 -33
  466. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/c10/c10/util/irange.h +0 -107
  467. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/complex.h +0 -44
  468. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/device.h +0 -70
  469. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/half.h +0 -27
  470. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/optional.h +0 -36
  471. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/qint_types.h +0 -83
  472. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar.h +0 -110
  473. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/scalar_type.h +0 -154
  474. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/string_view.h +0 -29
  475. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor.h +0 -142
  476. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_impl.h +0 -261
  477. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/portable_type/tensor_options.h +0 -60
  478. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/result.h +0 -258
  479. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/span.h +0 -93
  480. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tag.h +0 -71
  481. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_layout.h +0 -79
  482. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/core/tensor_shape_dynamism.h +0 -39
  483. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/memory_manager.h +0 -113
  484. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method.h +0 -387
  485. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/method_meta.h +0 -251
  486. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/program.h +0 -320
  487. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/pte_data_map.h +0 -144
  488. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/executor/tensor_parser.h +0 -156
  489. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/kernel_runtime_context.h +0 -122
  490. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/kernel/operator_registry.h +0 -278
  491. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/abort.h +0 -36
  492. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/assert.h +0 -119
  493. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/clock.h +0 -43
  494. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compat_unistd.h +0 -75
  495. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/compiler.h +0 -191
  496. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/log.h +0 -177
  497. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/platform.h +0 -133
  498. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/profiler.h +0 -292
  499. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/runtime.h +0 -35
  500. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/system.h +0 -49
  501. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/runtime/platform/types.h +0 -24
  502. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/executorch/schema/extended_header.h +0 -76
  503. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/Headers/module.modulemap +0 -5
  504. package/third-party/ios/ExecutorchLib/frameworks/executorch.xcframework/ios-arm64-simulator/libexecutorch_simulator.a +0 -0
  505. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/Info.plist +0 -43
  506. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64/libkernels_custom_ios.a +0 -0
  507. package/third-party/ios/ExecutorchLib/frameworks/kernels_custom.xcframework/ios-arm64-simulator/libkernels_custom_simulator.a +0 -0
  508. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/Info.plist +0 -43
  509. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64/libkernels_optimized_ios.a +0 -0
  510. package/third-party/ios/ExecutorchLib/frameworks/kernels_optimized.xcframework/ios-arm64-simulator/libkernels_optimized_simulator.a +0 -0
  511. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/Info.plist +0 -43
  512. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64/libkernels_portable_ios.a +0 -0
  513. package/third-party/ios/ExecutorchLib/frameworks/kernels_portable.xcframework/ios-arm64-simulator/libkernels_portable_simulator.a +0 -0
  514. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/Info.plist +0 -43
  515. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64/libkernels_quantized_ios.a +0 -0
  516. package/third-party/ios/ExecutorchLib/frameworks/kernels_quantized.xcframework/ios-arm64-simulator/libkernels_quantized_simulator.a +0 -0
  517. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/Info.plist +0 -43
  518. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/bitmap256.h +0 -82
  519. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/filtered_re2.h +0 -111
  520. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/pod_array.h +0 -43
  521. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter.h +0 -130
  522. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prefilter_tree.h +0 -139
  523. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/prog.h +0 -483
  524. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/re2.h +0 -994
  525. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/regexp.h +0 -692
  526. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/set.h +0 -85
  527. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_array.h +0 -367
  528. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/sparse_set.h +0 -241
  529. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/stringpiece.h +0 -205
  530. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_casefold.h +0 -78
  531. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/unicode_groups.h +0 -64
  532. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Headers/walker-inl.h +0 -235
  533. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/Info.plist +0 -26
  534. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64/re2.framework/re2 +0 -0
  535. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/bitmap256.h +0 -82
  536. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/filtered_re2.h +0 -111
  537. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/pod_array.h +0 -43
  538. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter.h +0 -130
  539. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prefilter_tree.h +0 -139
  540. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/prog.h +0 -483
  541. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/re2.h +0 -994
  542. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/regexp.h +0 -692
  543. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/set.h +0 -85
  544. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_array.h +0 -367
  545. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/sparse_set.h +0 -241
  546. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/stringpiece.h +0 -205
  547. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_casefold.h +0 -78
  548. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/unicode_groups.h +0 -64
  549. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Headers/walker-inl.h +0 -235
  550. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/Info.plist +0 -26
  551. package/third-party/ios/ExecutorchLib/frameworks/re2.xcframework/ios-arm64-simulator/re2.framework/re2 +0 -0
  552. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/irunner.h +0 -0
  553. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/runner.cpp +0 -0
  554. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/runner.h +0 -0
  555. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/stats.h +0 -0
  556. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/text_decoder_runner.cpp +0 -0
  557. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/text_decoder_runner.h +0 -0
  558. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/text_prefiller.cpp +0 -0
  559. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/text_prefiller.h +0 -0
  560. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/text_token_generator.h +0 -0
  561. /package/{third-party/ios/ExecutorchLib/ExecutorchLib → common}/runner/util.h +0 -0
@@ -5,7 +5,7 @@
5
5
  #include <rnexecutorch/models/BaseModel.h>
6
6
  #include <rnexecutorch/models/ocr/Types.h>
7
7
 
8
- namespace rnexecutorch {
8
+ namespace rnexecutorch::models::ocr {
9
9
  /*
10
10
  Detector is a model responsible for recognizing the areas where text is
11
11
  located. It returns the list of bounding boxes. The model used as detector is
@@ -20,11 +20,11 @@ class Detector final : public BaseModel {
20
20
  public:
21
21
  explicit Detector(const std::string &modelSource,
22
22
  std::shared_ptr<react::CallInvoker> callInvoker);
23
- std::vector<ocr::DetectorBBox> generate(const cv::Mat &inputImage);
23
+ std::vector<types::DetectorBBox> generate(const cv::Mat &inputImage);
24
24
  cv::Size getModelImageSize() const noexcept;
25
25
 
26
26
  private:
27
- std::vector<ocr::DetectorBBox> postprocess(const Tensor &tensor) const;
27
+ std::vector<types::DetectorBBox> postprocess(const Tensor &tensor) const;
28
28
  cv::Size modelImageSize;
29
29
  };
30
- } // namespace rnexecutorch
30
+ } // namespace rnexecutorch::models::ocr
@@ -2,7 +2,7 @@
2
2
  #include <rnexecutorch/data_processing/ImageProcessing.h>
3
3
  #include <rnexecutorch/models/ocr/Constants.h>
4
4
 
5
- namespace rnexecutorch {
5
+ namespace rnexecutorch::models::ocr {
6
6
  OCR::OCR(const std::string &detectorSource,
7
7
  const std::string &recognizerSourceLarge,
8
8
  const std::string &recognizerSourceMedium,
@@ -12,8 +12,8 @@ OCR::OCR(const std::string &detectorSource,
12
12
  recognitionHandler(recognizerSourceLarge, recognizerSourceMedium,
13
13
  recognizerSourceSmall, symbols, callInvoker) {}
14
14
 
15
- std::vector<OCRDetection> OCR::generate(std::string input) {
16
- cv::Mat image = imageprocessing::readImage(input);
15
+ std::vector<types::OCRDetection> OCR::generate(std::string input) {
16
+ cv::Mat image = image_processing::readImage(input);
17
17
  if (image.empty()) {
18
18
  throw std::runtime_error("Failed to load image from path: " + input);
19
19
  }
@@ -23,7 +23,7 @@ std::vector<OCRDetection> OCR::generate(std::string input) {
23
23
  with text. They are corresponding to the image of size 1280x1280, which
24
24
  is a size later used by Recognition Handler.
25
25
  */
26
- std::vector<ocr::DetectorBBox> bboxesList = detector.generate(image);
26
+ std::vector<types::DetectorBBox> bboxesList = detector.generate(image);
27
27
  cv::cvtColor(image, image, cv::COLOR_BGR2GRAY);
28
28
 
29
29
  /*
@@ -33,9 +33,10 @@ std::vector<OCRDetection> OCR::generate(std::string input) {
33
33
  - coordinates of bounding box corresponding to the original image size
34
34
  - confidence score
35
35
  */
36
- std::vector<OCRDetection> result = recognitionHandler.recognize(
37
- bboxesList, image,
38
- cv::Size(ocr::RECOGNIZER_IMAGE_SIZE, ocr::RECOGNIZER_IMAGE_SIZE));
36
+ std::vector<types::OCRDetection> result =
37
+ recognitionHandler.recognize(bboxesList, image,
38
+ cv::Size(constants::kRecognizerImageSize,
39
+ constants::kRecognizerImageSize));
39
40
 
40
41
  return result;
41
42
  }
@@ -49,4 +50,4 @@ void OCR::unload() noexcept {
49
50
  detector.unload();
50
51
  recognitionHandler.unload();
51
52
  }
52
- } // namespace rnexecutorch
53
+ } // namespace rnexecutorch::models::ocr
@@ -1,12 +1,15 @@
1
1
  #pragma once
2
2
 
3
+ #include <string>
4
+ #include <vector>
5
+
6
+ #include "rnexecutorch/metaprogramming/ConstructorHelpers.h"
3
7
  #include <rnexecutorch/models/ocr/Detector.h>
4
8
  #include <rnexecutorch/models/ocr/RecognitionHandler.h>
5
9
  #include <rnexecutorch/models/ocr/Types.h>
6
- #include <string>
7
- #include <vector>
8
10
 
9
11
  namespace rnexecutorch {
12
+ namespace models::ocr {
10
13
  /*
11
14
  The OCR consists of two phases:
12
15
  1. Detection - detecting text regions in the image, the result of this phase
@@ -25,7 +28,7 @@ public:
25
28
  const std::string &recognizerSourceMedium,
26
29
  const std::string &recognizerSourceSmall, std::string symbols,
27
30
  std::shared_ptr<react::CallInvoker> callInvoker);
28
- std::vector<OCRDetection> generate(std::string input);
31
+ std::vector<types::OCRDetection> generate(std::string input);
29
32
  std::size_t getMemoryLowerBound() const noexcept;
30
33
  void unload() noexcept;
31
34
 
@@ -33,4 +36,9 @@ private:
33
36
  Detector detector;
34
37
  RecognitionHandler recognitionHandler;
35
38
  };
39
+ } // namespace models::ocr
40
+
41
+ REGISTER_CONSTRUCTOR(models::ocr::OCR, std::string, std::string, std::string,
42
+ std::string, std::string,
43
+ std::shared_ptr<react::CallInvoker>);
36
44
  } // namespace rnexecutorch
@@ -1,10 +1,9 @@
1
1
  #include "RecognitionHandler.h"
2
- #include "RecognitionHandlerUtils.h"
3
2
  #include <rnexecutorch/data_processing/ImageProcessing.h>
4
3
  #include <rnexecutorch/models/ocr/Constants.h>
5
- #include <rnexecutorch/models/ocr/RecognitionHandlerUtils.h>
4
+ #include <rnexecutorch/models/ocr/utils/RecognitionHandlerUtils.h>
6
5
 
7
- namespace rnexecutorch {
6
+ namespace rnexecutorch::models::ocr {
8
7
  RecognitionHandler::RecognitionHandler(
9
8
  const std::string &recognizerSourceLarge,
10
9
  const std::string &recognizerSourceMedium,
@@ -22,24 +21,25 @@ std::pair<std::vector<int32_t>, float>
22
21
  RecognitionHandler::runModel(cv::Mat image) {
23
22
 
24
23
  // Note that the height of an image is always equal to 64.
25
- if (image.cols >= ocr::LARGE_RECOGNIZER_WIDTH) {
24
+ if (image.cols >= constants::kLargeRecognizerWidth) {
26
25
  return recognizerLarge.generate(image);
27
26
  }
28
- if (image.cols >= ocr::MEDIUM_RECOGNIZER_WIDTH) {
27
+ if (image.cols >= constants::kMediumRecognizerWidth) {
29
28
  return recognizerMedium.generate(image);
30
29
  }
31
30
  return recognizerSmall.generate(image);
32
31
  }
33
32
 
34
- void RecognitionHandler::processBBox(std::vector<OCRDetection> &boxList,
35
- ocr::DetectorBBox &box, cv::Mat &imgGray,
36
- ocr::PaddingInfo ratioAndPadding) {
33
+ void RecognitionHandler::processBBox(std::vector<types::OCRDetection> &boxList,
34
+ types::DetectorBBox &box, cv::Mat &imgGray,
35
+ types::PaddingInfo ratioAndPadding) {
37
36
 
38
37
  /*
39
38
  Resize the cropped image to have height = 64 (height accepted by
40
39
  Recognizer).
41
40
  */
42
- auto croppedImage = ocr::cropImage(box, imgGray, ocr::RECOGNIZER_HEIGHT);
41
+ auto croppedImage =
42
+ utils::cropImage(box, imgGray, constants::kRecognizerHeight);
43
43
 
44
44
  if (croppedImage.empty()) {
45
45
  return;
@@ -49,11 +49,12 @@ void RecognitionHandler::processBBox(std::vector<OCRDetection> &boxList,
49
49
  Cropped image is resized into the closest of on of three:
50
50
  128x64, 256x64, 512x64.
51
51
  */
52
- croppedImage = ocr::normalizeForRecognizer(
53
- croppedImage, ocr::RECOGNIZER_HEIGHT, ocr::ADJUST_CONTRAST, false);
52
+ croppedImage =
53
+ utils::normalizeForRecognizer(croppedImage, constants::kRecognizerHeight,
54
+ constants::kAdjustContrast, false);
54
55
 
55
56
  auto [predictionIndices, confidenceScore] = this->runModel(croppedImage);
56
- if (confidenceScore < ocr::LOW_CONFIDENCE_THRESHOLD) {
57
+ if (confidenceScore < constants::kLowConfidenceThreshold) {
57
58
  cv::rotate(croppedImage, croppedImage, cv::ROTATE_180);
58
59
  auto [rotatedPredictionIndices, rotatedConfidenceScore] =
59
60
  runModel(croppedImage);
@@ -77,18 +78,18 @@ void RecognitionHandler::processBBox(std::vector<OCRDetection> &boxList,
77
78
  confidenceScore);
78
79
  }
79
80
 
80
- std::vector<OCRDetection>
81
- RecognitionHandler::recognize(std::vector<ocr::DetectorBBox> bboxesList,
81
+ std::vector<types::OCRDetection>
82
+ RecognitionHandler::recognize(std::vector<types::DetectorBBox> bboxesList,
82
83
  cv::Mat &imgGray, cv::Size desiredSize) {
83
84
  /*
84
85
  Recognition Handler accepts bboxesList corresponding to size
85
86
  1280x1280, which is desiredSize.
86
87
  */
87
- ocr::PaddingInfo ratioAndPadding =
88
- ocr::calculateResizeRatioAndPaddings(imgGray.size(), desiredSize);
89
- imgGray = imageprocessing::resizePadded(imgGray, desiredSize);
88
+ types::PaddingInfo ratioAndPadding =
89
+ utils::calculateResizeRatioAndPaddings(imgGray.size(), desiredSize);
90
+ imgGray = image_processing::resizePadded(imgGray, desiredSize);
90
91
 
91
- std::vector<OCRDetection> result = {};
92
+ std::vector<types::OCRDetection> result = {};
92
93
  for (auto &box : bboxesList) {
93
94
  processBBox(result, box, imgGray, ratioAndPadding);
94
95
  }
@@ -104,4 +105,4 @@ void RecognitionHandler::unload() noexcept {
104
105
  recognizerMedium.unload();
105
106
  recognizerLarge.unload();
106
107
  }
107
- } // namespace rnexecutorch
108
+ } // namespace rnexecutorch::models::ocr
@@ -7,7 +7,7 @@
7
7
  #include <string>
8
8
  #include <vector>
9
9
 
10
- namespace rnexecutorch {
10
+ namespace rnexecutorch::models::ocr {
11
11
  /*
12
12
  Recogntion Handler is responsible for:
13
13
  1. Preparing the image to be processed by Recognition Model.
@@ -22,19 +22,21 @@ public:
22
22
  const std::string &recognizerSourceSmall,
23
23
  std::string symbols,
24
24
  std::shared_ptr<react::CallInvoker> callInvoker);
25
- std::vector<OCRDetection> recognize(std::vector<ocr::DetectorBBox> bboxesList,
26
- cv::Mat &imgGray, cv::Size desiredSize);
25
+ std::vector<types::OCRDetection>
26
+ recognize(std::vector<types::DetectorBBox> bboxesList, cv::Mat &imgGray,
27
+ cv::Size desiredSize);
27
28
  void unload() noexcept;
28
29
  std::size_t getMemoryLowerBound() const noexcept;
29
30
 
30
31
  private:
31
32
  std::pair<std::vector<int32_t>, float> runModel(cv::Mat image);
32
- void processBBox(std::vector<OCRDetection> &boxList, ocr::DetectorBBox &box,
33
- cv::Mat &imgGray, ocr::PaddingInfo ratioAndPadding);
33
+ void processBBox(std::vector<types::OCRDetection> &boxList,
34
+ types::DetectorBBox &box, cv::Mat &imgGray,
35
+ types::PaddingInfo ratioAndPadding);
34
36
  std::size_t memorySizeLowerBound{0};
35
- ocr::CTCLabelConverter converter;
37
+ CTCLabelConverter converter;
36
38
  Recognizer recognizerLarge;
37
39
  Recognizer recognizerMedium;
38
40
  Recognizer recognizerSmall;
39
41
  };
40
- } // namespace rnexecutorch
42
+ } // namespace rnexecutorch::models::ocr
@@ -3,10 +3,10 @@
3
3
  #include <rnexecutorch/data_processing/ImageProcessing.h>
4
4
  #include <rnexecutorch/data_processing/Numerical.h>
5
5
  #include <rnexecutorch/models/ocr/Constants.h>
6
- #include <rnexecutorch/models/ocr/RecognizerUtils.h>
7
6
  #include <rnexecutorch/models/ocr/Types.h>
7
+ #include <rnexecutorch/models/ocr/utils/RecognizerUtils.h>
8
8
 
9
- namespace rnexecutorch {
9
+ namespace rnexecutorch::models::ocr {
10
10
  Recognizer::Recognizer(const std::string &modelSource,
11
11
  std::shared_ptr<react::CallInvoker> callInvoker)
12
12
  : BaseModel(modelSource, callInvoker) {
@@ -35,7 +35,7 @@ Recognizer::generate(const cv::Mat &grayImage) {
35
35
  */
36
36
  std::vector<int32_t> tensorDims = getAllInputShapes()[0];
37
37
  TensorPtr inputTensor =
38
- imageprocessing::getTensorFromMatrixGray(tensorDims, grayImage);
38
+ image_processing::getTensorFromMatrixGray(tensorDims, grayImage);
39
39
  auto forwardResult = BaseModel::forward(inputTensor);
40
40
  if (!forwardResult.ok()) {
41
41
  throw std::runtime_error(
@@ -72,9 +72,9 @@ Recognizer::postprocess(const Tensor &tensor) const {
72
72
  cv::Mat resultMat(numRows, alphabetSize, CV_32F,
73
73
  tensor.mutable_data_ptr<float>());
74
74
 
75
- auto probabilities = ocr::softmax(resultMat);
76
- auto [maxVal, maxIndices] = ocr::findMaxValuesIndices(probabilities);
77
- float confidence = ocr::confidenceScore(maxVal, maxIndices);
75
+ auto probabilities = utils::softmax(resultMat);
76
+ auto [maxVal, maxIndices] = utils::findMaxValuesIndices(probabilities);
77
+ float confidence = utils::confidenceScore(maxVal, maxIndices);
78
78
  return {maxIndices, confidence};
79
79
  }
80
- } // namespace rnexecutorch
80
+ } // namespace rnexecutorch::models::ocr
@@ -7,7 +7,7 @@
7
7
  #include <utility>
8
8
  #include <vector>
9
9
 
10
- namespace rnexecutorch {
10
+ namespace rnexecutorch::models::ocr {
11
11
  /*
12
12
  Recognizer is a model responsible for interpreting detected text regions
13
13
  into characters/words.
@@ -33,4 +33,4 @@ private:
33
33
 
34
34
  cv::Size modelImageSize;
35
35
  };
36
- } // namespace rnexecutorch
36
+ } // namespace rnexecutorch::models::ocr
@@ -4,9 +4,7 @@
4
4
  #include <string>
5
5
  #include <vector>
6
6
 
7
- namespace rnexecutorch {
8
- namespace ocr {
9
-
7
+ namespace rnexecutorch::models::ocr::types {
10
8
  struct Point {
11
9
  float x;
12
10
  float y;
@@ -27,11 +25,11 @@ struct PaddingInfo {
27
25
  int32_t top;
28
26
  int32_t left;
29
27
  };
30
- } // namespace ocr
31
28
 
32
29
  struct OCRDetection {
33
- std::array<ocr::Point, 4> bbox;
30
+ std::array<types::Point, 4> bbox;
34
31
  std::string text;
35
32
  float score;
36
33
  };
37
- } // namespace rnexecutorch
34
+
35
+ } // namespace rnexecutorch::models::ocr::types
@@ -7,9 +7,9 @@
7
7
  #include <rnexecutorch/models/ocr/Types.h>
8
8
  #include <unordered_set>
9
9
 
10
- namespace rnexecutorch::ocr {
10
+ namespace rnexecutorch::models::ocr::utils {
11
11
  std::array<cv::Point2f, 4>
12
- cvPointsFromPoints(const std::array<Point, 4> &points) {
12
+ cvPointsFromPoints(const std::array<types::Point, 4> &points) {
13
13
  std::array<cv::Point2f, 4> cvPoints;
14
14
  #pragma unroll
15
15
  for (std::size_t i = 0; i < cvPoints.size(); ++i) {
@@ -18,8 +18,8 @@ cvPointsFromPoints(const std::array<Point, 4> &points) {
18
18
  return cvPoints;
19
19
  }
20
20
 
21
- std::array<Point, 4> pointsFromCvPoints(cv::Point2f cvPoints[4]) {
22
- std::array<Point, 4> points;
21
+ std::array<types::Point, 4> pointsFromCvPoints(cv::Point2f cvPoints[4]) {
22
+ std::array<types::Point, 4> points;
23
23
  #pragma unroll
24
24
  for (std::size_t i = 0; i < points.size(); ++i) {
25
25
  points[i] = {.x = cvPoints[i].x, .y = cvPoints[i].y};
@@ -92,19 +92,19 @@ void morphologicalOperations(
92
92
  cv::dilate(roiSegMap, roiSegMap, kernel, anchor, iterations);
93
93
  }
94
94
 
95
- DetectorBBox
95
+ types::DetectorBBox
96
96
  extractMinAreaBBoxFromContour(const std::vector<cv::Point> contour) {
97
97
  cv::RotatedRect minRect = cv::minAreaRect(contour);
98
98
 
99
99
  std::array<cv::Point2f, 4> vertices;
100
100
  minRect.points(vertices.data());
101
101
 
102
- std::array<Point, 4> points = pointsFromCvPoints(vertices.data());
102
+ std::array<types::Point, 4> points = pointsFromCvPoints(vertices.data());
103
103
  return {.bbox = points, .angle = minRect.angle};
104
104
  }
105
105
 
106
106
  void getBoxFromContour(cv::Mat &segMap,
107
- std::vector<DetectorBBox> &detectedBoxes) {
107
+ std::vector<types::DetectorBBox> &detectedBoxes) {
108
108
  std::vector<std::vector<cv::Point>> contours;
109
109
  cv::findContours(segMap, contours, cv::RETR_EXTERNAL,
110
110
  cv::CHAIN_APPROX_SIMPLE);
@@ -118,7 +118,8 @@ void getBoxFromContour(cv::Mat &segMap,
118
118
  // param lowTextThreshold is used only by standard OCR.
119
119
  void processComponent(const cv::Mat &textMap, const cv::Mat &labels,
120
120
  const cv::Mat &stats, int32_t i, int32_t imgW,
121
- int32_t imgH, std::vector<DetectorBBox> &detectedBoxes,
121
+ int32_t imgH,
122
+ std::vector<types::DetectorBBox> &detectedBoxes,
122
123
  bool isVertical, int32_t minimalAreaThreshold,
123
124
  int32_t dilationIter, float lowTextThreshold = 0.0) {
124
125
  const int32_t area = stats.at<int32_t>(i, cv::CC_STAT_AREA);
@@ -150,11 +151,10 @@ void processComponent(const cv::Mat &textMap, const cv::Mat &labels,
150
151
  getBoxFromContour(segMap, detectedBoxes);
151
152
  }
152
153
 
153
- std::vector<DetectorBBox> getDetBoxesFromTextMap(cv::Mat &textMap,
154
- cv::Mat &affinityMap,
155
- float textThreshold,
156
- float linkThreshold,
157
- float lowTextThreshold) {
154
+ std::vector<types::DetectorBBox>
155
+ getDetBoxesFromTextMap(cv::Mat &textMap, cv::Mat &affinityMap,
156
+ float textThreshold, float linkThreshold,
157
+ float lowTextThreshold) {
158
158
  // Ensure input mats are of the correct type for processing
159
159
  CV_Assert(textMap.type() == CV_32F && affinityMap.type() == CV_32F);
160
160
 
@@ -184,7 +184,7 @@ std::vector<DetectorBBox> getDetBoxesFromTextMap(cv::Mat &textMap,
184
184
  const int32_t nLabels = cv::connectedComponentsWithStats(
185
185
  binaryMat, labels, stats, centroids, connectivityType);
186
186
 
187
- std::vector<DetectorBBox> detectedBoxes;
187
+ std::vector<types::DetectorBBox> detectedBoxes;
188
188
  detectedBoxes.reserve(nLabels); // Pre-allocate memory
189
189
 
190
190
  // number of dilation iterations performed in some
@@ -203,7 +203,7 @@ std::vector<DetectorBBox> getDetBoxesFromTextMap(cv::Mat &textMap,
203
203
  return detectedBoxes;
204
204
  }
205
205
 
206
- std::vector<DetectorBBox>
206
+ std::vector<types::DetectorBBox>
207
207
  getDetBoxesFromTextMapVertical(cv::Mat &textMap, cv::Mat &affinityMap,
208
208
  float textThreshold, float linkThreshold,
209
209
  bool independentCharacters) {
@@ -265,7 +265,7 @@ getDetBoxesFromTextMapVertical(cv::Mat &textMap, cv::Mat &affinityMap,
265
265
  const int32_t nLabels = cv::connectedComponentsWithStats(
266
266
  binaryMat, labels, stats, centroids, connectivityType);
267
267
 
268
- std::vector<DetectorBBox> detectedBoxes;
268
+ std::vector<types::DetectorBBox> detectedBoxes;
269
269
  detectedBoxes.reserve(nLabels);
270
270
 
271
271
  // number of dilation iterations performed in some
@@ -293,7 +293,8 @@ float calculateRestoreRatio(int32_t currentSize, int32_t desiredSize) {
293
293
  return desiredSize / static_cast<float>(currentSize);
294
294
  }
295
295
 
296
- void restoreBboxRatio(std::vector<DetectorBBox> &boxes, float restoreRatio) {
296
+ void restoreBboxRatio(std::vector<types::DetectorBBox> &boxes,
297
+ float restoreRatio) {
297
298
  for (auto &box : boxes) {
298
299
  for (auto &point : box.bbox) {
299
300
  point.x *= restoreRatio;
@@ -302,7 +303,7 @@ void restoreBboxRatio(std::vector<DetectorBBox> &boxes, float restoreRatio) {
302
303
  }
303
304
  }
304
305
 
305
- float distanceFromPoint(const Point &p1, const Point &p2) {
306
+ float distanceFromPoint(const types::Point &p1, const types::Point &p2) {
306
307
  const float xDist = p2.x - p1.x;
307
308
  const float yDist = p2.y - p1.y;
308
309
  return std::hypot(xDist, yDist);
@@ -312,17 +313,19 @@ float normalizeAngle(float angle) {
312
313
  return (angle > 45.0f) ? (angle - 90.0f) : angle;
313
314
  }
314
315
 
315
- Point midpointBetweenPoint(const Point &p1, const Point &p2) {
316
+ types::Point midpointBetweenPoint(const types::Point &p1,
317
+ const types::Point &p2) {
316
318
  return {.x = std::midpoint(p1.x, p2.x), .y = std::midpoint(p1.y, p2.y)};
317
319
  }
318
320
 
319
- Point centerOfBox(const std::array<Point, 4> &box) {
321
+ types::Point centerOfBox(const std::array<types::Point, 4> &box) {
320
322
  return midpointBetweenPoint(box[0], box[2]);
321
323
  }
322
324
 
323
325
  // function for both; finding maximal side length and minimal side length
324
326
  template <typename Compare>
325
- float findExtremeSideLength(const std::array<Point, 4> &points, Compare comp) {
327
+ float findExtremeSideLength(const std::array<types::Point, 4> &points,
328
+ Compare comp) {
326
329
  float extremeLength = distanceFromPoint(points[0], points[1]);
327
330
 
328
331
  #pragma unroll
@@ -339,11 +342,11 @@ float findExtremeSideLength(const std::array<Point, 4> &points, Compare comp) {
339
342
  return extremeLength;
340
343
  }
341
344
 
342
- float minSideLength(const std::array<Point, 4> &points) {
345
+ float minSideLength(const std::array<types::Point, 4> &points) {
343
346
  return findExtremeSideLength(points, std::less<float>{});
344
347
  }
345
348
 
346
- float maxSideLength(const std::array<Point, 4> &points) {
349
+ float maxSideLength(const std::array<types::Point, 4> &points) {
347
350
  return findExtremeSideLength(points, std::greater<float>{});
348
351
  }
349
352
 
@@ -364,9 +367,9 @@ float maxSideLength(const std::array<Point, 4> &points) {
364
367
  * considered vertical.
365
368
  */
366
369
  std::tuple<float, float, bool>
367
- fitLineToShortestSides(const std::array<Point, 4> &points) {
370
+ fitLineToShortestSides(const std::array<types::Point, 4> &points) {
368
371
  std::array<std::pair<float, float>, 4> sides;
369
- std::array<Point, 4> midpoints;
372
+ std::array<types::Point, 4> midpoints;
370
373
  #pragma unroll
371
374
  for (std::size_t i = 0; i < midpoints.size(); i++) {
372
375
  const auto p1 = points[i];
@@ -380,8 +383,8 @@ fitLineToShortestSides(const std::array<Point, 4> &points) {
380
383
  // Sort the sides by length ascending
381
384
  std::ranges::sort(sides);
382
385
 
383
- const Point midpoint1 = midpoints[sides[0].second];
384
- const Point midpoint2 = midpoints[sides[1].second];
386
+ const types::Point midpoint1 = midpoints[sides[0].second];
387
+ const types::Point midpoint2 = midpoints[sides[1].second];
385
388
  const float dx = std::fabs(midpoint2.x - midpoint1.x);
386
389
 
387
390
  float m, c;
@@ -398,7 +401,7 @@ fitLineToShortestSides(const std::array<Point, 4> &points) {
398
401
  constexpr double accuracy =
399
402
  0.01; // sufficient accuracy. Value proposed by OPENCV
400
403
 
401
- isVertical = dx < VERTICAL_LINE_THRESHOLD;
404
+ isVertical = dx < constants::kVerticalLineThreshold;
402
405
  if (isVertical) {
403
406
  for (auto &pt : cvMidPoints) {
404
407
  std::swap(pt.x, pt.y);
@@ -411,14 +414,15 @@ fitLineToShortestSides(const std::array<Point, 4> &points) {
411
414
  return {m, c, isVertical};
412
415
  }
413
416
 
414
- std::array<Point, 4> rotateBox(const std::array<Point, 4> &box, float angle) {
415
- const Point center = centerOfBox(box);
417
+ std::array<types::Point, 4> rotateBox(const std::array<types::Point, 4> &box,
418
+ float angle) {
419
+ const types::Point center = centerOfBox(box);
416
420
 
417
421
  const float radians = angle * M_PI / 180.0f;
418
422
 
419
- std::array<Point, 4> rotatedPoints;
423
+ std::array<types::Point, 4> rotatedPoints;
420
424
  for (std::size_t i = 0; i < box.size(); ++i) {
421
- const Point &point = box[i];
425
+ const types::Point &point = box[i];
422
426
  const float translatedX = point.x - center.x;
423
427
  const float translatedY = point.y - center.y;
424
428
 
@@ -433,11 +437,12 @@ std::array<Point, 4> rotateBox(const std::array<Point, 4> &box, float angle) {
433
437
  return rotatedPoints;
434
438
  }
435
439
 
436
- float calculateMinimalDistanceBetweenBox(const std::array<Point, 4> &box1,
437
- const std::array<Point, 4> &box2) {
440
+ float calculateMinimalDistanceBetweenBox(
441
+ const std::array<types::Point, 4> &box1,
442
+ const std::array<types::Point, 4> &box2) {
438
443
  float minDistance = std::numeric_limits<float>::max();
439
- for (const Point &corner1 : box1) {
440
- for (const Point &corner2 : box2) {
444
+ for (const types::Point &corner1 : box1) {
445
+ for (const types::Point &corner2 : box2) {
441
446
  const float distance = distanceFromPoint(corner1, corner2);
442
447
  minDistance = std::min(distance, minDistance);
443
448
  }
@@ -461,8 +466,9 @@ float calculateMinimalDistanceBetweenBox(const std::array<Point, 4> &box1,
461
466
  * 4. The points are ordered starting from the top-left in a clockwise manner:
462
467
  * top-left, top-right, bottom-right, bottom-left.
463
468
  */
464
- std::array<Point, 4> orderPointsClockwise(const std::array<Point, 4> &points) {
465
- Point topLeft, topRight, bottomRight, bottomLeft;
469
+ std::array<types::Point, 4>
470
+ orderPointsClockwise(const std::array<types::Point, 4> &points) {
471
+ types::Point topLeft, topRight, bottomRight, bottomLeft;
466
472
  float minSum = std::numeric_limits<float>::max();
467
473
  float maxSum = std::numeric_limits<float>::lowest();
468
474
  float minDiff = std::numeric_limits<float>::max();
@@ -493,8 +499,9 @@ std::array<Point, 4> orderPointsClockwise(const std::array<Point, 4> &points) {
493
499
  return {topLeft, topRight, bottomRight, bottomLeft};
494
500
  }
495
501
 
496
- std::array<Point, 4> mergeRotatedBoxes(std::array<Point, 4> &box1,
497
- std::array<Point, 4> &box2) {
502
+ std::array<types::Point, 4>
503
+ mergeRotatedBoxes(std::array<types::Point, 4> &box1,
504
+ std::array<types::Point, 4> &box2) {
498
505
  box1 = orderPointsClockwise(box1);
499
506
  box2 = orderPointsClockwise(box2);
500
507
 
@@ -546,21 +553,21 @@ std::array<Point, 4> mergeRotatedBoxes(std::array<Point, 4> &box1,
546
553
  * If no suitable box is found the optional is null.
547
554
  */
548
555
  std::optional<std::pair<std::size_t, float>>
549
- findClosestBox(const std::vector<DetectorBBox> &boxes,
556
+ findClosestBox(const std::vector<types::DetectorBBox> &boxes,
550
557
  const std::unordered_set<std::size_t> &ignoredIdxs,
551
- const std::array<Point, 4> &currentBox, bool isVertical, float m,
552
- float c, float centerThreshold) {
558
+ const std::array<types::Point, 4> &currentBox, bool isVertical,
559
+ float m, float c, float centerThreshold) {
553
560
  float smallestDistance = std::numeric_limits<float>::max();
554
561
  ssize_t idx = -1;
555
562
  float boxHeight = 0.0f;
556
- const Point centerOfCurrentBox = centerOfBox(currentBox);
563
+ const types::Point centerOfCurrentBox = centerOfBox(currentBox);
557
564
 
558
565
  for (std::size_t i = 0; i < boxes.size(); i++) {
559
566
  if (ignoredIdxs.contains(i)) {
560
567
  continue;
561
568
  }
562
- std::array<Point, 4> bbox = boxes[i].bbox;
563
- const Point centerOfProcessedBox = centerOfBox(bbox);
569
+ std::array<types::Point, 4> bbox = boxes[i].bbox;
570
+ const types::Point centerOfProcessedBox = centerOfBox(bbox);
564
571
  const float distanceBetweenCenters =
565
572
  distanceFromPoint(centerOfCurrentBox, centerOfProcessedBox);
566
573
 
@@ -593,10 +600,10 @@ findClosestBox(const std::vector<DetectorBBox> &boxes,
593
600
  * - Its longer side is **greater than** `maxSideThreshold`.
594
601
  * Otherwise, the box is excluded from the result.
595
602
  */
596
- std::vector<DetectorBBox>
597
- removeSmallBoxesFromArray(const std::vector<DetectorBBox> &boxes,
603
+ std::vector<types::DetectorBBox>
604
+ removeSmallBoxesFromArray(const std::vector<types::DetectorBBox> &boxes,
598
605
  float minSideThreshold, float maxSideThreshold) {
599
- std::vector<DetectorBBox> filteredBoxes;
606
+ std::vector<types::DetectorBBox> filteredBoxes;
600
607
 
601
608
  for (const auto &box : boxes) {
602
609
  const float maxSide = maxSideLength(box.bbox);
@@ -609,24 +616,24 @@ removeSmallBoxesFromArray(const std::vector<DetectorBBox> &boxes,
609
616
  return filteredBoxes;
610
617
  }
611
618
 
612
- static float minimumYFromBox(const std::array<Point, 4> &box) {
613
- return std::ranges::min_element(box,
614
- [](Point a, Point b) { return a.y < b.y; })
619
+ static float minimumYFromBox(const std::array<types::Point, 4> &box) {
620
+ return std::ranges::min_element(
621
+ box, [](types::Point a, types::Point b) { return a.y < b.y; })
615
622
  ->y;
616
623
  }
617
624
 
618
- std::vector<DetectorBBox>
619
- groupTextBoxes(std::vector<DetectorBBox> &boxes, float centerThreshold,
625
+ std::vector<types::DetectorBBox>
626
+ groupTextBoxes(std::vector<types::DetectorBBox> &boxes, float centerThreshold,
620
627
  float distanceThreshold, float heightThreshold,
621
628
  int32_t minSideThreshold, int32_t maxSideThreshold,
622
629
  int32_t maxWidth) {
623
630
  // Sort boxes descending by maximum side length
624
- std::ranges::sort(boxes,
625
- [](const DetectorBBox &lhs, const DetectorBBox &rhs) {
626
- return maxSideLength(lhs.bbox) > maxSideLength(rhs.bbox);
627
- });
631
+ std::ranges::sort(boxes, [](const types::DetectorBBox &lhs,
632
+ const types::DetectorBBox &rhs) {
633
+ return maxSideLength(lhs.bbox) > maxSideLength(rhs.bbox);
634
+ });
628
635
 
629
- std::vector<DetectorBBox> mergedVec;
636
+ std::vector<types::DetectorBBox> mergedVec;
630
637
  float lineAngle;
631
638
  std::unordered_set<std::size_t> ignoredIdxs;
632
639
  while (!boxes.empty()) {
@@ -652,7 +659,7 @@ groupTextBoxes(std::vector<DetectorBBox> &boxes, float centerThreshold,
652
659
  break;
653
660
  }
654
661
  const auto [candidateIdx, candidateHeight] = closestBoxInfo.value();
655
- DetectorBBox candidateBox = boxes[candidateIdx];
662
+ types::DetectorBBox candidateBox = boxes[candidateIdx];
656
663
 
657
664
  if ((numerical::isClose(candidateBox.angle, 90.0f) && !isVertical) ||
658
665
  (numerical::isClose(candidateBox.angle, 0.0f) && isVertical)) {
@@ -690,9 +697,9 @@ groupTextBoxes(std::vector<DetectorBBox> &boxes, float centerThreshold,
690
697
  return minY1 < minY2;
691
698
  });
692
699
 
693
- std::vector<DetectorBBox> orderedSortedBoxes;
700
+ std::vector<types::DetectorBBox> orderedSortedBoxes;
694
701
  orderedSortedBoxes.reserve(mergedVec.size());
695
- for (DetectorBBox bbox : mergedVec) {
702
+ for (types::DetectorBBox bbox : mergedVec) {
696
703
  bbox.bbox = orderPointsClockwise(bbox.bbox);
697
704
  orderedSortedBoxes.push_back(std::move(bbox));
698
705
  }
@@ -700,4 +707,4 @@ groupTextBoxes(std::vector<DetectorBBox> &boxes, float centerThreshold,
700
707
  return orderedSortedBoxes;
701
708
  }
702
709
 
703
- } // namespace rnexecutorch::ocr
710
+ } // namespace rnexecutorch::models::ocr::utils