- cv::line(image, vertices[i], vertices[(i+1)%4], cv::Scalar(0,255,0), 2);
-// cv::rectangle(image, cv::Rect(bb.cx - bb.w/2., bb.cy - bb.h/2., bb.w, bb.h), CV_RGB(0,255,0), 2);
- std::string angle = std::to_string (bb.a);
- angle.erase ( angle.find_last_not_of('0') + 1, std::string::npos );
- cv::putText(image, "Frame: " + std::to_string(frames) + " " + angle + " angle", cv::Point(0, image.rows-1), cv::FONT_HERSHEY_SIMPLEX, 0.7, cv::Scalar(0,255,0),2,cv::LINE_AA);
- cv::imshow("output", image);
- int ret = cv::waitKey(visualize_delay);
- if (visualize_delay > 0 && ret != -1 && ret != 255)
- break;
+ cv::line(image, vertices[i], vertices[(i + 1) % 4], cv::Scalar(0, 255, 0), 2);
+ if (visualize_delay >= 0) {
+ cv::imshow("KCF output", image);
+ int ret = cv::waitKey(visualize_delay);
+ if ((visualize_delay > 0 && ret != -1 && ret < 128) ||
+ (visualize_delay == 0 && (ret == 27 /*esc*/ || ret == 'q')))
+ break;
+ }
+ if (!video_out.empty())
+ videoWriter << image;