JeVois 1.9 brings the following new features:
- Introduced the new JeVois-A33: JeVois Inventor graphical user interface which makes programming JeVois using full OpenCV and full Python 3.6 much easier than ever before.
- Bumped to OpenCV 3.4.2, with all contrib modules including deep neural networks (DNN)
- YOLO v3 is now supported by DarknetYOLO, faster, more accurate, less memory, and 80 object classes.
- New modules DetectionDNN and PyDetectionDNN show how to use object detection + recognition deep neural networks using the OpenCV DNN framework, in C++ and Python. Supported network formats are Caffe, TensorFlow, Darknet, and Torch. Examples are provided which include:
- OpenCV Face Detector, Caffe model
- MobileNet + SSD trained on Pascal VOC (20 object classes), Caffe model
- MobileNet + SSD trained on Coco (80 object classes), TensorFlow model
- MobileNet v2 + SSD trained on Coco (80 object classes), TensorFlow model
- Darknet Tiny YOLO v3 trained on Coco (80 object classes), Darknet model
- Darknet Tiny YOLO v2 trained on Pascal VOC (20 object classes), Darknet model
- Added pre-trained MobileNet v2 networks to TensorFlowEasy
- New standardized messages for object recognition results, and for object box detection + recognition defined in Standardized serial messages formatting and used in all deep network modules.
- Two new tutorials explain how to decode these messages on Arduino, with sample Arduino code: UserArduinoBlink and UserArduinoYOLO
- Added support for different camera sensors. ov7725 is working great, still work in progress for ov2640. More on that coming in the next release.
- Added a frame counter in the main loop, and access to it using jevois::Module::frameNum(). Modules that need to keep track of frame number do not need to implement their own counter anymore and can use this one.
- Added parameter
serstamp
to jevois::StdModule to optionally prepend all standardized serial messages with frame number, time, frame+time, etc
- Added parameter
serlimit
to jevois::Engine to allow limiting the number of serial messages sent per video frame, to avoid overloading a serial link.
- Added parameter
sermark
to optionally mark start and end of each frame. Useful if one needs to know when a frame has been processed but no results were found and hence no other serial messages were sent.
- Added standardized messages for object recognition and using them in the neural network modules (TensorFlow, Darknet)
- new command-line interface command: shell (allows to run Unix commands on JeVois)
- new command-line interface commands to get machine-oriented info about the camera: cmdinfo, caminfo, modcmdinfo, paraminfo
- Fixed bug in RoadNavigation which was sending incorrect data when operating with no USB output.
- Enabled swap support in the JeVois kernel. Swap is not turned on by default to not slow down boot time, but, if needed, one can easily create a swap file and activate it using the
shell
command of the JeVois command-line interface.