1.项目后端整体迁移至PaddleOCR-NCNN算法,已通过基本的兼容性测试 2.工程改为使用CMake组织,后续为了更好地兼容第三方库,不再提供QMake工程 3.重整权利声明文件,重整代码工程,确保最小化侵权风险 Log: 切换后端至PaddleOCR-NCNN,切换工程为CMake Change-Id: I4d5d2c5d37505a4a24b389b1a4c5d12f17bfa38c
1.2 KiB
1.2 KiB
broadcasting rule
ncnn BinaryOp accepts blobs with different shape
C = BinaryOp(A, B)
shape notation convention is [w], [w,h], [w,h,c], [w,h,d,c]
| type | A | B | C |
|---|---|---|---|
| 1 | [1] | scalar | [1] |
| 2 | [1] | [2] | [2] |
| 3 | [1] | [2,3] | [2,3] |
| 4 | [1] | [2,3,4] | [2,3,4] |
| 5 | [2] | scalar | [2] |
| 6 | [2] | [1] | [2] |
| 7 | [2] | [2] | [2] |
| 8 | [3] | [2,3] | [2,3] |
| 9 | [4] | [2,3,4] | [2,3,4] |
| 10 | [2,3] | scalar | [2,3] |
| 11 | [2,3] | [1] | [2,3] |
| 12 | [2,3] | [3] | [2,3] |
| 13 | [2,3] | [2,3] | [2,3] |
| 14 | [3,4] | [2,3,4] | [2,3,4] |
| 15 | [2,3,4] | scalar | [2,3,4] |
| 16 | [2,3,4] | [1] | [2,3,4] |
| 17 | [2,3,4] | [4] | [2,3,4] |
| 18 | [2,3,4] | [3,4] | [2,3,4] |
| 19 | [2,3,4] | [2,3,4] | [2,3,4] |
| 20 | [1] | [2,3,4,5] | [2,3,4,5] |
| 21 | [5] | [2,3,4,5] | [2,3,4,5] |
| 22 | [4,5] | [2,3,4,5] | [2,3,4,5] |
| 23 | [3,4,5] | [2,3,4,5] | [2,3,4,5] |
| 24 | [2,3,4,5] | scalar | [2,3,4,5] |
| 25 | [2,3,4,5] | [1] | [2,3,4,5] |
| 26 | [2,3,4,5] | [5] | [2,3,4,5] |
| 27 | [2,3,4,5] | [4,5] | [2,3,4,5] |
| 28 | [2,3,4,5] | [3,4,5] | [2,3,4,5] |
| 29 | [2,3,4,5] | [2,3,4,5] | [2,3,4,5] |
some special broadcasting rule exists for model compatibility
| special type | A | B | C |
|---|---|---|---|
| 1 | [2,3,4] | [1,1,4] | [2,3,4] |
| 2 | [2,3,4] | [2,3,1] | [2,3,4] |
| 3 | [1,1,4] | [2,3,4] | [2,3,4] |
| 4 | [2,3,1] | [2,3,4] | [2,3,4] |
| 5 | [2,3,4] | [1,3,4] | [2,3,4] |
| 6 | [2,3,4] | [2,1,4] | [2,3,4] |
| 7 | [1,3,4] | [2,3,4] | [2,3,4] |
| 8 | [2,1,4] | [2,3,4] | [2,3,4] |