컴퓨터 비전에서의 선, 사각형, 원, 다각형 그리기
컴퓨터 비전에서 다양한 도형을 그리는 것은 주로 시각적인 결과를 분석하거나 표시하기 위해 사용됩니다. OpenCV와 같은 라이브러리를 통해 다양한 도형을 그릴 수 있습니다.
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
// 선 그리기
Mat lineImage = Mat::zeros(Size(300, 300), CV_8UC3);
line(lineImage, Point(50, 50), Point(250, 250), Scalar(0, 255, 0), 2);
imshow("Line", lineImage);
// 사각형 그리기
Mat rectangleImage = Mat::zeros(Size(300, 300), CV_8UC3);
rectangle(rectangleImage, Point(50, 50), Point(250, 250), Scalar(0, 255, 0), 2);
imshow("Rectangle", rectangleImage);
// 원 그리기
Mat circleImage = Mat::zeros(Size(300, 300), CV_8UC3);
circle(circleImage, Point(150, 150), 100, Scalar(0, 255, 0), 2);
imshow("Circle", circleImage);
// 다각형 그리기
Mat polygonImage = Mat::zeros(Size(300, 300), CV_8UC3);
std::vector<Point> points = { Point(50, 50), Point(150, 100), Point(200, 200), Point(100, 150) };
const Point* pts = (const Point*)Mat(points).data;
int npts = Mat(points).rows;
polylines(polygonImage, &pts, &npts, 1, true, Scalar(0, 255, 0), 2);
imshow("Polygon", polygonImage);
waitKey(0);
return 0;
}