Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a family of data buffers useful for temporal filtering in grabbers #1212

Merged
merged 1 commit into from
May 3, 2015

Conversation

taketwo
Copy link
Member

@taketwo taketwo commented Apr 18, 2015

This pull request adds a family of data buffers. All the buffers share a common interface and allow data insertion and retrieval. On top of that, some of the buffers compute certain statistics about the underlying data over a certain window, transparently for the user. This is useful for implementation of temporal filtering (average, median) in IO grabbers.

These classes are shared by both RealSense and DepthSense grabbers, which I will be merging soon.

As usual, the classes are covered with unit tests.

@Isabelp
Copy link

Isabelp commented Apr 18, 2015

Hi Sergey,

I have seen you are working with the Intel Realsense sensor and pcl. I have seen your code: https://github.com/taketwo/rs , one of the requirements is the Realsense SDK for windows. There is still no way to work with pcl and Realsense in linux, is it?

I will appreciate any clue you can given me.

Thanks,

@taketwo
Copy link
Member Author

taketwo commented Apr 19, 2015

Hi,

Well, to my knowledge there is no convenient way as they do not provide a Linux version of their SDK. You may experiment with standard uvcvideo drivers though, they seem to pick up the camera. Here is how the depth stream looks in VLC:

screenshot from 2015-04-19 12-08-51

There is some aliasing (at least in the way it is displayed) and certainly no control over camera parameters... But this may be a starting point.

Cheers,
Sergey

@Isabelp
Copy link

Isabelp commented Apr 19, 2015

Thanks Sergey!

2015-04-19 12:16 GMT+02:00 Sergey Alexandrov [email protected]:

Hi,

Well, to my knowledge there is no convenient way as they do not provide a
Linux version of their SDK. You may experiment with standard v4l2 drivers
though, they seem to pick up the camera. Here is how the depth stream looks
in VLC:

[image: screenshot from 2015-04-19 12-08-51]
https://cloud.githubusercontent.com/assets/1241736/7219032/7b3f47b2-e68d-11e4-993f-7b335dbe185e.png

There is some aliasing (at least in the way it is displayed) and certainly
no control over camera parameters... But this may be a starting point.

Cheers,
Sergey


Reply to this email directly or view it on GitHub
#1212 (comment)
.

Isabel C. Patiño Mejía
M.Sc. Mechatronics

@teknotus
Copy link

@Isabelp @taketwo I've gotten a point cloud out from Linux, and I can control the camera settings. Hacked together solution at the moment for getting point clouds, but I'm slowly improving my tools. Linux video won't select any format it doesn't know about so it was impossible to get anything other than the YUY2 format. With the original camera firmware bug in the UVC interface descriptor causes drivers to pick the second format instead of of the YUY2 format. I wrote a Linux kernel patch that just adds the extra formats, and that is all that is needed to get both depth formats, both infrared formats, and the two combined depth + infrared formats. There is also a userspace libusb based libuvc fork that can extract all the formats from the camera from Linux. I didn't write the patches, but I have tested the result myself. It is suspected to also work on Mac OS X, but I haven't gotten anyone to confirm that for me yet. Let me know if there is any way I can help. Here is my blog post on getting a point cloud out using ROS which uses PCL behind the scenes. http://solsticlipse.com/2015/03/31/intel-real-sense-3d-on-linux-macos.html I covered the camera controls in the post before that. My email is at the end of my blog post if you need to reach me directly.

@taketwo
Copy link
Member Author

taketwo commented Apr 26, 2015

@teknotus great work! I propose to move the Linux grabber discussion to #1215.

@jspricke Could you have a look at this pull request and give it a go?

@peyvansystems
Copy link

Hi Sergey,
thanks for publishing this code. I tried compiling it with under a 64bit environment and it failed. Is this 32bit only?

@taketwo
Copy link
Member Author

taketwo commented Apr 27, 2015

@peyvansystems Are you talking specifically about the code in this pull request? No, it's architecture agnostic.

@peyvansystems
Copy link

hmmm, tried compiling RS, but its complaining about vtk, which is installed and did compile just fine with PCL cmake. So my first inclination was issues with 64 bit. i attached the build errors below. cmake gui was not much help either. My apologies if this is not the place to paste error messages.

Kia.

The following configuration files were considered but not accepted:

D:/code/thirdparty/build/VTK/VTKConfig.cmake, version: 6.3.0 (64bit)
D:/code/thirdparty/build/VTK/VTKConfig.cmake, version: 6.3.0 (64bit)

Call Stack (most recent call first):
D:/code/thirdparty/build/pcl/PCLConfig.cmake:499 (find_VTK)
D:/code/thirdparty/build/pcl/PCLConfig.cmake:688 (find_external_library)
CMakeLists.txt:9 (find_package)

CMake Error at D:/code/thirdparty/build/pcl/PCLConfig.cmake:44 (message):
visualization is required but vtk was not found
Call Stack (most recent call first):
D:/code/thirdparty/build/pcl/PCLConfig.cmake:529 (pcl_report_not_found)
D:/code/thirdparty/build/pcl/PCLConfig.cmake:688 (find_external_library)
CMakeLists.txt:9 (find_package)

@taketwo
Copy link
Member Author

taketwo commented Apr 27, 2015

Apparently, this has nothing to do with rs or this pull request. I would suggest searching through PCL-users mailing list archive, it's likely that somebody faced similar error.

@PointCloudLibrary PointCloudLibrary locked and limited conversation to collaborators Apr 27, 2015
jspricke added a commit that referenced this pull request May 3, 2015
Add a family of data buffers useful for temporal filtering in grabbers
@jspricke jspricke merged commit ffe5c67 into PointCloudLibrary:master May 3, 2015
@taketwo taketwo deleted the buffers branch May 7, 2015 07:45
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants