Carmine 1.09 support

classic Classic list List threaded Threaded
84 messages Options
12345
Reply | Threaded
Open this post in threaded view
|

Re: Carmine 1.09 support

VictorLamoine
Administrator
This post was updated on .
Here is a quick tutorial on how to successfully run an OpenNI/PCL example using a Carmine 1.09 with a fresh Ubuntu 12.04 x64 installed.

Install PCL

Follow Ubuntu instructions at PCL download page

Clean previous OpenNI & install dependencies

Follow points 2 and 4 of this wiki.

Install OpenNI & Sensor from PrimeSense git

Make sure this directory exits :
sudo mkdir -p /usr/local/bin

Follow "Install from PrimeSense git repos" on this wiki.
Go step by step and check if everything is fine.

Try to run an example

Go to this directory and run the example (it takes 2/3 secondes before you get data) :

cd ~/primesense/OpenNI/Platform/Linux/Bin/x64-Release && ./Sample-NiSimpleRead
Reading config from: '../../../../Data/SamplesConfig.xml'
Frame 1 Middle point is: 0. FPS: 0.000000
...
...
Frame 75 Middle point is: 0. FPS: 0.000000
Frame 76 Middle point is: 0. FPS: 30.562925
Frame 77 Middle point is: 0. FPS: 30.554913

If you get an error, go to the next section

USB related error messages

If you get an error like this one :
Open failed: Failed to set USB interface!

Find your GlobalDefaults.ini file :
sudo find / -iname GlobalDefaults.ini

Edit the right one (should be in usr directory) :
sudo gedit /usr/local/etc/openni/GlobalDefaults.ini

Find the following line and uncomment it :
UsbInterface=2

Sometimes changing the USB port fixes the problem
Try te re-run the OpenNI example.

If the example get stuck when you launch it

If your app doesn't work or you get something like :
Reason: Got a timeout while waiting for a network command to complete!

The XnSensorServer is probably still running. Close all your examples and kill the process :

ps -ef | grep Xn
root      3948     1  0 10:57 ?        00:00:00 [XnSensorServer]
dell      3955  3828  0 10:57 pts/3    00:00:00 grep --color=auto Xn

sudo kill 3949 &&  ps -ef | grep Xn
dell      4176  3828  0 10:59 pts/3    00:00:00 grep --color=auto Xn

Sometimes changing the USB port also fixes the problem. Try te re-run the OpenNI example.

Running a PCL example

This example from the PCL tutorials works fine but it doesn't show the RGB stream. Don't forget to zoom out when you start the app (or press multiple times 'r').

This openni_grabber_v2.tar.gz works fine with RGB stream. Build it :
cd openni_grabber_v2/build/ && cmake ../src && make

Then launch it
./openni_grabber_v2

Don't forget to zoom out (or press 'r' multiple times).

Bye bye
Reply | Threaded
Open this post in threaded view
|

Re: Carmine 1.09 support

dim_tz
Hi all,

a few weeks ago I posted this hacky solution to interface with the Carmine 1.09
http://www.pcl-users.org/Carmine-1-09-support-tp4026939p4030385.html
and I reported these FPS numbers
http://www.pcl-users.org/Carmine-1-09-support-tp4026939p4031618.html
These numbers were reported while doing capturing+displaying at the same time
!
(there is a correlation between the resolution and the fps number, they are inversely proportional)

I found out that totally kicking out the display gives ~30 fps for both cameras.

