Package Exports
- node-yolo-shinobi
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (node-yolo-shinobi) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
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 = require('@vapi/node-yolo');
const detector = new yolo("darknet-configs", "cfg/coco.data", "cfg/yolov3.cfg", "yolov3.weights");
try{
detector.detect(path)
.then(detections => {
// here you receive the detections
})
.catch(error => {
// here you can handle the errors. Ex: Out of memory
});
}
catch(error){
console.log('Catch: ' + error);
}
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 |