Open taketwo opened 9 years ago
As far as I can see, the depthview app currently has no separation between Qt interface and low-level USB interfacing. @teknotus do you plan to extract low-level code in a separate library and provide a high-level API? If yes, then PCL may depend on the library and PCL grabber will be a thin wrapper. If no, then we will need to put the low-level stuff directly into the grabber. (This is not something new, we have other grabbers working with USB directly.)
I always intended to have a library with several parts for low level, data processing, and GUI components as separate dependency trees. Trying to create a clean API before I even knew how to use it was too much to figure out at once though. All of the low level stuff is in one file that mostly has Qt specific stuff for communication with other parts of the app that could easily be turned into wrapper functions. There are still a few unknowns that complicate making a finished API, but if the data is easier to access then more people can try to figure out those issues. If there are any great existing API's that might be a good reference for me. I've been wanting to do some major refactoring anyways.
libfreenect perhaps?
FYI I started working on this, but it's not in a useful state yet. Hopefully in the next week.
Great to hear! By the way did you have a chance to integrate your patch for the depth stream formats support into the kernel?
I haven't submitted the kernel patch upstream partly because I wanted to have an explanation of what the difference is between the two depth formats is, but I haven't had time to finish my calibration tool yet. The other issue is that submitting patches to the kernel has to be done in a very specific way that almost requires doing it from the command line, and I have to do some work to setup those tools.
Not that I ever submitted a kernel patch... but if I could assist in some other way, let me know.
And a whole month goes by... I'm closer. I have about 100 lines of code for detecting every v4l2 camera, and gathering enough information to determine if it is a realsense camera, whether it's a color or depth camera, and what serial number it is. I have about another 200 lines that starts up two cameras and uses an epoll event loop to service them whenever a frame is ready. Some of the functionality that should be in the library is still in main, and it doesn't shut down the camera cleanly on exit yet so the camera needs to be reset (usb unplug replug) before it can be used again. I think that is too frustrating a situation to share to other programmers so I'm not releasing it yet, but it's been a month so I figured I should at least provide an update. There is a lot of other functionality in various pieces of code including depthview that I also want to add, but I'll probably release it as soon as the current features are stable.
@taketwo I believe this is fixed thanks to your work in #1230 and #1336.
Oh no, RealSense is a different family of cameras, so the issue is still open :(
I released some code about a week ago that might make things easier. I put an MIT license on it, but can cross license it the same as PCL if that helps. Much simpler code than the depthview app for getting to the data. Definitely not formulated as an easy to use library yet help would be appreciated. Still need a temperature calibration tool as the depth numbers change with temperature.
Intel just released an apache licensed library for the two released cameras, and a third soon to be released camera for Linux, OSX, and Windows.
@taketwo
Sorry to jump on an old thread but I'm unclear on this issue.
Does the PCL grabber shipping with PCL 1.7 support the opensource library ( https://github.com/IntelRealSense/librealsense) or is it still dependent on the official windows SDK and thus windows only?
Thanks
PCL has support only for the official windows SDK. And it is only present in master, not in any of the released versions.
Marking this as stale due to 30 days of inactivity. It will be closed in 7 days if no further activity occurs.
@kunaltyagi I'm not sure we can close this just yet because the current librealsense 2.0 support we have in our source tree has some issues with linux which have not been weeded out. We can always close this one and open a more up-to-date detailing the current issues.
Marking this as stale due to 30 days of inactivity. It will be closed in 7 days if no further activity occurs.
Intel will be releasing their new RealSense 3D camera soon. Unfortunately the list of officially supported OSes includes only one item, Windows 8. I already have a working PCL grabber that uses official SDK for Windows. It's more or less complete and will be integrated in the mainstream PCL soon.
A more interesting topic is support for RealSense cameras on Linux. @teknotus has been working on this for several months and has managed to get color, depth, and IR data from the camera on Linux. He also has a Qt-based app to view the streamed images.
In this issue I propose to discuss how we can integrate RealSense support into PCL for Linux.