Welcome new user! You can search existing questions and answers without registering, but please register to post new questions and receive answers. Note that due to large amounts of spam attempts, your first three posts will be manually moderated, so please be patient.
Because of un-manageable amounts of spam despite our use of CAPTCHAs, email authorization, and other tools, we have discontinued this forum (see the 700k+ registered users with validated email addresses at right?). Please email us any questions or post bug reports and feature requests on GitHub at https://github.com/jevois -- The content below remains available for future reference.

2D map generation with jvois

0 votes
Hi,

Is there any possibility of communication setup between jevois and other boards such as beaglebone/raspberry pi (other than arduino) to generate a 2D map of a room?

If yes, please tell me how it can be done?

Thanks.
asked Nov 17, 2017 in Programmer Questions by sharmarahul98 (320 points)

1 Answer

0 votes
 
Best answer
yes, a student here is doing something similar, robot localization and mapping using a ring of 8 JeVois cameras. Each camera extracts SURF keypoints and computes the descriptors, and matches the keypoints and descriptors from one video frame to the next, deriving a 3D transform from time t to t+1. Then a central raspberry pi collects the data from all 8 cameras and does some bundle adjustment and computes the motion of the ring in 3D space.

What we decided to do for this project was to simply use text messages over serial. So the data from each camera is sent out simply using sendSerial(). The RPi open 8 serial ports, /dev/ttyACM0 ... /dev/ttyACM7 and collects all the messages. Note that we recently added a parameter "nickname" to jevois::Manager to help disambiguate which camera is which, as they may not always be enumerated in the same order by the host. So on each camera you would set a different nickname in initscript.cfg

Since we do that over USB, with data rate of 480Mbps, we can send lots and lots of such text messages before saturating the USB bandwidth. Doing it over a hardware serial port of course would limit your data rate much more.

Or, you can also transmit images, which may contain whatever you want. See for example http://jevois.org/moddoc/DenseSift/modinfo.html where we send out a vector of SIFT descriptors as a greyscale image.
answered Nov 17, 2017 by JeVois (46,580 points)
selected Nov 17, 2017 by sharmarahul98
Hi,
Thanks for the reply.

I just have one query as during building the jevoisbase, the build gets stop at 99%-

Scanning dependencies of target SuperPixelSeg
[ 99%] Building CXX object CMakeFiles/SuperPixelSeg.dir/src/Modules/SuperPixelSeg/SuperPixelSeg.C.o
[ 99%] Linking CXX shared library JeVoisIntro.so
[ 99%] Built target JeVoisIntro
[ 99%] Linking CXX shared library SaveVideo.so
[ 99%] Built target SaveVideo
[ 99%] Linking CXX shared library SuperPixelSeg.so
[ 99%] Built target SuperPixelSeg
 
I have Ubuntu16.04 and followed the INSTALL instructions. But at this stage its gets stucked. Also i am not able to run jevois-daemon, it gives error like libboost_regex.so.1.62.0 not found. Any suggestion?
Thanks
...