辻です。
第3宿題での質問なのですが、三次元位置のrvizでの表示がうまくいきません。
僕がやった方法は、
roscore、USBカメラの起動、楕円検出プログラムの起動をした後、
$ rosrun rviz rviz
でrvizを立ち上げ、左下のAddボタンからPoint Cloudを選択し、Topicで「sensor_msgs/PointCloud」を選び
ました。
しかし実際それをすると「Status:ERROR」となり、表示されません。
$ rostopic echo sensor_msgs/PointCloud
ではターミナル上にちゃんと三次元位置の値が表示されます。
rxgraphでは、楕円検出の部分は
Node [/openrave_tfsender]
Publications:
* /Poses2D [opencv_fitting/Poses2D]
* /ellipse [geometry_msgs/Pose2D]
* /rosout [rosgraph_msgs/Log]
* /sensor_msgs/PointCloud [sensor_msgs/PointCloud]
Subscriptions:
* /image_rect_color [sensor_msgs/Image]
Services:
* /openrave_tfsender/get_loggers
* /openrave_tfsender/set_logger_level
Pid: 9116
Connections:
* topic: /rosout
* to: /rosout
* direction: outbound
* transport: TCPROS
* topic: /sensor_msgs/PointCloud
* to: /rostopic_9610_1306137074617
* direction: outbound
* transport: TCPROS
* topic: /sensor_msgs/PointCloud
* to: /rviz_1306137098296429432
* direction: outbound
* transport: TCPROS
* topic: /image_rect_color
* to:
http://tsuji-laptop32:45237/
* direction: inbound
* transport: TCPROS
となっていて、rvizの方は
Node [/rviz_1306137098296429432]
Publications:
* /rosout [rosgraph_msgs/Log]
* /initialpose [geometry_msgs/PoseWithCovarianceStamped]
* /move_base_simple/goal [geometry_msgs/PoseStamped]
Subscriptions:
* /sensor_msgs/PointCloud [sensor_msgs/PointCloud]
* /tf [unknown type]
Services:
* /rviz_1306137098296429432/get_loggers
* /rviz_1306137098296429432/reload_shaders
* /rviz_1306137098296429432/tf_frames
* /rviz_1306137098296429432/set_logger_level
Pid: 9725
Connections:
* topic: /rosout
* to: /rosout
* direction: outbound
* transport: TCPROS
* topic: /sensor_msgs/PointCloud
* to:
http://tsuji-laptop32:35654/
* direction: inbound
* transport: TCPROS
となっています。
rxgraphの図や上記のメッセージではPublish、Subscribeの関係は成り立っていると思いますが、表示されません。
それともこれはそもそもやり方が間違っているのでしょうか。ご回答よろしくお願いします。