JeVois
1.22
JeVois Smart Embedded Machine Vision Toolkit
|
|
JeVois 1.22 brings the following new features:
New post-processors for YOLOv8 / v9/ v10 / 11, for: detection, semantic segmentation, pose/skeleton, and oriented bounding boxes. Also new post-processor for YOLOX networks.
JeVois-Pro NPU: one-line script to convert yolo-family networks for NPU:
parses the model name to determine how to convert it and what post-processor to use, then converts and quantizes the model, and creates a weight file for NPU, a dynamic library to load the weights, and a JeVois zoo yaml file to describe the model. Just copy these 3 files to /jevoispro/share/snn/custom/ on microSD and you can run your model without further editing or configuring.
dequant
: dequantize the output tensorsouttransform
: apply a semicolon-separated sequence (from left to right) of transforms to the outputs. Outputs are numbered starting at 0. Available transforms are:shape(outnum, AxBxC...)
to reshape an output to a given new shape. Does not change or move any tensor data. Total number of data elements must remain the same. Useful to squeeze/unsqueeze tensors.transpose(outnum, oldaxisA, oldaxisB, ...)
where transposed new axis 0 (the outermost dimension, typically batch size) will be from oldaxisA, new axis 1 from oldaxisB, etc. If outnum is *, transpose all outputs.order(oldidx0, oldidx1, ...)
where the new ordering of the output tensors will be: new tensor 0: old tensor oldidx0 (which is zero-based); new tensor 1: old tensor oldidx1, etc. It is ok to have duplicated or missing entries.split(outnum, axis, newsize1, ..., newsizeN)
where axis 0 is the outtermost dimension (typically, batch size), and newsize1 + ... + newsizeN must be equal to the original size of that axis. If outnum is *, split all outputs.merge(axis, outnum1, ..., outnumN)
where axis 0 is the outermost dimension (typically, batch size) and outnum1, ..., outnumN are the outputs to merge along that axis. All the outputs to be merged must have matching number of dimensions, and matching sizes on all other axes. The merged tensor will replace the first output listed in the merge, and the other listed will be removed. Outputs to merge must be listed in ascending order (use an order() transform first if needed) See the model zoo files in /jevoispro/share/dnn/ for examples. For instance: