Ah, but it looks like fromImage is deprecated. Does anyone know why there's no longer a way of turning a non-shared pointer of a sensor_msgs/Image into a cv image? In the meantime you could use a null deleter and create a shared_ptr out of the image: void nullDeleter(void*) {} boost::shared_ptr image_ptr(&srv.response.left_image, nullDeleter); Josh On Fri, Nov 19, 2010 at 1:18 PM, Josh Faust wrote: > What was the compile error you got originally? That's not a valid cast to > be making. > > There's a version of fromImage that just takes the sensor_msgs/Image -- are > you sure that srv.response.left_image is a sensor_msgs/Image? > > Josh > > On Fri, Nov 19, 2010 at 12:49 PM, Soonhac Hong wrote: > >> Hi all, >> >> I'm trying to convert sensor_msgs/Image to the opencv image. The >> sensor_msgs/Image is defined in the ros service as follows. >> >> >> bool isColor >> ---- >> sensor_msgs/Image left_image >> >> >> The problem has happened at the following code. >> >> IplImage* left_image = bridge_.imgMsgToCv((const >> sensor_msgs::ImageConstPtr&) srv.response.left_image, "passthrough"); >> >> Without the casting,(const sensor_msgs::ImageConstPtr&), there was an >> compile error. With the casting, there is a runtime error, segmentation >> fault. Is there anyone to know how to get the >> sensor_msgs::ImageConstPtr& of the sensor_msgs/Image which is defined in >> the ros service? >> >> I confirmed that there are the proper value of each pixel in the >> srv.response.left_image.data[] as well as srv.response.left_image.width >> and srv.response.left_image.hight. >> >> Thank you for any comments. >> >> Best, >> Soonhac >> >> _______________________________________________ >> ros-users mailing list >> ros-users@code.ros.org >> https://code.ros.org/mailman/listinfo/ros-users >> > >