Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include "opencv2/imgproc.hpp"
- #include "opencv2/highgui.hpp"
- #include "opencv2/videoio.hpp"
- #include "opencv2/core/core.hpp"
- #include <iostream>
- using namespace cv;
- using namespace std;
- namespace line2 {
- Mat TransformImage(Mat image, int View, Scalar lower, Scalar upper, bool debug) { //it's work
- Mat transform_image;
- //int wigth = input_img.cols; int height = input_img.rows;
- //Mat image(input_img, Rect(140, View, wigth - 140, height - View));
- cvtColor(image, transform_image, COLOR_HSV2BGR);
- GaussianBlur(transform_image, transform_image, Size(9, 9), 0);
- inRange(transform_image, lower, upper, transform_image);
- if (debug)
- {
- imshow("Transform_Image", transform_image);
- }
- return transform_image;
- }
- int FindLine(Mat image, Mat gray) {
- int x;
- int sum = 0;
- int k = 0;
- int wigth = gray.cols; int height = gray.rows;
- int mid = wigth / 2;
- for (int i = mid - 150; i < mid + 150; ++i) {
- if (gray.at<uchar>(i, height-50) == 255) {
- sum += i; ++k;
- }
- }
- if (k != 0) {
- x = sum / k;
- }
- else
- x = 0;
- circle(image, Point(x, height - 50), 10, Scalar(0, 0, 255), -1);
- imshow("DEBUG", image);
- return x;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement