#include #include "opencv2/opencv.hpp" int drawLines(); int drawPolys(); int main() { return drawPolys(); } int drawLines() { cv::Mat img(400, 400, CV_8UC3, cv::Scalar(255, 255, 255)); cv::line(img, cv::Point(50, 50), cv::Point(200, 50), cv::Scalar(0, 0, 255)); cv::line(img, cv::Point(50, 100), cv::Point(200, 100), cv::Scalar(255, 0, 255), 3); cv::line(img, cv::Point(50, 150), cv::Point(200, 150), cv::Scalar(255, 0, 0), 10); cv::line(img, cv::Point(250, 50), cv::Point(350, 100), cv::Scalar(0, 0, 255), 1, cv::LINE_4); cv::line(img, cv::Point(250, 70), cv::Point(350, 120), cv::Scalar(255, 0, 255), 1, cv::LINE_8); cv::line(img, cv::Point(250, 90), cv::Point(350, 140), cv::Scalar(255, 0, 0), 1, cv::LINE_AA); cv::arrowedLine(img, cv::Point(50, 200), cv::Point(150, 200), cv::Scalar(0, 0, 255), 1); cv::arrowedLine(img, cv::Point(50, 250), cv::Point(350, 250), cv::Scalar(255, 0, 255), 1); cv::arrowedLine(img, cv::Point(50, 300), cv::Point(350, 300), cv::Scalar(255, 0, 0), 1, cv::LINE_8, 0, 0.05); cv::drawMarker(img, cv::Point(50, 350), cv::Scalar(0, 0, 255), cv::MARKER_CROSS); cv::drawMarker(img, cv::Point(100, 350), cv::Scalar(0, 0, 255), cv::MARKER_TILTED_CROSS); cv::drawMarker(img, cv::Point(150, 350), cv::Scalar(0, 0, 255), cv::MARKER_STAR); cv::drawMarker(img, cv::Point(200, 350), cv::Scalar(0, 0, 255), cv::MARKER_DIAMOND); cv::drawMarker(img, cv::Point(250, 350), cv::Scalar(0, 0, 255), cv::MARKER_SQUARE); cv::drawMarker(img, cv::Point(300, 350), cv::Scalar(0, 0, 255), cv::MARKER_TRIANGLE_UP); cv::drawMarker(img, cv::Point(350, 350), cv::Scalar(0, 0, 255), cv::MARKER_TRIANGLE_DOWN); cv::imshow("img", img); cv::waitKey(0); cv::destroyAllWindows(); return 0; } int drawPolys() { cv::Mat img(400, 400, CV_8UC3, cv::Scalar(255, 255, 255)); cv::rectangle(img, cv::Rect(50, 50, 100, 50), cv::Scalar(0, 0, 255), 2); cv::rectangle(img, cv::Rect(50, 150, 100, 50), cv::Scalar(0, 0, 128), -1); cv::circle(img, cv::Point(300, 120), 30, cv::Scalar(255, 255, 0), -1, cv::LINE_AA); cv::circle(img, cv::Point(300, 120), 60, cv::Scalar(255, 0, 0), 3, cv::LINE_AA); cv::ellipse(img, cv::Point(120, 300), cv::Size(60, 30), 20, 0, 270, cv::Scalar(255, 255, 0), -1, cv::LINE_AA); cv::ellipse(img, cv::Point(120, 300), cv::Size(100, 50), 20, 0, 360, cv::Scalar(0, 255, 0), 2, cv::LINE_AA); std::vector pts; pts.push_back(cv::Point(250, 250)); pts.push_back(cv::Point(300, 250)); pts.push_back(cv::Point(300, 300)); pts.push_back(cv::Point(350, 300)); pts.push_back(cv::Point(350, 350)); pts.push_back(cv::Point(250, 350)); cv::polylines(img, pts, true, cv::Scalar(255, 0, 255), 2); cv::putText(img, "KimMinSu 20518009", cv::Point(50, 30), cv::FONT_HERSHEY_SIMPLEX, 1, cv::Scalar(255, 0, 255), 2, cv::LINE_AA); cv::imshow("img", img); cv::waitKey(0); cv::destroyAllWindows(); return 0; }