node-yolo
This Node.js C++ Addon came out from a computer engineering project, VAPi. It allow you to use a state-of-the-art, real-time object detection system called Yolo.
Note: Now is in progress some work to improve the module, to enhance the current functionalities:
- First we begin to improve more robustness to the lib
- Second give the possibility to process videos files and later on video streams
- Split the libyolo and node-yolo projects, for those that like an easy lib to continue on C or C++ instead node.js.
Who fork and/or use this repo please stay sharp because alot of changes happening and not backwards compatibility between 1.. version and 2.. version.
Pre-requirements
- C/C++ Compiler
- Nvidia graphic card with CUDA support and required files installed (Only if you want to use GPU acceleration)
- Node.js >= 9
- node-gyp
- ImageMagick
Installation
npm i @vapi/node-yolo --save
How To Use
const yolo = ;const detector = "darknet-configs" "cfg/coco.data" "cfg/yolov3.cfg" "yolov3.weights";try detector ;catcherror console;
darknet-configs is a folder where you should put the Yolo weights, cfg and data files.
You need to create two folder, cfg and data and put the files for each one. Like this:
.
├── darknet-configs # The folder for the Yolo weight, cfg and data files
│ ├── cfg # cfg folder
| |── coco.data
| |── yolov3.cfg
│ ├── data # data folder
| | |── coco.names
│ └── yolov3.weights # YoloV3 weights file
└── ...
detections object
Field | Description |
---|---|
className |
name of the class of the object detected |
probability |
the higher probability that this className is correct |
box |
object that contains box info of the object |
box object
Field | Description |
---|---|
x |
x coordinate in pixels of the picture |
y |
y coordinate in pixels of the picture |
w |
width from x point in pixels |
h |
height from y point in pixels |