Open theNerd247 opened 8 years ago
Hello,
I'm using Ubuntu 14.04.3 and it works well for me. Did you try the last version of ecto, ecto_image_pipeline?
Yes, here's what I ran:
$ sudo apt-get update
$ rosdep resolve ecto ecto_image_pipeline | grep -v "#" | xargs sudo apt-get install
Reading package lists... Done
Building dependency tree
Reading state information... Done
ros-indigo-ecto is already the newest version.
ros-indigo-ecto-image-pipeline is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
ok, by the way, libosmesa6-dev is used by ork_renderer, did you get its last version as well?
Yes they're at the newest version also. Are you using the ros-indigo-object-recognition-linemod package or are you building from the latest git source?
yeah I'm building from source all of these packages, but I will check the release and let you know By the way, which camera do you use?
I'm using a kinect2 with the iai_kinect2 ros package.
Any luck?
Have you solved the problem?? I am facing the exact same problem now
@theNerd247 Hi, can you try compiling ork_renderer (a dependency of LINEMOD) with GLUT instead of osmesa? Here is a discussion in ORK maillinglist about the same issue.
Sadly I can't currently. The project that used linemod was with work and I won't be able to work on the same system till this summer.
Hi all, I met the same issue (https://drive.google.com/file/d/0BwZMlUaV88n6ODNockdLSVNxR1k/view?usp=sharing). I'm using Ubuntu 14.04.3 LTS, ROS indigo, and Kinect (with libfreenect driver). If you want more information please let me know. Thanks in advance for your help!
Can any of you please detail the different instructions you are launching ? For ORK or for the camera. Thx.
Because I'm using ROS, so the instructions are the ROS part on the ORK tutorial, and especially the linemod which got me the error: http://wg-perception.github.io/ork_tutorials/tutorial03/tutorial.html
The specific instruction I used which caused the problem is the detection part in linemod tutorial above, i.e., rosrun object_recognition_core detection -c rospack find object_recognition_linemod
/conf/detection.ros.ork.
I met no problem before detection, with the given coke model and a coke.
Thanks!
I am using exactly the same steps for running LINEMOD.
On January 1, 2016, at 6:03 PM, YantianZha notifications@github.com wrote:
Because I'm using ROS, so the instructions are the ROS part on the ORK tutorial, and especially the linemod which got me the error: http://wg-perception.github.io/ork_tutorials/tutorial03/tutorial.html
The specific instruction I used which caused the problem is the detection part in linemod tutorial above, i.e., rosrun object_recognition_core detection -c rospack find object_recognition_linemod/conf/detection.ros.ork.
I met no problem before detection, with the given coke model and a coke.
Thanks!
— Reply to this email directly or view it on GitHub.
And I'm sure my libfreenect driver ran ok. Because I got the right value from the four subscribed camera topics (you would see them after rosrun object_recognition_core detection -c rospack find object_recognition_linemod/conf/detection.ros.ork)
ell, I cannot reproduce with Jade on Vivid. Can you please trace down the error by using gdb ? You can do so with ecto like that: https://plasmodic.github.io/ecto/ecto/usage/external/debugging.html Don't use rosrun, just do:
gdb --args python ./object_recognition_core/apps/detection -c ./object_recognition_linemod/conf/detection.ros.ork
The tutorial requires me to add the namespace of cell, but the cell name below is "pipeline1", which is actually from the conf file of detection (https://github.com/wg-perception/linemod/blob/master/conf/detection.ros.ork)? I'm new to these ecto/ork things. So can you give me more suggestions? Thanks!
Starting program: /usr/bin/python /home/yantian/ws/src/ork_core/apps/detection -c /home/yantian/ws/src/ork_linemod_new/conf/detection.ros.ork
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Traceback (most recent call last):
File "/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.19-gdb.py", line 63, in
[function_name] = process_with_only_these_inputs
[type] = std::bad_alloc
[what] = std::bad_alloc
[when] = While triggering param change callbacks
[Thread 0x7fffd1a75700 (LWP 16375) exited] [Thread 0x7fffd3278700 (LWP 16368) exited] [Thread 0x7fffd2a77700 (LWP 16369) exited] [Thread 0x7fffc3fff700 (LWP 16378) exited] [Thread 0x7fffd1274700 (LWP 16376) exited] [Thread 0x7fffc37fe700 (LWP 16379) exited] [Thread 0x7fffd0a73700 (LWP 16377) exited] [Thread 0x7fffd5196700 (LWP 16362) exited] [Thread 0x7fffab396700 (LWP 16435) exited] [Thread 0x7fffaa394700 (LWP 16433) exited] [Thread 0x7ffff7fc5740 (LWP 16355) exited] [Thread 0x7fffd2276700 (LWP 16370) exited] Inferior 1 (process 16355) exited with code 01 break
@YantianZha Do you think you can provide us a rosbag of your camera's capture (point cloud and rgb and tf) so that we could debug LINEMOD with your setting? Thanks.
Thanks @hris2003 . Here is the link to my bag file: https://drive.google.com/file/d/0B6lGtF9IuZWCV2tzTHl6bXRFemM/view?usp=sharing The file is generated by running freenect.launch, roscore, and rqt_reconfigure (in ORK tutorial). Therefore you would see the registered pointcloud2 in RViz.
Then after training the coke model, using "rosrun object_recognition_core detection -c rospack find object_recognition_linemod
/conf/detection.ros.ork", setting up "/camera_depth_optical_frame", you would see the error.
Hi,
So I run ork_linemod with your bag, and it works. No errors, no warning. Rviz shows the ork_objects detected in its window. Attached is a screenshot of that. One particular setting in my system is that ork_renderer is compiled with GLUT and not with osmesa.
For your problem, I suspect either something's wrong with the database or maybe ork_renderer is messing up. I recommend you to restart from zero, i.e.
Good luck.
Ha Dang.
On Sat, Jan 2, 2016 at 6:22 PM, YantianZha notifications@github.com wrote:
Thanks @hris2003 https://github.com/hris2003 . Here is the link to my bag file: https://drive.google.com/file/d/0B6lGtF9IuZWCV2tzTHl6bXRFemM/view?usp=sharing The file is generated by running freenect.launch, roscore, and rqt_reconfigure (in ORK tutorial). Therefore you would see the registered pointcloud2 in RViz.
— Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-168409175 .
Some lines in https://groups.google.com/d/msgid/object-recognition-kitchen/12546f19-4033-4ecf-a854-54d91bebf73d%40googlegroups.com need to be changed:
Then go to src/CMakeLists.txt and block these few line in the header
"Then go to src/CMakeLists.txt and block these few line in the header" --> " Then go to src/renderer3d.cpp and block these few line in the header". If I'm wrong please correct it.
For 6, I meant run the freenect.launch.
And yes, the concerned file is renderer3d.cpp (makhabhi@isu.edu did send a followup message to correct his instruction).
Ha Dang.
On Sat, Jan 2, 2016 at 10:10 PM, YantianZha notifications@github.com wrote:
"...5. run the linemod training phrase
- run your camera's capture node
- run the linemod detection phrase..."
Why I need to do " run your camera's capture node" ? Capture is used for creating the mesh ( http://wg-perception.github.io/ork_tutorials/tutorial01/tutorial.html#prepare-object-s-mesh)? And your step 5 training DO NEED a given mesh model as the input.
And the linemod usage tutorial mentions nothing about "run capture node" ( http://wg-perception.github.io/ork_tutorials/tutorial03/tutorial.html)
BTW: Some lines in https://groups.google.com/d/msgid/object-recognition-kitchen/12546f19-4033-4ecf-a854-54d91bebf73d%40googlegroups.com need to be changed:
Then go to src/CMakeLists.txt and block these few line in the header
if USE_GLUT
else
include "renderer3d_impl_osmesa.h"
endif
"Then go to src/CMakeLists.txt and block these few line in the header" --> " Then go to src/renderer3d.cpp and block these few line in the header". If I'm wrong please correct it.
— Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-168428334 .
I just did everything again, including reinstalling ecto. The error still emerged. Different from my previous trial using "mkdir ws && cd ws wstool init src https://raw.github.com/wg-perception/object_recognition_core/master/doc/source/ork.rosinstall cd src && wstool update -j8 cd .. && rosdep install --from-paths src -i -y catkin_make source devel/setup.bash" This time I install everything manually (otherwise, some ork packages would be installed in opt/ros/.../share folder which are incomplete.
Further, I met same error (ecto.cellException) in using "rosrun object_recognition_capture orb_template -o my_textured_plane", following http://wg-perception.github.io/object_recognition_core/quickguide.html#detect-objects. But considering that the linemod tutorial did not mention using "object_recognition_capture", I don't know whether this matters. Thanks!
I think it matters as it depends on by which library package you are creating your database in the training phase. (osmesa or glut). If you did not created your database with glut, then linemod would be generating the same error message you received. The linemod is not working currently with osmesa. If you have created your database by ork_renderer using osmesa, the tabletop will still work. U can give it a try.
Please refer to this page where I have tried to summarize how we can run the linemod. https://groups.google.com/forum/#!msg/object-recognition-kitchen/aS9YlKJxOnc/siFhK4uKDwAJ If you feel any problem, I will be happy to help (Also sorry for the mistake, I have already provided a follow-up message)
Thank you.
@YantianZha Do you think you can try ork on a different computer where there's not yet ork installed?
Yes it worked. Thank you so much all guys!
And @jontromanab , I'm sure I deleted the object firstly as what you suggested in your post. But I did not delete the overall data base (the mesh is still in it, delete object cmd can't delete the mesh)
I think the reason is, while I changed a list of files in renderer folder, and then ran catkin_make, my system still "make with the previous configuration". For example, you may note before that, if you just change a little part in a "certain place" in a catkin package, catkin_make would not actually "see" it, but just passed the make process.
Thanks again :)
Hi @jontromanab, Did you try try training more than one models (stl form) with glut? Did you meet "freeglut illegal glutInit() reinitialization attempt"? Thanks!
Hello @YantianZha ....Sorry for the late reply. Quite busy with the other stuffs. Yes. I think I have trained one coke can and one pringles chip box and it detected them separately. Though I am not quite sure, I will surely check it up tomorrow and let you know.
Hi @YantianZha Yes. I am having the same problem while training and trying to detect more than 1 object freeglut illegal glutInit() reinitialization attempt
Have you got any solution yet?
try OSMesa
catkin_make --cmake-args "-DUSE_GLUT=OFF"
I have the exact problem described in this thread, I can't however run the training after compiling from source
training gives error:
-----------------------------------------------------
Training 1 objects.
computing object_id: b59867803c30d34e08e75141ea000329
Traceback (most recent call last):
File "/home/roar/catkin_ws/src/object_recognition_core/apps/training", line 39, in
[cell_type] = ecto::py::BlackBox
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = exception_type CellException [cell_name] = <class 'object_recognition_linemod.ecto_cells.ecto_linemod.Trainer'>
[cell_type] = ecto_linemod::Trainer
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = value type is 172215184 not 2 -----------------------------------------------------
Sounds like there's a loop running wild. The bold value changes every time I try to run the program.
Any ideas on what might be the problem?
@theNerd247 , @jontromanab Did you guys ever succeeded in using ORK with the Kinectv2 and libfreenect2 ?
@trykks Have you been able to resolve the issue? I'm having the same problem!
I'm afraid not. I abandoned it completely due to lack of time in our project.
This is due to mesa issues that hasn't been solved yet. You can use Glut instead, just change the CMakelist.txt like this : https://github.com/JimmyDaSilva/ork_renderer/commit/4bdd53e3c418e7d02be0212ece04598619b4323a
@JimmyDaSilva I've done what you said and it doesn't work! do you have any other suggestion?
Well what is the error exactly?
the error is this one:
Training 2 objects.
computing object_id: 7a5b1640af7fd6e5b6fc990f45000b2c
Traceback (most recent call last):
File "/home/marti/catkin_ws/src/object_recognition_core/apps/training",
line 39, in
[cell_type] = ecto::py::BlackBox
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = exception_type CellException [cell_name] = <class 'object_recognition_linemod.ecto_cells.ecto_linemod.Trainer'>
[cell_type] = ecto_linemod::Trainer
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = value type is 50032384 not 2
that's when I'm trying to train the objects.
2016-05-04 10:50 GMT+01:00 Jimmy DA SILVA notifications@github.com:
Well what is the error exactly?
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216815281
I am no expert here since the error doesn't help a lot but I can try to help.
Can you please:
And tell me which training fails. The problem could come from different sources. Maybe the meshes are wrong, maybe it's a glut issue, ... can't really tell until you try this.
Now it's working. I would be able to train the objects. I install it from the repositories and the training works. Then, what I try first is do the detection using the source and I get a diferent error that it's is no from ork, it's from the opencv. The error is this one:
[ INFO] [1462362900.067559485]: Initialized ROS. node_name: /object_recognition_server [ INFO] [1462362901.970808495]: System already initialized. node_name: /object_recognition_server [ INFO] [1462362901.980498554]: Subscribed to topic:/camera/depth_registered/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.989085679]: Subscribed to topic:/camera/rgb/image_rect_color [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.993443985]: Subscribed to topic:/camera/rgb/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.997705420]: Subscribed to topic:/camera/depth_registered/image_raw [queue_size: 1][tcp_nodelay: 0] OpenCV Error: Bad argument (Invalid pointer to file storage) in cvGetRootFileNode, file /home/marti/ork/src/opencv-2.4.12/modules/core/src/persistence.cpp, line 803
do you know what's happening here?
thanks in advance
2016-05-04 12:43 GMT+01:00 Jimmy DA SILVA notifications@github.com:
I am no expert here since the error doesn't help a lot but I can try to help.
Can you please:
- remove all the objects from the database
- add the coke can from the tutorials to the database
- try training
- remove all objects again
- add one of your objects
- try training
- add the coke can again to be the second object available
- try training
And tell me which training fails. The problem could come from different sources. Maybe the meshes are wrong, maybe it's a glut issue, ... can't really tell until you try this.
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216836224
by the way, the training from the source it's is not working, I'm having the same error. I'll try what you've said.
2016-05-04 12:58 GMT+01:00 Marti de castro cros < marti.de.castro.cros@gmail.com>:
Now it's working. I would be able to train the objects. I install it from the repositories and the training works. Then, what I try first is do the detection using the source and I get a diferent error that it's is no from ork, it's from the opencv. The error is this one:
[ INFO] [1462362900.067559485]: Initialized ROS. node_name: /object_recognition_server [ INFO] [1462362901.970808495]: System already initialized. node_name: /object_recognition_server [ INFO] [1462362901.980498554]: Subscribed to topic:/camera/depth_registered/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.989085679]: Subscribed to topic:/camera/rgb/image_rect_color [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.993443985]: Subscribed to topic:/camera/rgb/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.997705420]: Subscribed to topic:/camera/depth_registered/image_raw [queue_size: 1][tcp_nodelay: 0] OpenCV Error: Bad argument (Invalid pointer to file storage) in cvGetRootFileNode, file /home/marti/ork/src/opencv-2.4.12/modules/core/src/persistence.cpp, line 803
do you know what's happening here?
thanks in advance
2016-05-04 12:43 GMT+01:00 Jimmy DA SILVA notifications@github.com:
I am no expert here since the error doesn't help a lot but I can try to help.
Can you please:
- remove all the objects from the database
- add the coke can from the tutorials to the database
- try training
- remove all objects again
- add one of your objects
- try training
- add the coke can again to be the second object available
- try training
And tell me which training fails. The problem could come from different sources. Maybe the meshes are wrong, maybe it's a glut issue, ... can't really tell until you try this.
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216836224
I'm having the same error everytime I try to train.
Training 1 objects.
computing object_id: ec724c057ef20fc889510b60de003ca8
Traceback (most recent call last):
File "/home/marti/ork/src/object_recognition_core/apps/training", line
39, in
[cell_type] = ecto::py::BlackBox
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = exception_type CellException [cell_name] = <class 'object_recognition_linemod.ecto_cells.ecto_linemod.Trainer'>
[cell_type] = ecto_linemod::Trainer
[function_name] = process_with_only_these_inputs
[type] = std::bad_alloc
[what] = std::bad_alloc
any other ideas?
thanks
2016-05-04 13:00 GMT+01:00 Marti de castro cros < marti.de.castro.cros@gmail.com>:
by the way, the training from the source it's is not working, I'm having the same error. I'll try what you've said.
2016-05-04 12:58 GMT+01:00 Marti de castro cros < marti.de.castro.cros@gmail.com>:
Now it's working. I would be able to train the objects. I install it from the repositories and the training works. Then, what I try first is do the detection using the source and I get a diferent error that it's is no from ork, it's from the opencv. The error is this one:
[ INFO] [1462362900.067559485]: Initialized ROS. node_name: /object_recognition_server [ INFO] [1462362901.970808495]: System already initialized. node_name: /object_recognition_server [ INFO] [1462362901.980498554]: Subscribed to topic:/camera/depth_registered/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.989085679]: Subscribed to topic:/camera/rgb/image_rect_color [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.993443985]: Subscribed to topic:/camera/rgb/camera_info [queue_size: 1][tcp_nodelay: 0] [ INFO] [1462362901.997705420]: Subscribed to topic:/camera/depth_registered/image_raw [queue_size: 1][tcp_nodelay: 0] OpenCV Error: Bad argument (Invalid pointer to file storage) in cvGetRootFileNode, file /home/marti/ork/src/opencv-2.4.12/modules/core/src/persistence.cpp, line 803
do you know what's happening here?
thanks in advance
2016-05-04 12:43 GMT+01:00 Jimmy DA SILVA notifications@github.com:
I am no expert here since the error doesn't help a lot but I can try to help.
Can you please:
- remove all the objects from the database
- add the coke can from the tutorials to the database
- try training
- remove all objects again
- add one of your objects
- try training
- add the coke can again to be the second object available
- try training
And tell me which training fails. The problem could come from different sources. Maybe the meshes are wrong, maybe it's a glut issue, ... can't really tell until you try this.
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216836224
So are you using ORK from the sources or from the release ? If using sources, using GLUT or Mesa ?
I've try in both ways. From release it works properly. Then, I have try to run it from the source and I get all the these errors. And I'm using GLUT.
2016-05-04 15:28 GMT+01:00 Jimmy DA SILVA notifications@github.com:
So are you using ORK from the sources or from the release ? If using sources, using GLUT or Mesa ?
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216882379
Alright keep using the sources then.
Are you sure you changed the CMakelist.txt of ork_renderer
according to this : https://github.com/JimmyDaSilva/ork_renderer/commit/4bdd53e3c418e7d02be0212ece04598619b4323a
yes, I'm sure about that. I have been looking for the error and it seems that it's something related with the inputs, maybe somthing related with the mesh but I've already try to delete all the objects and add them again, to reinstall the database and nothing works.
2016-05-04 15:52 GMT+01:00 Jimmy DA SILVA notifications@github.com:
Alright keep using the sources then. Are you sure you changed the CMakelist.txt of ork_renderer according to this : JimmyDaSilva/ork_renderer@4bdd53e https://github.com/JimmyDaSilva/ork_renderer/commit/4bdd53e3c418e7d02be0212ece04598619b4323a
— You are receiving this because you commented. Reply to this email directly or view it on GitHub https://github.com/wg-perception/linemod/issues/18#issuecomment-216889697
To find all the objects still existing:
rosrun object_recognition_core object_search.py
Then remove them with:
rosrun object_recognition_core object_delete.py OBJECT_ID
That way we will make sure everything has been deleted (mesh, trained data, etc...) Then add the coke.stl from the tutorials and trying again
I met the same problem,line 24, in
@theNerd247 @nlyubova @hris2003 @YantianZha
hello, I met the same problem too.It was ok when i use the coke.stl, but when i use my own mesh file, erro happened:
` File "/home/zhy/ork_ws/src/object_recognition_core/apps/detection", line 24, in
[cell_name] = pipeline1
[function_name] = process_with_only_these_inputs
[type] = std::bad_alloc
[what] = std::bad_alloc
[when] = While triggering param change callbacks ` (I created my own object with blender)
Currently LINE-MOD is crashing with the following error:
I ran the current master branch on another machine (Ubuntu 14.04.2) which hasn't been updated since August 2015 and linemod works fine. So then I grabbed all the packages that updated on my system and cross referenced it with the list of system dependencies that
rosdep
shows forobject_recognition_linemod
and libosmesa6-dev is the only package that is showing up. So I'm assuming a system update to libosmesa6-dev is causing the problem. However downgrading to libosmesa6-dev.10.1.0-4ubuntu5 doesn't seem to help anything.