From 3272e1eee48725c499766c6521b11a9d302e7b29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergi=20Hern=C3=A0ndez=20Juan?= <shernand@iri.upc.edu> Date: Mon, 16 Feb 2015 16:31:08 +0000 Subject: [PATCH] Changed the node to publish raw images. Added a launch file to launch all the necessary nodes for the ar_pose detection. --- launch/camera_flea.launch | 6 +-- launch/firewire_arpose_nodelet.launch | 65 ++++++++++++++++++++++++++ launch/firewire_nodelet.launch | 2 +- src/firewire_camera_driver_nodelet.cpp | 6 ++- 4 files changed, 74 insertions(+), 5 deletions(-) create mode 100755 launch/firewire_arpose_nodelet.launch diff --git a/launch/camera_flea.launch b/launch/camera_flea.launch index 5d7e9ab..fc4faa7 100644 --- a/launch/camera_flea.launch +++ b/launch/camera_flea.launch @@ -4,12 +4,12 @@ name="iri_firewire_camera" type="iri_firewire_camera" output="screen"> - <param name="Camera_node" value="0" /> + <param name="Camera_node" value="2" /> <param name="Color_coding" value="0" /> <param name="ISO_speed" value="400" /> <param name="Framerate" value="30" /> - <param name="Image_width" value="640" /> - <param name="Image_height" value="480" /> + <param name="Image_width" value="1024" /> + <param name="Image_height" value="768" /> </node> <!-- <node pkg="image_view" diff --git a/launch/firewire_arpose_nodelet.launch b/launch/firewire_arpose_nodelet.launch new file mode 100755 index 0000000..5a26209 --- /dev/null +++ b/launch/firewire_arpose_nodelet.launch @@ -0,0 +1,65 @@ +<launch> + <node pkg="nodelet" type="nodelet" name="standalone_nodelet" args="manager" output="screen"> + <param name="Camera_node" value="2" /> + <param name="frame_id" value="bumblebee_frame" type="string" /> + <param name="cal_file" value="file://$(find iri_firewire_camera)/calibration/$(env ROBOT)_right_camera.yaml" type="string" /> + <param name="ISO_speed" value="400" /> + <param name="Framerate" value="7.5" /> + <param name="Color_coding" value="6" /> + <param name="Image_width" value="1024" /> + <param name="Image_height" value="768" /> + <param name="autosize" value="true"/> + <remap from="/standalone_nodelet/camera_image" + to="/camera/image_raw" /> + <remap from="/standalone_nodelet/camera_info" + to="/camera/camera_info" /> + </node> + + <!-- firewire camera driver --> + <node pkg="nodelet" type="nodelet" name="iri_firewire_nodelet" args="load iri_firewire_camera/FirewireCameraNodelet standalone_nodelet" output="screen"> + </node> + + <node pkg ="nodelet" type="nodelet" name="image_proc_debayer" args="load image_proc/debayer standalone_nodelet" output="screen"> + <remap from="/image_raw" + to="/camera/image_raw"/> + <remap from="/camera_info" + to="/camera/camera_info"/> + <remap from="/image_mono" + to="/camera/image_mono"/> + </node> + <!-- image rectification --> + <node pkg ="nodelet" type="nodelet" name="image_proc_rect" args="load image_proc/rectify standalone_nodelet" output="screen"> + <remap from="/image_mono" + to="/camera/image_mono"/> + <remap from="/camera_info" + to="/camera/camera_info"/> + <remap from="/image_rect" + to="/camera/image_rect"/> + </node> + + <node pkg ="nodelet" type="nodelet" name="local_th" args="load iri_image_local_binarization/ImageLocalBinNodelet standalone_nodelet" output="screen"> + <remap from="local_th/image_in/image_raw" + to="/camera/image_rect"/> + <remap from="local_th/image_in/camera_info" + to="/camera/camera_info"/> + <remap from="local_th/image_out/image_raw" + to="/ar_pose/image_raw"/> + <remap from="local_th/image_out/camera_info" + to="/ar_pose/camera_info"/> + </node> + + <node name="ar_pose" + pkg ="ar_pose" + type="ar_multi" + respawn="false" + output="screen"> + <param name="marker_pattern_list" type="string" value="$(find iri_ladybug2)/data/object_4x4_front"/> + <param name="threshold" type="int" value="100"/> + <param name="use_history" type="bool" value="true"/> + <remap from="/camera/image_raw" + to="/ar_pose/image_raw"/> + <remap from="/camera/camera_info" + to="/ar_pose/camera_info"/> + </node> + +</launch> diff --git a/launch/firewire_nodelet.launch b/launch/firewire_nodelet.launch index 96d17b4..07bcfc9 100755 --- a/launch/firewire_nodelet.launch +++ b/launch/firewire_nodelet.launch @@ -1,6 +1,6 @@ <launch> <node pkg="nodelet" type="nodelet" name="standalone_nodelet" args="manager" output="screen"> - <param name="Camera_node" value="0" /> + <param name="Camera_node" value="1" /> <param name="frame_id" value="bumblebee_frame" type="string" /> <param name="cal_file" value="file://$(find iri_firewire_camera)/calibration/$(env ROBOT)_right_camera.yaml" type="string" /> <param name="ISO_speed" value="400" /> diff --git a/src/firewire_camera_driver_nodelet.cpp b/src/firewire_camera_driver_nodelet.cpp index 93221ed..1979648 100755 --- a/src/firewire_camera_driver_nodelet.cpp +++ b/src/firewire_camera_driver_nodelet.cpp @@ -72,7 +72,7 @@ void FirewireCameraDriverNode::mainNodeThread(void) this->Image_msg_->height=config.height; this->Image_msg_->step=config.width*config.depth/8; this->Image_msg_->data=std::vector<unsigned char>(image_data,image_data+config.width*config.height*config.depth/8); - if(config.coding==MONO || config.coding==RAW) + if(config.coding==MONO) { if(config.depth==DEPTH8) this->Image_msg_->encoding="8UC1"; @@ -81,6 +81,10 @@ void FirewireCameraDriverNode::mainNodeThread(void) else this->Image_msg_->encoding="16UC1"; } + else if(config.coding==RAW) + { + this->Image_msg_->encoding="bayer_rggb8"; + } else if(config.coding==YUV) { this->Image_msg_->encoding="yuv422"; -- GitLab