-
Notifications
You must be signed in to change notification settings - Fork 33
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
libfreenect2pclgrabber not working #18
Comments
Hi, why did you change names? |
thanks for your reply. no solid reason. just was making own project so that's y named it .... i simply copied code from test.cpp and created pcl.cpp and copied code from CMakelist.txt. and then build the project first running Cmake .. and then make and then got the error. I have attached complete folder. I had installed previously libfreenect2 and freenect2 using this |
ok. Also pelase download my repo and try to build it with no modification first. Just create a build folder, move into it and run cmake .. and then make |
when i run sudo make install in the libfreenect2 build folder i got this output noaman@Rime:~/libfreenect2/build$ sudo make install |
ok good, then continue with the next step |
then after downloading your repo without any modification i simply created build folder and ran cmake.. and i got this CMake Error: The following variables are used in this project, but they are set to NOTFOUND. -- Configuring incomplete, errors occurred! |
thanks for your prompt response ... |
why it is not able to find it? Will i have to add something else in CMakelist.txt ? |
You did not install the library in the usual paths but in your own specific path so either you install them in /usr/local/ by setting in the libfreenect cmake file the CMAKE_INSTALL_PREFIX to that path or you edit my cmake option to find the library in your path. In both cases you can do that by using ccmake .. in the build folder. This opens a simple gui to set the variables |
ok i added these two lines and copied libfreenect2 under the same path. now it build with the warning. Is it fine ? WARNING: Target "Kinect2Grabber" requests linking to directory "/usr/local/lib". Targets may link only to libraries. CMake is dropping the item. |
no don't modify the cmake. Just set the options in the cmake as I told you. |
thanks a lot sir. it is working now. sir it is giving value of delta? may i ask what is this ?
I shall be very thankful for your guidance. |
If you look at test.cpp you see how it works. Just include the k2g.h and the other includes in your project. |
so it mean i can use the same test.cpp with point cloud library to extract point cloud and perform the required process or there are some other steps involved too. I am searching but finding not a reasonable procedure. Please elaborate if you know as I am totally new with PCL and Kinect2. Thanks in advance ... |
Hi, as you can see In the while cycle I grab the cloud and the image frames. You can do the same in your code to get the frames and the PCL point cloud. If you don't understand the test.cpp code I suggest first to look a bit more into C++ programming. The delta is the time passed between grabbing two clouds and serialization is used if you want to store the cloudson disk. If you read the help in the code you will find everything explained. |
ok sir i will check .. thanks a lot for your precious time ... i will disturb you if i have any issue regarding this ... again thanks a lot |
however i m not finding any help in the code however I am trying to get it .... |
one more thing. it keeps continously running. moreover when i press s to save a cloud then nothing happens. how can i save a cloud and in which format ? |
When you press s and have compiled my code with the WITH_SERIALIZATION cmake option, the program starts to store in a file in the same folder as the executable a stream of point clouds. This is just a sequence of pcl points with some metadata at the beginning. The code is made as example to show how to use the grabber; obviously it just runs forever. Just take from the code what you need and write your own program using the extracted data from the grabber |
ok sir how can I increase the size of the window this 3D viewer. I am making my own project now and I will soon share with you my effort. thanks in advance. |
plus sir I didn't get this point that "cmake option with the WITH_SERIALIZATION" if you can explain I shall be thankful to you |
to change the size of the viewer have a look at the pcl doxygen 2016-08-03 10:43 GMT+02:00 nomi321 notifications@github.com:
Eng G. Dabisias, PhD Student |
sir can u tell me that how can i save multiple clouds using loops on disk ? this question has nothing to do with the subject but I m just requesting for help |
thanx sir i have done it by myself ... |
3 similar comments
thanx sir i have done it by myself ... |
thanx sir i have done it by myself ... |
thanx sir i have done it by myself ... |
Sir I need little help from you please it will hardly take 5 minutes. in this tutorial there is function named as loadHist bool here instead of providing the path of vfh header file on disk, I want to provide the vfh descriptor computed in my programme. how can i do this ? Sir I am stucked in this issue since long and finding no solution. thanks in advance. |
Hi, Anyway I never used it but iask here http://www.pcl-users.org/ |
when i build test.cpp i get this error.... here test.cpp is named as pcl.cpp.
installed libfreenect2 successfully. protonect working also......
please reply. I am stucked with grabber. i shall be thankful to you . Keep in mind that m very new to this ... so please elaborate ur answer...
CMakeFiles/Kinect2Grabber.dir/pcl.cpp.o: In function
K2G::updateCloud(boost::shared_ptr<pcl::PointCloud<pcl::PointXYZRGB> >)': pcl.cpp:(.text._ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE[_ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE]+0x42): undefined reference to
libfreenect2::SyncMultiFrameListener::waitForNewFrame(std::map<libfreenect2::Frame::Type, libfreenect2::Frame*, std::lesslibfreenect2::Frame::Type, std::allocator<std::pair<libfreenect2::Frame::Type const, libfreenect2::Frame*> > >&)'pcl.cpp:(.text.ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE[ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE]+0x152): undefined reference to
libfreenect2::Registration::apply(libfreenect2::Frame const*, libfreenect2::Frame const*, libfreenect2::Frame*, libfreenect2::Frame*, bool, libfreenect2::Frame*, int*) const' pcl.cpp:(.text._ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE[_ZN3K2G11updateCloudEN5boost10shared_ptrIN3pcl10PointCloudINS2_11PointXYZRGBEEEEE]+0x331): undefined reference to
libfreenect2::SyncMultiFrameListener::release(std::map<libfreenect2::Frame::Type, libfreenect2::Frame*, std::lesslibfreenect2::Frame::Type, std::allocator<std::pair<libfreenect2::Frame::Type const, libfreenect2::Frame*> > >&)'CMakeFiles/Kinect2Grabber.dir/pcl.cpp.o: In function
main': pcl.cpp:(.text.startup+0x5aa): undefined reference to
libfreenect2::SyncMultiFrameListener::waitForNewFrame(std::map<libfreenect2::Frame::Type, libfreenect2::Frame*, std::lesslibfreenect2::Frame::Type, std::allocator<std::pair<libfreenect2::Frame::Type const, libfreenect2::Frame*> > >&)'pcl.cpp:(.text.startup+0x68d): undefined reference to
libfreenect2::Registration::apply(libfreenect2::Frame const*, libfreenect2::Frame const*, libfreenect2::Frame*, libfreenect2::Frame*, bool, libfreenect2::Frame*, int*) const' pcl.cpp:(.text.startup+0xa44): undefined reference to
libfreenect2::Registration::apply(libfreenect2::Frame const, libfreenect2::Frame const, libfreenect2::Frame_, libfreenect2::Frame_, bool, libfreenect2::Frame_, int_) const'pcl.cpp:(.text.startup+0xc3f): undefined reference to
libfreenect2::SyncMultiFrameListener::release(std::map<libfreenect2::Frame::Type, libfreenect2::Frame*, std::less<libfreenect2::Frame::Type>, std::allocator<std::pair<libfreenect2::Frame::Type const, libfreenect2::Frame*> > >&)' CMakeFiles/Kinect2Grabber.dir/pcl.cpp.o: In function
K2G::K2G(Processor, bool, std::string)':pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x2b): undefined reference to
libfreenect2::Freenect2::Freenect2(void*)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x50): undefined reference to
libfreenect2::SyncMultiFrameListener::SyncMultiFrameListener(unsigned int)'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[ZN3K2GC5E9ProcessorbSs]+0x99): undefined reference to
libfreenect2::Frame::Frame(unsigned long, unsigned long, unsigned long, unsigned char*)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xc2): undefined reference to
libfreenect2::Frame::Frame(unsigned long, unsigned long, unsigned long, unsigned char)'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xeb): undefined reference to
libfreenect2::Frame::Frame(unsigned long, unsigned long, unsigned long, unsigned char_)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x11e): undefined reference to
libfreenect2::Freenect2::enumerateDevices()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[ZN3K2GC5E9ProcessorbSs]+0x173): undefined reference to
libfreenect2::OpenGLPacketPipeline::OpenGLPacketPipeline(void_, bool)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x181): undefined reference to
libfreenect2::Freenect2::openDevice(std::string const&, libfreenect2::PacketPipeline const)'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x1a4): undefined reference to
libfreenect2::Freenect2::getDefaultDeviceSerialNumber()' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x215): undefined reference to
libfreenect2::CpuPacketPipeline::CpuPacketPipeline()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[ZN3K2GC5E9ProcessorbSs]+0x252): undefined reference to
libfreenect2::CpuPacketPipeline::CpuPacketPipeline()' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x260): undefined reference to
libfreenect2::Freenect2::openDevice(std::string const&, libfreenect2::PacketPipeline const)'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0x3de): undefined reference to
libfreenect2::Registration::Registration(libfreenect2::Freenect2Device::IrCameraParams, libfreenect2::Freenect2Device::ColorCameraParams)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xcbc): undefined reference to
libfreenect2::CpuPacketPipeline::CpuPacketPipeline()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xcc7): undefined reference to
libfreenect2::Freenect2::openDefaultDevice(libfreenect2::PacketPipeline const_)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xce0): undefined reference to
libfreenect2::OpenGLPacketPipeline::OpenGLPacketPipeline(void*, bool)'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xceb): undefined reference to
libfreenect2::Freenect2::openDefaultDevice(libfreenect2::PacketPipeline const_)' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xd04): undefined reference to
libfreenect2::CpuPacketPipeline::CpuPacketPipeline()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xe1f): undefined reference to
libfreenect2::Frame::~Frame()' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xe2c): undefined reference to
libfreenect2::Frame::~Frame()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xe39): undefined reference to
libfreenect2::Frame::~Frame()' pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xe4e): undefined reference to
libfreenect2::SyncMultiFrameListener::~SyncMultiFrameListener()'pcl.cpp:(.text._ZN3K2GC2E9ProcessorbSs[_ZN3K2GC5E9ProcessorbSs]+0xe56): undefined reference to
libfreenect2::Freenect2::~Freenect2()' CMakeFiles/Kinect2Grabber.dir/pcl.cpp.o: In function
K2G::~K2G()':pcl.cpp:(.text._ZN3K2GD2Ev[_ZN3K2GD5Ev]+0x25): undefined reference to
libfreenect2::Frame::~Frame()' pcl.cpp:(.text._ZN3K2GD2Ev[_ZN3K2GD5Ev]+0x31): undefined reference to
libfreenect2::Frame::~Frame()'pcl.cpp:(.text._ZN3K2GD2Ev[_ZN3K2GD5Ev]+0x3a): undefined reference to
libfreenect2::Frame::~Frame()' pcl.cpp:(.text._ZN3K2GD2Ev[_ZN3K2GD5Ev]+0x50): undefined reference to
libfreenect2::SyncMultiFrameListener::~SyncMultiFrameListener()'pcl.cpp:(.text._ZN3K2GD2Ev[ZN3K2GD5Ev]+0x58): undefined reference to`libfreenect2::Freenect2::~Freenect2()'
collect2: error: ld returned 1 exit status
make[2]: ** [Kinect2Grabber] Error 1
make[1]: *** [CMakeFiles/Kinect2Grabber.dir/all] Error 2
make: *** [all] Error 2
The text was updated successfully, but these errors were encountered: