Khadas Docs

Amazing Khadas, always amazes you!

User Tools

Site Tools


products:sbc:vim4:npu:demos:facenet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
products:sbc:vim4:npu:demos:facenet [2024/01/04 21:24]
louis old revision restored (2023/09/20 01:13)
products:sbc:vim4:npu:demos:facenet [2025/01/08 22:31] (current)
louis
Line 1: Line 1:
 ~~tag> NPU FaceNet VIM4 PyTorch~~ ~~tag> NPU FaceNet VIM4 PyTorch~~
 +
 +**Doc for version ddk-3.4.7.7**
 +
 ====== FaceNet PyTorch VIM4 Demo - 6 ====== ====== FaceNet PyTorch VIM4 Demo - 6 ======
  
Line 17: Line 20:
 Follow Docker official documentation to install Docker: [[https://docs.docker.com/engine/install/ubuntu/|Install Docker Engine on Ubuntu]]. Follow Docker official documentation to install Docker: [[https://docs.docker.com/engine/install/ubuntu/|Install Docker Engine on Ubuntu]].
  
-Then fetch the prebuilt NPU Docker container and run it.+Follow the script below to get Docker image:
  
 ```shell ```shell
-docker pull yanwyb/npu:v1 +docker pull numbqq/npu-vim4
-$ docker run -it --name vim4-npu1 -v $(pwd):/home/khadas/npu \ +
- -v /etc/localtime:/etc/localtime:ro \ +
- -v /etc/timezone:/etc/timezone:ro \ +
- yanwyb/npu:v1+
 ``` ```
  
-==== Get conversion tool ====+==== Get Convert Tool ====
  
-Download Tool from [[gl>khadas/vim4_npu_sdk]].+Download Tool from [[gh>khadas/vim4_npu_sdk]].
  
 ```shell ```shell
-$ git clone https://gitlab.com/khadas/vim4_npu_sdk+$ git lfs install 
 +$ git lfs clone https://github.com/khadas/vim4_npu_sdk 
 +$ cd vim4_npu_sdk 
 +$ ls 
 +adla-toolkit-binary  adla-toolkit-binary-3.1.7.4  convert-in-docker.sh  Dockerfile  docs  README.md
 ``` ```
 +
 +  * ''adla-toolkit-binary/docs'' - SDK documentations
 +  * ''adla-toolkit-binary/bin'' - SDK tools required for model conversion
 +  * ''adla-toolkit-binary/demo'' - Conversion examples
 +
 +<WRAP important>
 +If your kernel is older than 241129, please use branch npu-ddk-1.7.5.5.
 +</WRAP>
 +
 +==== Convert ====
  
 After training model, modify ''facenet-pytorch/nets/facenet.py'' as follows. After training model, modify ''facenet-pytorch/nets/facenet.py'' as follows.
Line 88: Line 101:
         --dtypes "float32" \         --dtypes "float32" \
         --inference-input-type float32 \         --inference-input-type float32 \
- --inference-output-type float32 \+ --inference-output-type float32 \
         --quantize-dtype int8 --outdir onnx_output  \         --quantize-dtype int8 --outdir onnx_output  \
         --channel-mean-value "0,0,0,255"  \         --channel-mean-value "0,0,0,255"  \
Line 112: Line 125:
 $ git clone https://github.com/khadas/vim4_npu_applications $ git clone https://github.com/khadas/vim4_npu_applications
 ``` ```
 +
 +<WRAP important>
 +If your kernel is older than 241129, please use version before tag ddk-3.4.7.7.
 +</WRAP>
  
 ==== Install dependencies ==== ==== Install dependencies ====
Line 137: Line 154:
  
 # Run mode 1 # Run mode 1
-sudo ./facenet -m ../data/facenet_int8.adla -p 1+$ ./facenet -m ../data/facenet_int8.adla -p 1
 ``` ```
  
Line 144: Line 161:
 ```shell ```shell
 # Run mode 2 # Run mode 2
-sudo ./facenet -m ../data/model/facenet_int8.adla -p ../data/img/lin_2.jpg+$ ./facenet -m ../data/model/facenet_int8.adla -p ../data/img/lin_2.jpg
 ``` ```
  
 +{{:products:sbc:vim4:npu:demos:facenet-demo-output.webp?400|}}
 +
 +Here are two comparison methods, **Euclidean distance** and **cosine similarity**.
 +
 +**Euclidean distance** is smaller, more similar between two faces.
 +
 +**Cosine similarity** is closer to 1, more similar between two faces.
Last modified: 2024/01/04 21:24 by louis