0
点赞
收藏
分享

微信扫一扫

鸿蒙 申请权限

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

line 函数在图像中绘制从 pt1 到 pt2 两点之间的线段。这条线会被图像边界裁剪。对于没有抗锯齿效果且坐标为整数的线,会使用 8-连接或者 4-连接的 Bresenham 算法。粗线条的绘制会采用圆角处理。抗锯齿线条则通过高斯滤波来绘制。

函数原型

void cv::line	
(
	InputOutputArray 	img,
	Point 	pt1,
	Point 	pt2,
	const Scalar & 	color,
	int 	thickness = 1,
	int 	lineType = LINE_8,
	int 	shift = 0 
)		

参数

  • 参数img 图像.
  • 参数pt1 线段的第一个点。
  • 参数pt2 线段的第二个点。
  • 参数color 线条的颜色。
  • 参数thickness 线条的厚度
  • 参数lineType 线条的类型。参见 LineTypes。
  • 参数shift 点坐标的分数位数。

代码示例


#include <iostream>
#include <opencv2/opencv.hpp>

int main()
{
    // 创建一个白色背景的图像
    cv::Mat image( 400, 400, CV_8UC3, cv::Scalar( 255, 255, 255 ) );

    // 定义线段的两个端点
    cv::Point pt1( 50, 50 );
    cv::Point pt2( 350, 350 );

    // 绘制线段
    cv::line( image, pt1, pt2, cv::Scalar( 0, 0, 255 ), 2, cv::LINE_AA );

    // 显示图像
    cv::imshow( "Line Drawing", image );
    cv::waitKey( 0 );

    return 0;
}

运行结果

在这里插入图片描述

举报

相关推荐

0 条评论