GithubHelp home page GithubHelp logo

object_recognition_ros's People

Contributors

awesomebytes avatar hersh avatar tcavallari avatar v4hn avatar vrabaud avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

object_recognition_ros's Issues

problem with new rviz plugin

when building the ork_ros package from source I noticed this script:

86%] Built target object_recognition_msgs_gencpp
[ 87%] [ 88%] Building CXX object object_recognition_ros/src/info_service/CMakeFiles/object_information_server.dir/info_service.cpp.o
Building CXX object tod/src/CMakeFiles/ecto_detection_ectomodule.dir/detection/module.cpp.o
/home/rabbit/ros_ws/ork/src/object_recognition_ros/src/io/MsgAssembler.cpp: In member function ‘int object_recognition_core::MsgAssembler::process(const ecto::tendrils&, const ecto::tendrils&)’:
/home/rabbit/ros_ws/ork/src/object_recognition_ros/src/io/MsgAssembler.cpp:139:52: error: no match for ‘operator=’ in ‘object.object_recognition_msgs::RecognizedObject_std::allocator::point_c$
/home/rabbit/ros_ws/ork/src/object_recognition_ros/src/io/MsgAssembler.cpp:139:52: note: candidate is:
/usr/include/c++/4.6/bits/vector.tcc:161:5: note: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, Alloc>&) [with Tp = sensor_msgs::PointCloud2<std::allocator<vo$
/usr/include/c++/4.6/bits/vector.tcc:161:5: note: no known conversion for argument 1 from ‘const std::vector<boost::shared_ptr<sensor_msgs::PointCloud2
<std::allocator > > >’ to ‘const std::ve$
[ 88%] Building CXX object tod/src/CMakeFiles/ecto_detection_ectomodule.dir/common/adjacency_ransac.cpp.o
Linking CXX executable /home/rabbit/ros_ws/ork/devel/lib/object_recognition_ros/object_information_server
make[2]: *** [object_recognition_ros/src/io/CMakeFiles/io_ros_ectomodule.dir/MsgAssembler.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 88%] Building CXX object tod/src/CMakeFiles/ecto_detection_ectomodule.dir/common/maximum_clique.cpp.o

and then the build subsequently fails. Part of my problem was that curl was not installed and is listed as a dependency for the plugin. Maybe add to docs? For the time being I had to install and older release of ork_ros without the new plugin and everything went just fine.

badalloc

Hey over there,

I just discovered that the new PoseResult-API, which copies pointclouds instead of only pointers , (bae1c90) produces badalloc exceptions over here.

I did not yet look into this any further, but I'm pretty sure more than 1G of RAM should be enough for cluster detection...

Any ideas?

info_service always fails

The service that provides information about objects in the database of known objects always fails to retrieve meshes. It seems the 'mesh' attribute is never found.

OrkObject crashes RViz

When I add OrkObject plugin to RViz (under ROS Hydro, ORK from ROS ppa) and set topic to "/recognized_object_array", any message on this topic crashes RViz (Segmentation fault). Bagfile containing one message from the topic is available here.

Actionlib server crashed with linemod

Hello community,
I get a strange error. I can't use the actionlib server/client with linemod. Tabletop works fine.
First I start the server:rosrun object_recognition_ros server -crospack find object_recognition_linemod/conf/detection.ros.ork
Second I start the client: rosrun object_recognition_ros client
And this is my output:

[ INFO] [1477560425.096815042]: Connected to master at [localhost:11311]
[ INFO] [1477560425.100454190]: Initialized ROS. node_name: /object_recognition
[ INFO] [1477560425.545173251]: System already initialized. node_name: /object_recognition
[ INFO] [1477560425.810228513]: System already initialized. node_name: /object_recognition
[INFO] [WallTime: 1477560425.813119] ORK server configured
[INFO] [WallTime: 1477560425.817559] Subscribed to the recognized_object_array topic.
[INFO] [WallTime: 1477560425.831282] ORK server started
[ INFO] [1477560473.372871621]: Subscribed to topic:/camera/rgb/camera_info [queue_size: 1][tcp_nodelay: 0]
[ INFO] [1477560473.376344520]: Subscribed to topic:/camera/depth_registered/camera_info [queue_size: 1][tcp_nodelay: 0]
[ INFO] [1477560473.379594144]: Subscribed to topic:/camera/rgb/image_rect_color [queue_size: 1][tcp_nodelay: 0]
[ INFO] [1477560473.383015854]: Subscribed to topic:/camera/depth_registered/image_raw [queue_size: 1][tcp_nodelay: 0]
Reading the mesh file mesh.stl
Segmentation fault (core dumped)

After the detection failed, it creates an x�'���.stl (invalid encoding) file in my home archive.
Any ideas what can cause this problem? Thank you very much for your help.
If I use linemod continuous it works fine. Only the actionlib server/client result in this error.
I am using Ubuntu 14.04 and ros indigo.

Build error

After the last change the package wont build anymore:

Scanning dependencies of target io_ros_ectomodule
[ 92%] Building CXX object wg_perception/object_recognition_ros/src/info_cache/CMakeFiles/object_information_cache.dir/info_cache.cpp.o
[ 92%] Building CXX object wg_perception/object_recognition_ros/src/io/CMakeFiles/io_ros_ectomodule.dir/module.cpp.o
/home/stfn/devn/ros_dai_groovy_catkin/src/wg_perception/object_recognition_ros/src/info_cache/info_cache.cpp: In member function ‘void object_recognition_ros::ObjectInfoRamCache::getInfo(const ObjectType&, object_recognition_msgs::ObjectInformation&)’:
/home/stfn/devn/ros_dai_groovy_catkin/src/wg_perception/object_recognition_ros/src/info_cache/info_cache.cpp:156:18: error: ‘createMeshFromBinary’ is not a member of ‘shapes’
make[2]: *** [wg_perception/object_recognition_ros/src/info_cache/CMakeFiles/object_information_cache.dir/info_cache.cpp.o] Error 1
make[1]: *** [wg_perception/object_recognition_ros/src/info_cache/CMakeFiles/object_information_cache.dir/all] Error 2

OrkObjectDisplay RViz plugin crashes

and takes RViz down with it.

[rospack] Warning: no such package object_recognition_core
Qt has caught an exception thrown from an event handler. Throwing
exceptions from an event handler is not supported in Qt. You must
reimplement QApplication::notify() and catch all exceptions there.

terminate called after throwing an instance of 'pluginlib::LibraryLoadException'
  what():  rospack could not find the object_recognition_core package containing object_recognition_core::db::ObjectDb
Aborted (core dumped)

rviz plugin retrieving .ply instead of .stl form DB. Bad mesh shown.

When a recognised object is visualized using the ORK rviz_plugin, a weird mesh is shown, as seen in the image below.

I've tracked the problem to the line:

https://github.com/wg-perception/object_recognition_ros/blob/master/src/rviz_plugin/ork_object_display.cpp#L108

mesh_resource = object_info.get_field<std::string>("mesh_uri");

The mesh_resource contains the URL of the .ply file in the DB, instead of the .stl file.
If I change it to point to the .stl file, the mesh is visualized correctly.

Both files are generated and committed to the DB as attachments of the object by the default object capture and mesh generation procedure in ORK.

In the following image you can see the kinect point cloud in white, and the mesh retrieved from the DB in dark grey.

tabletop_result_point_cloud

app/server always escalates to SIGTERM on Ctrl+C

This happens only after at least one call to the action server. On Ctrl+C, the executions gets stuck on the final rospy.spin() until SIGTERM signal is received. It happens both with tabletop and tod detectors, so I think the problem is in the underlying ecto infraestructure. Another clue on this is that it seems to be a problem with a destroyed thread/mutex, and tabletop don't use threads at all (afaik):

terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >'
  what():  boost: mutex lock failed in pthread_mutex_lock: Invalid argument
[tabletop_object_recognition_server-7] escalating to SIGTERM

I tried also to manually handle the Ctrl+C signal as in here; surprisingly enough, it also scalate to SIGTERM but some times with different message:

[tabletop_object_recognition_server-7] escalating to SIGTERM
[senz3d-4] escalating to SIGTERM
[tabletop_object_recognition_server-7] escalating to SIGKILL
[rosout-1] killing on exit
[master] killing on exit
Shutdown errors:
 * process[tabletop_object_recognition_server-7, pid 370]: required SIGKILL. May still be running.
shutting down processing monitor...
... shutting down processing monitor complete

The non-server version of tabletop doesn't have this problem, but it calls the ecto cells in a completely different way (at least it seems so to me!).

Puzzling....

/recognized_object_array with empty objects

I have a similar problem like http://answers.ros.org/question/71833/having-problems-with-tod-object-detection/

While running 'rosrun object_recognition_core detection -c detection.ros.ork' I get the output:
**Starting object: 0
29 keypoints in 64 matches
done filling
RANSAC done with 19 inliers
RANSAC done with 0 inliers
***
***************** found 1 poses

But if I output the recognized objects with 'rostopic echo /recognized_object_array' I get always the output with empty objects like
header:
seq: 81
stamp:
secs: 1384859690
nsecs: 437189972
frame_id: ''
objects: []
cooccurrence: []

My setup is a Kinect over USB on a Ubuntu 13.04, 64bit

Camera calibration file not used

While I am running
roslaunch openni2_launch openni2.launch
I am getting warning.
[ INFO] [1555763947.524317570]: using default calibration URL
[ INFO] [1555763947.524611643]: camera calibration URL: file:///home/robot/.ros/camera_info/depth_Kinect_Microsoft.yaml
[ INFO] [1555763947.525154417]: Unable to open camera calibration file [/home/robot/.ros/camera_info/depth_Kinect_Microsoft.yaml]
[ WARN] [1555763947.525258971]: Camera calibration file /home/robot/.ros/camera_info/depth_Kinect_Microsoft.yaml not found.

How to avoid this warning.

OrkObject crashes RViz - ROS kinetic

Hi
I have installed ork and followed instructions. Every thing worked nice, recognize the coke can, until recently. Now when I try to add /recognized_object_array to rviz it crash (terminate called after throwing an instance of 'std::runtime_error' what(): Time is out of dual 32-bit range Aborted (core dumped)). I can echo the topic and see that it only recognizes the first item before it crash.

How can I fix this problem? There was two warning (1. /home/mias/ork/src/tabletop/src/object/assimp/code/Exporter.cpp:283:10: warning: ‘template class std::auto_ptr’ is deprecated) (2. ObjectRecognizer.cpp warning: the use of tmpnam' is dangerous, better usemkstemp') but my attempts to remedy this did not result in a solution.

object_recognition_capture capture error

I am new to ROS. I am using ubuntu 16.04 and Kinetic ROS. I followed all the instructions given in github.

Error 1: rosrun object_recognition_capture capture --seg_z_min 0.01 -oobject.bag
Registration? 1
Sync? 0
Traceback (most recent call last):
File "/home/robot/ws/src/ork_capture/apps/capture", line 75, in
run_plasm(options, plasm, locals=dict(plasm=plasm, segmentation=segmentation))
File "/home/robot/ws/src/ecto/python/ecto/opts.py", line 85, in run_plasm
sched.execute(options.niter)
ecto.CellException: exception_type CellException
[cell_name] = Source
[cell_type] = ecto::py::BlackBox
[function_name] = process_with_only_these_inputs
[type] = std::runtime_error
[what] = exception_type CellException
[cell_name] = <class 'ecto_openni.OpenNICapture'>
[cell_type] = ecto_openni::OpenNICapture
[function_name] = configure
[type] = std::runtime_error
[what] = Index out of range.0 devices found.

Help me to solve this error.

rviz cannot find the plugin described

When running rviz on desktop-full hydro I get:

[ERROR] [1378413840.591801589]:
PluginlibFactory: The plugin for class 'object_recognition_ros/OrkObjectDisplay' failed to load.
Error: Could not find library corresponding to plugin object_recognition_ros/OrkObjectDisplay.
Make sure the plugin description XML file has the correct name of the library and that the library actually exists.

the estimation pose of the Coke can is not correct

Excuse me, I would like to ask you a question. When I use this algorithm to identify the pose information of the Coke can, the white model is always jumping, resulting in the estimation pose of the Coke can is always changing. What methods should be used to prevent the white model from jumping? Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.