That means that the hacky solution gives a quite good interface with the carmine, allowing capturing bot RGB and Depth at ~30fps (didn't try to see if I can get higher fps).

Of course, don't expect perfect interface, some times you might need to change usb port or something similar (not very often according to my experience), but considering the hacky nature of the solution, it works pretty good, especially for offline capturing and processing. I've been working with this solution for the past few weeks (sorry for not posting earlier) with no worth-mentioning problems.

Best,
dimitris



On Tue, Jan 21, 2014 at 11:24 AM, VictorL <[hidden email]> wrote:
Here is a quick tutorial on how to successfully run an OpenNI/PCL example
using a Carmine 1.09 with a fresh Ubuntu 12.04 x64 installed.

Install PCL

Follow Ubuntu instructions at  PCL download page
<http://pointclouds.org/downloads/linux.html>

Clean previous OpenNI & install dependencies

Follow  points 2 and 4 of this wiki
<https://wiki.ccs.neu.edu/display/GPC/pcl-trunk+on+Ubuntu+12.04+LTS+64bit>
.

Install OpenNI & Sensor from PrimeSense git

Make sure this directory exits :
/sudo mkdir -p /usr/local/bin/

Follow "Install from PrimeSense git repos" on  this wiki
<https://wiki.ccs.neu.edu/display/GPC/pcl-trunk+on+Ubuntu+12.04+LTS+64bit>
.
Go step by step and check if everything is fine.

Try to run an example

Go to this directory and run the example :

~/primesense/OpenNI/Platform/Linux/Bin/x64-Release$/ ./Sample-NiSimpleRead /
Reading config from: '../../../../Data/SamplesConfig.xml'
Frame 1 Middle point is: 0. FPS: 0.000000
...
...
Frame 75 Middle point is: 0. FPS: 0.000000
Frame 76 Middle point is: 0. FPS: 30.562925
Frame 77 Middle point is: 0. FPS: 30.554913

USB related error messages

Find your GlobalDefaults.ini file :
/sudo find / -iname GlobalDefaults.ini/

Edit the right one (should be in /usr/ directory) :
/sudo gedit /usr/local/etc/openni/GlobalDefaults.ini/

Find the following line and uncomment it :
/UsbInterface=2/

Try te re-run the OpenNI example.

If the example get stuck when you launch it

The /XnSensorServer/ is probably still running. Close all your examples and
kill the process :

ps -ef | grep Xn
root      3948     1  0 10:57 ?        00:00:00 [XnSensorServer]
dell      3955  3828  0 10:57 pts/3    00:00:00 grep --color=auto Xn

sudo kill 3949 &&  ps -ef | grep Xn
dell      4176  3828  0 10:59 pts/3    00:00:00 grep --color=auto Xn

Try te re-run the OpenNI example.

Running a PCL example

This example
<http://pointclouds.org/documentation/tutorials/openni_grabber.php#openni-grabber>
from the PCL tutorials works fine but it doesn't show the RGB stream. Don't
forget to zoom out when you start the app.

This  openni_grabber_v2.tar.gz
<http://www.pcl-users.org/file/n4031809/openni_grabber_v2.tar.gz>   works
fine with RGB stream. Build it :
/cd openni_grabber_v2/build/ && cmake ../src && make/

Then launch it
/./openni_grabber_v2 /

Don't forget to zoom out !

Bye bye



--
View this message in context: http://www.pcl-users.org/Carmine-1-09-support-tp4026939p4031809.html
Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Carmine 1.09 support

martyvona
Dimitris -

Glad you got it working.  Yes when we say "30 fps" we also mean saving to disk at that rate.  Visualization is often slower.

We also found that the compression for saved data can matter a lot and can limit framerate due to CPU or disk bandwith.  Also if you want to not drop frames periodically ("hiccups") over longer term (more than ~30s) then a buffering strategy seems needed.

Our analysis of the various tools for saving OpenNI data is here:

https://wiki.ccs.neu.edu/display/GPC/OpenNI+and+PCL+Recording+Codes

The bottom line is that of the various options, if you want to stick with something in standard PCL or openni then the one to go with is pcl_openni_image.  It saves in pclzf format which doesn't take too much cpu or disk bandwidth, and it implements a circular buffer to avoid hiccups.

We also recently released our imucam code

http://www.ccs.neu.edu/research/gpc/imucam/index.html

which has a utility for saving to pclzf+xml compatible with pcl_openni_image but with more options.  Also we found that (at least in the version we were testing a few months ago) pcl_openni_image could have some lag in visualization because it uses a separate buffer for that and aims not to drop frames.  Our imucam code buffers frames to disk but drops frames as needed for visualization.

Best,
Marty
Reply | Threaded
Open this post in threaded view
|

Re: Carmine 1.09 support

dim_tz
Hi Marty,

I should have formulated this a bit more carefully.
I kick out the display in order to increase the frame rate, but I first store the acquired frames only in RAM, to avoid the HDD bottleneck,
and actually store them on the disk only at the end of the capturing procedure.
So, actual storing is offline, while all acquired frames go only to the RAM memory ;)
That being said, if you achieve ~30 fps while concurrently storing on the disk, then probably you do something better.

Also, thanks for all the material that you put online, it's helpful not only for your lab and your students, but also for the rest of us :)

Best,
dimitris



On Mon, Feb 10, 2014 at 5:26 PM, martyvona <[hidden email]> wrote:
Dimitris -

Glad you got it working.  Yes when we say "30 fps" we also mean saving to
disk at that rate.  Visualization is often slower.

We also found that the compression for saved data can matter a lot and can
limit framerate due to CPU or disk bandwith.  Also if you want to not drop
frames periodically ("hiccups") over longer term (more than ~30s) then a
buffering strategy seems needed.

Our analysis of the various tools for saving OpenNI data is here:

https://wiki.ccs.neu.edu/display/GPC/OpenNI+and+PCL+Recording+Codes

The bottom line is that of the various options, if you want to stick with
something in standard PCL or openni then the one to go with is
pcl_openni_image.  It saves in pclzf format which doesn't take too much cpu
or disk bandwidth, and it implements a circular buffer to avoid hiccups.

We also recently released our imucam code

http://www.ccs.neu.edu/research/gpc/imucam/index.html

which has a utility for saving to pclzf+xml compatible with pcl_openni_image
but with more options.  Also we found that (at least in the version we were
testing a few months ago) pcl_openni_image could have some lag in
visualization because it uses a separate buffer for that and aims not to
drop frames.  Our imucam code buffers frames to disk but drops frames as
needed for visualization.

Best,
Marty



--
View this message in context: http://www.pcl-users.org/Carmine-1-09-support-tp4026939p4032212.html
Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
12345