cv::rectangle使用例子
时间: 2023-04-06 08:00:22 浏览: 106
cv::rectangle是OpenCV库中的一个函数,用于在图像上绘制矩形。下面是一个使用cv::rectangle函数的例子:
cv::Mat image = cv::imread("example.jpg"); // 读取图像
cv::rectangle(image, cv::Point(100, 100), cv::Point(200, 200), cv::Scalar(0, 0, 255), 2); // 在图像上绘制矩形
cv::imshow("Example", image); // 显示图像
cv::waitKey(0); // 等待按键
这个例子中,我们首先使用cv::imread函数读取了一张名为example.jpg的图像,然后使用cv::rectangle函数在图像上绘制了一个左上角坐标为(100, 100),右下角坐标为(200, 200),颜色为红色,线宽为2的矩形。最后使用cv::imshow函数显示了绘制后的图像,并使用cv::waitKey函数等待按键。
相关问题
cv::boundingRect例子
cv::boundingRect是OpenCV中的一个函数,用于计算轮廓的边界矩形。它可以用于图像处理中的目标检测和跟踪等方面。下面是一个简单的例子:
```
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat image = imread("example.jpg");
Mat gray;
cvtColor(image, gray, COLOR_BGR2GRAY);
// 二值化处理
Mat binary;
threshold(gray, binary, 0, 255, THRESH_BINARY);
// 查找轮廓
std::vector<std::vector<Point>> contours;
findContours(binary, contours, RETR_EXTERNAL, CHAIN_APPROX_SIMPLE);
// 计算边界矩形
Rect rect = boundingRect(contours[0]);
// 在图像上绘制边界矩形
rectangle(image, rect, Scalar(0, 0, 255), 2);
imshow("image", image);
waitKey(0);
return 0;
}
```
这个例子中,我们首先读入一张图片,然后将其转换为灰度图像,并进行二值化处理。接着,我们使用findContours函数查找轮廓,并使用boundingRect函数计算轮廓的边界矩形。最后,我们在图像上绘制边界矩形,并显示出来。
给我cv2.rectangle的例子
好的,这是一个使用cv2.rectangle函数画矩形的例子:
```
import cv2
img = cv2.imread("example.jpg")
start_point = (100, 100)
end_point = (200, 200)
color = (255, 0, 0)
thickness = 2
cv2.rectangle(img, start_point, end_point, color, thickness)
cv2.imshow("image", img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个例子会在一张名为"example.jpg"的图片上画出一个左上角坐标为(100, 100),右下角坐标为(200, 200),线条颜色为蓝色,线条宽度为2的矩形。