start-jsk / jsk_apc

Other
36 stars 35 forks source link

掴んだものをみて画像をとるプログラム #9

Closed k-okada closed 9 years ago

umoji commented 9 years ago

画像をとるプログラムなのですが、コードの書き方が分かりません。 baxterを使って画像をとる場合、どういったコードを書けばよいのでしょうか。

wkentaro commented 9 years ago

ここで紹介されているcamera_control.pyとかが参考になると思います。 https://github.com/RethinkRobotics/sdk-docs/wiki/Camera-Control-Example

YuOhara commented 9 years ago

できたら私も使いたいですね。 http://wiki.ros.org/cv_bridge で、rosのメッセージをopencvのmatrixに変える方法が分かると思います。

point_cloudも取得できたらうれしいです。完全に私の希望ですが

umoji commented 9 years ago

とりあえず、

$ ./baxter.sh sim
$ roslaunch baxter_gazebo baxter_world.launch
# on new terminal
$ ./baxter.sh sim
$ rosrun image_view image_view image:=/cameras/left_hand_camera/image
# then right button click to save the frame to ~/CATKIN_WORKSPACE/

とすれば写真が撮れることが分かりました。

次はServiceでリクエストを受け取ったら、写真をとるようにしたいです。

k-okada commented 9 years ago

https://github.com/jsk-ros-pkg/jsk_robot/blob/master/jsk_pr2_startup/jsk_pr2_lifelog/tweet_client.l#L72 見てください. カメラの画像をキャプチャしてファイルに保存します.

On Wed, Nov 5, 2014 at 8:51 PM, Tomoya Yoshizawa notifications@github.com wrote:

とりあえず、

$ ./baxter.sh sim $ roslaunch baxter_gazebo baxter_world.launch# on new terminal $ ./baxter.sh sim $ rosrun image_view image_view image:=/cameras/left_hand_camera/image# then right button click to save the frame to ~/CATKIN_WORKSPACE/

とすれば写真が撮れることが分かりました。

次はServiceでリクエストを受け取ったら、写真をとるようにしたいです。

— Reply to this email directly or view it on GitHub https://github.com/start-jsk/2014-semi/issues/9#issuecomment-61796377.

k-okada commented 9 years ago

https://github.com/ros-perception/image_pipeline/blob/indigo/image_view/src/nodes/image_saver.cpp にサービスコールでファイルを保存するものがありますね.

On Wed, Nov 5, 2014 at 9:45 PM, Kei Okada k-okada@jsk.t.u-tokyo.ac.jp wrote:

https://github.com/jsk-ros-pkg/jsk_robot/blob/master/jsk_pr2_startup/jsk_pr2_lifelog/tweet_client.l#L72 見てください. カメラの画像をキャプチャしてファイルに保存します.

On Wed, Nov 5, 2014 at 8:51 PM, Tomoya Yoshizawa <notifications@github.com

wrote:

とりあえず、

$ ./baxter.sh sim $ roslaunch baxter_gazebo baxter_world.launch# on new terminal $ ./baxter.sh sim $ rosrun image_view image_view image:=/cameras/left_hand_camera/image# then right button click to save the frame to ~/CATKIN_WORKSPACE/

とすれば写真が撮れることが分かりました。

次はServiceでリクエストを受け取ったら、写真をとるようにしたいです。

— Reply to this email directly or view it on GitHub https://github.com/start-jsk/2014-semi/issues/9#issuecomment-61796377.

wkentaro commented 9 years ago

baxterのメーリスに質問したところ、シミュレータではcamera_control.pyは動かないそうです。 実機では動きました。(head_cameraはopenできなかったですが) https://groups.google.com/a/rethinkrobotics.com/forum/#!topic/brr-users/aYOY1DOqtzM

umoji commented 9 years ago

前回のゼミ中に岡田さんがやっていた画像取得は、シミュレーター上でもできますか。 できるなら、どのようにやっていたか教えていただきたいです。

k-okada commented 9 years ago

https://github.com/jsk-ros-pkg/jsk_robot/blob/master/jsk_baxter_robot/jsk_baxter_startup/jsk_baxter_lifelog/baxter_tweet.launch#L6 のようにすれば立ち上げられます. コマンドラインからは

rosrun image_view image_saver image:=/cameras/head_camera/image
_save_all_image:=false _filename_format:=/tmp/baxter_camera.png

とします.

ただ,学内にいたらrossetrobotで実機にROS_MASTER_URIにすればノードはすでに立ち上がっているので, シミュレータ無しで使える気がします

2014-11-14 2:58 GMT+09:00 Tomoya Yoshizawa notifications@github.com:

前回のゼミ中に岡田さんがやっていた画像取得は、シミュレーター上でもできますか。 できるなら、どのようにやっていたか教えていただきたいです。

— Reply to this email directly or view it on GitHub https://github.com/start-jsk/2014-semi/issues/9#issuecomment-62936547.

umoji commented 9 years ago

baxterのシミュレータを起動して、

$ ./baxter.sh sim
$ rosrun image_view image_saver image:=/cameras/head_camera/image _save_all_image:=false _filename_format:="/tmp/baxter_camera.png"
#on new terminal
$ ./baxter.sh sim
$ rosservice call /image_saver_1415961167687893497/save

とすれば画像を取得することができましたが、最後のrosserviceの部分で

$rosservice call /image_saver/save

というようにできないのですが、シミュレータ上だからでしょうか。 岡田さんにやっていただいたときは上記のようにできていたので、実機でないといけないのでしょうか。

k-okada commented 9 years ago
rosrun image_view image_saver image:=/cameras/head_camera/image _save_all_image:=false _filename_format:="/tmp/baxter_camera.png" __name:=image_saver

として立ち上げると

$rosservice call /image_saver/save

できると思います. http://answers.ros.org/question/31944/rosrun-node_name/

rosrun image_view image_savermage:=/cameras/head_camera/image _save_all_image:=false _filename_format:="/tmp/baxter_camera.png"

rosrun image_view image_saver image:=/cameras/head_camera/image _save_all_image:=false _filename_format:="/tmp/baxter_camera.png"

の間違いでしょうか.

umoji commented 9 years ago

そうです、書き間違いでした。 修正しました。

wkentaro commented 9 years ago

This is old. I close.

YuOhara commented 9 years ago

ここでの議論は適切にマージされましたでしょうか(どこかのlaunchの中にimage_viewを入れるとか)

それとも,もう作戦上必要ない?

wkentaro commented 9 years ago

He sent PR. https://github.com/start-jsk/2014-semi/pull/54/files

But it is not merged, and it's not used.