|
详解OpenCV的线段绘制函数line()
函数line()用于在图像上绘制圆形。
函数line()利用两点确定一条直线的原理在图像中绘制出一条线段。
C++原型如下:
- void cv::line(InputOutputArray img,
- Point pt1,
- Point pt2,
- const Scalar & color,
- int thickness = 1,
- int lineType = LINE_8,
- int shift = 0)
复制代码
Python原型如下:
- img=cv.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]])
复制代码
各参数意义如下:
img---绘制的线段所在的图像。
pt1---线段起点在图像中的坐标。
pt2---线段终点在图像中的坐标。
color---线条的颜色,用三通道表示。
thickness---线条的粗细,默认值为1。
lineType---线条的类型,默认值为LINE_8。
shift---pt1和pt2坐标值的小数位数。
C++示例代码如下:
- //出处:昊虹AI笔记网(hhai.cc)
- //用心记录计算机视觉和AI技术
- //博主微信/QQ 2487872782
- //QQ群 271891601
- //欢迎技术交流与咨询
- //OpenCV版本 OpenCV3.0
- #include <opencv2/opencv.hpp>
- #include <iostream>
- using namespace cv;
- void main()
- {
- Mat org = imread("F:/material/images/P0039-all_blue.bmp");
- line(org, Point(100, 50), Point(300, 80), Scalar(0, 255, 0));
- imshow("img", org);
- cv::waitKey(0);
- }
复制代码
代码中用到的图像下载链接:
https://pan.baidu.com/s/1_JQQS9qRos74GxtSU9-gqg?pwd=i87b
运行结果如下:
Python示例代码如下:
- # -*- coding: utf-8 -*-
- # 出处:昊虹AI笔记网(hhai.cc)
- # 用心记录计算机视觉和AI技术
- # 博主微信/QQ 2487872782
- # QQ群 271891601
- # 欢迎技术交流与咨询
- # OpenCV的版本为4.4.0
- import cv2 as cv
- import sys
- image = cv.imread('F:/material/images/P0039-all_blue.bmp')
- if image is None:
- print('Error: Could not load image')
- sys.exit()
- cv.line(image, (100, 50), (300, 80), (0, 255, 0))
- cv.imshow('Source Image', image)
- cv.waitKey(0)
- cv.destroyAllWindows()
复制代码
代码中用到的图像下载链接:
https://pan.baidu.com/s/1_JQQS9qRos74GxtSU9-gqg?pwd=i87b
运行结果如下:
|
|