Pass Through
Simple module that just passes the captured camera frames through to USB host.
By Laurent Ittiitti@usc.eduhttp://jevois.orgGPL v3
 Language: C++Supports mappings with USB output: YesSupports mappings with NO USB output: Yes 
 Video Mapping:   YUYV 1280 1024 7.5 YUYV 1280 1024 7.5 JeVois PassThrough
 Video Mapping:   YUYV 640 480 30.0 YUYV 640 480 30.0 JeVois PassThrough
 Video Mapping:   YUYV 640 480 19.6 YUYV 640 480 19.6 JeVois PassThrough
 Video Mapping:   YUYV 640 480 12.0 YUYV 640 480 12.0 JeVois PassThrough
 Video Mapping:   YUYV 640 480 8.3 YUYV 640 480 8.3 JeVois PassThrough
 Video Mapping:   YUYV 640 480 7.5 YUYV 640 480 7.5 JeVois PassThrough
 Video Mapping:   YUYV 640 480 5.5 YUYV 640 480 5.5 JeVois PassThrough

Module Documentation

This module makes your JeVois smart camera operate like a regular "dumb" camera. It is intended mainly for use in programming tutorials, and to allow you to debug new machine vision modules that you test on your host computer, using the JeVois camera in pass-through mode as input, to simulate what will happen when your code runs on the JeVois embedded processor.

Any video mapping is possible here, as long as camera and USB pixel types match, and camera and USB image resolutions also match.

See Advanced topic: Image pixel formats for information about pixel formats; with this module you can use the formats supported by the camera sensor: YUYV, BAYER, RGB565, and resolutions:

  • SXGA (1280 x 1024): up to 15 fps
  • VGA (640 x 480): up to 30 fps
  • CIF (352 x 288): up to 60 fps
  • QVGA (320 x 240): up to 60 fps
  • QCIF (176 x 144): up to 120 fps
  • QQVGA (160 x 120): up to 60 fps
  • QQCIF (88 x 72): up to 120 fps

Things to try

Edit JEVOIS:/config/videomappings.cfg on your MicroSD card (see Advanced topic: Video mappings and configuring machine vision modes) and try to add some new pass-through mappings. Not all of the possible pass-through mappings have been included in the card to avoid having too many of these simple "dumb camera" mappings in the base software distribution. For example, you can try

YUYV 176 144 115.0 YUYV 176 144 115.0 JeVois PassThrough

will grab YUYV frames on the sensor, with resolution 176x144 at 115 frames/s, and will directly send them to the host computer over the USB link. To test this mapping, select the corresponding resolution and framerate in your video viewing software (here, YUYV 176x144 @ 115fps). Although the sensor can capture at up to 120fps at this resolution, here we used 115fps to avoid a conflict with a mapping using YUYV 176x144 @ 120fps USB output and the SaveVideo module that is already in the default videomappings.cfg file.

Note that this module may suffer from DMA coherency artifacts if the camturbo parameter of the jevois::Engine is turned on, which it is by default. The camturbo parameter relaxes some of the cache coherency constraints on the video buffers captured by the camera sensor, which allows the JeVois processor to access video pixel data from memory faster. But with modules that do not do much processing, sometimes this yields video artifacts, we presume because some of the video data from previous frames still is in the CPU cache and hence is not again fetched from main memory by the CPU. If you see short stripes of what appears to be wrong pixel colors in the video, try to disable camturbo, by editing JEVOIS:/config/params.cfg on your MicroSD card and in there turning camturbo to false.

ParameterTypeDescriptionDefaultValid Values
This module exposes no parameter
Detailed docs:PassThrough
Copyright:Copyright (C) 2016 by Laurent Itti, iLab and the University of Southern California
License:GPL v3
Distribution:Unrestricted
Restrictions:None
Support URL:http://jevois.org/doc
Other URL:http://iLab.usc.edu
Address:University of Southern California, HNB-07A, 3641 Watt Way, Los Angeles, CA 90089-2520, USA