38 #include <boost/assign.hpp> 42 #include <opencv2/opencv.hpp> 48 DiagnosticNodelet::onInit();
49 pub_l_ = advertise<sensor_msgs::Image>(*
pnh_,
"output/l", 1);
50 pub_a_ = advertise<sensor_msgs::Image>(*
pnh_,
"output/a", 1);
51 pub_b_ = advertise<sensor_msgs::Image>(*
pnh_,
"output/b", 1);
68 const sensor_msgs::Image::ConstPtr& image_msg)
71 image_msg, image_msg->encoding);
72 cv::Mat image = cv_ptr->image;
74 std::vector<cv::Mat> lab_planes;
76 cv::cvtColor(image, lab_image, CV_BGR2Lab);
79 cv::cvtColor(image, lab_image, CV_RGB2Lab);
82 NODELET_ERROR(
"unsupported format to Lab: %s", image_msg->encoding.c_str());
85 cv::split(lab_image, lab_planes);
86 cv::Mat
l = lab_planes[0];
87 cv::Mat
a = lab_planes[1];
88 cv::Mat b = lab_planes[2];
#define NODELET_ERROR(...)
void publish(const boost::shared_ptr< M > &message) const
std::vector< std::string > V_string
CvImagePtr toCvCopy(const sensor_msgs::ImageConstPtr &source, const std::string &encoding=std::string())
PLUGINLIB_EXPORT_CLASS(jsk_perception::LabDecomposer, nodelet::Nodelet)
virtual void unsubscribe()
virtual void decompose(const sensor_msgs::Image::ConstPtr &image_msg)
sensor_msgs::ImagePtr toImageMsg() const