~~tags>VIM4 NPU~~ ====== NPU Applications ====== {{indexmenu_n>1}} Only **New VIM4** supports NPU, you can check the version of your VIM4 here: [[products:sbc:vim4:configurations:identify-version|]] ===== Linux ===== Only supports OpenCV4. ==== Get source code ==== You need to download the source code to your VIM4 board and compile on it. Clone the NPU demo applications to somewhere, e.g. ''~/workspace'': ```shell $ mkdir ~/workspace $ cd ~/workspace $ git clone https://github.com/khadas/vim4_npu_applications $ cd vim4_npu_applications $ ls mobilenet_v2 nn_sdk yolov3 yolov3_cap yolov7_tiny yolov7_tiny_cap yolov8n yolov8n_cap ``` * ''mobilenet_v2'', ''yolov3'', ''yolov3_cap'', ''yolov7_tiny'', ''yolov8n'' - Different demo for VIM4 NPU. * ''nn_sdk'' - Dependencies required for compilation. ==== Install dependences ==== ```shell $ sudo apt update $ sudo apt install libopencv-dev python3-opencv cmake ``` ==== Compile ==== Take ''mobilenet_v2'' as an example, other demos are the same. ```shell $ cd mobilenet_v2 $ mkdir build && cd build $ cmake .. $ make ``` ==== Run ==== === Mobilenet V2 === ```shell $ cd mobilenet_v2/build $ sudo ./mobilenetv2 ../data/mobilenetv2_int8.adla ../data/goldfish_224x224.jpg [sudo] password for khadas: 997: 0.273438 886: 0.031250 108: 0.023438 109: 0.019531 127: 0.019531 ``` === Yolov3 === The demos of the Yolo series only support running under the desktop environment. Before running, please compile the source code. The compilation method is same as ''Mobilenet V2''. Detect picture: ```shell $ cd yolov3/build $ sudo ./yolov3 -p ../data/1080p.bmp -m ../data/det_yolov3_int8.adla ``` {{:products:sbc:vim4:npu:vim4-yolov3-output.webp?1000|}} Detection with camera: ```shell $ cd yolov3_cap/build $ sudo ./yolov3_cap -m ../data/det_yolov3_int8.adla -d X -w 1920 -h 1080 ``` **x**: the number for you camera device. such as ''/dev/video0'', ''x'' is ''0''. ===== Android ===== WIP: