wli1995 commited on
Commit
4336ed2
·
verified ·
1 Parent(s): 8bec016

Upload folder using huggingface_hub

Browse files
Files changed (2) hide show
  1. EdgeTAM/.gitattributes +35 -0
  2. EdgeTAM/README.md +102 -0
EdgeTAM/.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
EdgeTAM/README.md ADDED
@@ -0,0 +1,102 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # EdgeTAM
2
+ 基于EdgeSAM的图像分割Pipeline,支持多种输入提示(框、点、掩码),支持650N系列平台的模型推理。
3
+
4
+ 支持芯片:
5
+ - AX650N
6
+
7
+
8
+ 支持硬件
9
+
10
+ - [M4N-Dock(爱芯派Pro)](https://wiki.sipeed.com/hardware/zh/maixIV/m4ndock/m4ndock.html)
11
+ - [M.2 Accelerator card](https://axcl-docs.readthedocs.io/zh-cn/latest/doc_guide_hardware.html)
12
+
13
+ 原始模型请参考
14
+ - [EdgeTAM Github](https://github.com/facebookresearch/EdgeTAM)
15
+ - [EdgeTAM Huggingface](https://huggingface.co/facebook/EdgeTAM)
16
+
17
+ ## 性能对比
18
+
19
+ - 输入图片大小 512x512
20
+
21
+ | Models | Latency (ms) | CMM Usage (MB) |
22
+ | --------------------- | ---------------------- | -------------- |
23
+ | edgetam_image_encoder | 22.348 | 29.124 |
24
+ | edgetam_prompt_encoder | 0.055 | 0.023 |
25
+ | edgetam_prompt_mask_encoder | 0.457 | 0.037 |
26
+ | edgetam_mask_decoder | 4.729 | 16.730 |
27
+
28
+ ## 模型转换
29
+ - 模型转换工具链[Pulsar2](https://huggingface.co/AXERA-TECH/Pulsar2)
30
+ - 转换文档[TODO]
31
+
32
+ ## 环境准备
33
+ - NPU Python API: [pyaxengine](https://github.com/AXERA-TECH/pyaxengine)
34
+
35
+ 安装需要的python库
36
+ ```pip install -r requirements.txt```
37
+
38
+ ## 运行
39
+
40
+ ```bash
41
+ (myenv) root@ax650:~/EdgeTAM# python3 image_prediction_ax.py --input_box 75,275,1725,850
42
+ [INFO] Available providers: ['AxEngineExecutionProvider']
43
+ Loading EdgeTAM Onnx models...
44
+ [INFO] Using provider: AxEngineExecutionProvider
45
+ [INFO] Chip type: ChipType.MC50
46
+ [INFO] VNPU type: VNPUType.DISABLED
47
+ [INFO] Engine version: 2.12.0s
48
+ [INFO] Model type: 2 (triple core)
49
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
50
+ [INFO] Using provider: AxEngineExecutionProvider
51
+ [INFO] Model type: 2 (triple core)
52
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
53
+ [INFO] Using provider: AxEngineExecutionProvider
54
+ [INFO] Model type: 2 (triple core)
55
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
56
+ [INFO] Using provider: AxEngineExecutionProvider
57
+ [INFO] Model type: 2 (triple core)
58
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
59
+ Get prompts:
60
+ input_box: [ 75 275 1725 850]
61
+ input_point_coords: None
62
+ input_point_labels: None
63
+ Only box input provided
64
+ Get dense_embeddings_no_mask
65
+ [0.9777304]
66
+ ✅ Saved: ./results/mask_1.png
67
+ ```
68
+
69
+ 保存结果在 `./results` 目录下:
70
+ ![image](./results/mask_1.png)
71
+
72
+ ```
73
+ (myenv) root@ax650:~/EdgeTAM# python3 image_prediction_ax.py --image_path ./examples/images/truck.jpg --input_box 425,600,700,875 --input_point_coords 575,750 --input_point_labels 0
74
+ [INFO] Available providers: ['AxEngineExecutionProvider']
75
+ Loading EdgeTAM Onnx models...
76
+ [INFO] Using provider: AxEngineExecutionProvider
77
+ [INFO] Chip type: ChipType.MC50
78
+ [INFO] VNPU type: VNPUType.DISABLED
79
+ [INFO] Engine version: 2.12.0s
80
+ [INFO] Model type: 2 (triple core)
81
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
82
+ [INFO] Using provider: AxEngineExecutionProvider
83
+ [INFO] Model type: 2 (triple core)
84
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
85
+ [INFO] Using provider: AxEngineExecutionProvider
86
+ [INFO] Model type: 2 (triple core)
87
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
88
+ [INFO] Using provider: AxEngineExecutionProvider
89
+ [INFO] Model type: 2 (triple core)
90
+ [INFO] Compiler version: 5.0-patch1-dirty a512c95e-dirty
91
+ ['575,750']
92
+ 575,750
93
+ Get prompts:
94
+ input_box: [425 600 700 875]
95
+ input_point_coords: [[575 750]]
96
+ input_point_labels: [0]
97
+ Get dense_embeddings_no_mask
98
+ [0.90291053]
99
+ ✅ Saved: ./results/mask_1.png
100
+
101
+ ```
102
+ ![image](./results/mask_5.png)