Code cleanup in progress
This commit is contained in:
parent
1d4447e29a
commit
41e1ec9f2e
1 changed files with 11 additions and 14 deletions
|
@ -13,7 +13,7 @@ using namespace std;
|
||||||
class Traite_image {
|
class Traite_image {
|
||||||
public:
|
public:
|
||||||
const static int SENSITIVITY_VALUE = 20;
|
const static int SENSITIVITY_VALUE = 20;
|
||||||
const static int BLUR_Size = 9;
|
const static int BLUR_SIZE = 9;
|
||||||
const static int CLOSE_SIZE = 30;
|
const static int CLOSE_SIZE = 30;
|
||||||
const static int ERODE_SIZE = 2;
|
const static int ERODE_SIZE = 2;
|
||||||
const static int NB_FRAME_DROP = 1;
|
const static int NB_FRAME_DROP = 1;
|
||||||
|
@ -29,10 +29,10 @@ class Traite_image {
|
||||||
ros::NodeHandle n;
|
ros::NodeHandle n;
|
||||||
|
|
||||||
image_transport::ImageTransport it;
|
image_transport::ImageTransport it;
|
||||||
|
image_transport::Subscriber sub;
|
||||||
image_transport::Publisher pub_img;
|
image_transport::Publisher pub_img;
|
||||||
image_transport::Publisher pub_thres;
|
image_transport::Publisher pub_thres;
|
||||||
ros::Publisher pub_cmd;
|
ros::Publisher pub_cmd;
|
||||||
image_transport::Subscriber sub;
|
|
||||||
|
|
||||||
|
|
||||||
Traite_image() : n("~"),it(n) {
|
Traite_image() : n("~"),it(n) {
|
||||||
|
@ -43,7 +43,8 @@ class Traite_image {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// This processes an image and publishes the result.
|
// Callback function executedwhen recieving an image from the camera
|
||||||
|
// Publishes to /papillon/image_out
|
||||||
void on_image(const sensor_msgs::ImageConstPtr& msg) {
|
void on_image(const sensor_msgs::ImageConstPtr& msg) {
|
||||||
|
|
||||||
cv_bridge::CvImageConstPtr bridge_input;
|
cv_bridge::CvImageConstPtr bridge_input;
|
||||||
|
@ -88,7 +89,7 @@ class Traite_image {
|
||||||
prevs.pop_back();
|
prevs.pop_back();
|
||||||
prevs.insert(prevs.begin(), next.clone());
|
prevs.insert(prevs.begin(), next.clone());
|
||||||
}
|
}
|
||||||
|
|
||||||
void stabiliseImg(cv::Mat prev, cv::Mat cur, cv::Mat &output){
|
void stabiliseImg(cv::Mat prev, cv::Mat cur, cv::Mat &output){
|
||||||
cv::Mat cur_grey, prev_grey;
|
cv::Mat cur_grey, prev_grey;
|
||||||
cv::cvtColor(cur, cur_grey, cv::COLOR_BGR2GRAY);
|
cv::cvtColor(cur, cur_grey, cv::COLOR_BGR2GRAY);
|
||||||
|
@ -118,11 +119,7 @@ class Traite_image {
|
||||||
}
|
}
|
||||||
T.copyTo(last_T);
|
T.copyTo(last_T);
|
||||||
|
|
||||||
cv::Mat cur2;
|
cv::warpAffine(cur, output, T, cur.size(),cv::INTER_CUBIC|cv::WARP_INVERSE_MAP);
|
||||||
|
|
||||||
cv::warpAffine(cur, cur2, T, cur.size(),cv::INTER_CUBIC|cv::WARP_INVERSE_MAP);
|
|
||||||
|
|
||||||
cur2.copyTo(output);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void searchForMovement(cv::Mat prev, cv::Mat cur, cv::Mat &output, cv::Mat &out2){
|
void searchForMovement(cv::Mat prev, cv::Mat cur, cv::Mat &output, cv::Mat &out2){
|
||||||
|
@ -130,8 +127,8 @@ class Traite_image {
|
||||||
cur.copyTo(output);
|
cur.copyTo(output);
|
||||||
cv::cvtColor(prev, prev_grey, cv::COLOR_BGR2GRAY);
|
cv::cvtColor(prev, prev_grey, cv::COLOR_BGR2GRAY);
|
||||||
cv::cvtColor(cur, cur_grey, cv::COLOR_BGR2GRAY);
|
cv::cvtColor(cur, cur_grey, cv::COLOR_BGR2GRAY);
|
||||||
cv::GaussianBlur(prev_grey, prev_grey, cv::Size(BLUR_Size,BLUR_Size), 3.0);
|
cv::GaussianBlur(prev_grey, prev_grey, cv::Size(BLUR_SIZE,BLUR_SIZE), 3.0);
|
||||||
cv::GaussianBlur(cur_grey, cur_grey, cv::Size(BLUR_Size,BLUR_Size), 3.0);
|
cv::GaussianBlur(cur_grey, cur_grey, cv::Size(BLUR_SIZE,BLUR_SIZE), 3.0);
|
||||||
|
|
||||||
// Subtract the 2 last frames and threshold them
|
// Subtract the 2 last frames and threshold them
|
||||||
cv::Mat thres;
|
cv::Mat thres;
|
||||||
|
@ -144,7 +141,7 @@ class Traite_image {
|
||||||
cv::erode(thres, thres, element );
|
cv::erode(thres, thres, element );
|
||||||
|
|
||||||
cv::threshold(thres, thres, SENSITIVITY_VALUE, 255, cv::THRESH_BINARY);
|
cv::threshold(thres, thres, SENSITIVITY_VALUE, 255, cv::THRESH_BINARY);
|
||||||
|
|
||||||
// Intermediate output
|
// Intermediate output
|
||||||
thres.copyTo(out2);
|
thres.copyTo(out2);
|
||||||
|
|
||||||
|
@ -223,4 +220,4 @@ int main(int argc, char **argv)
|
||||||
ros::spin();
|
ros::spin();
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue