详解OpenCV的线段绘制函数line()

news2025/2/4 8:49:45

函数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技术
//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技术
# 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
运行结果如下:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/103518.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能优化算法:人工蜂鸟算法 - 附代码

智能优化算法&#xff1a;人工蜂鸟算法 摘要&#xff1a;人工蜂鸟算法( AHA )是 ZHAO 等 于 2021 年提出的一种新型元启发式优化算法 . 该算法模拟了自然界中蜂鸟轴向飞行、对角飞行、全方位飞行 3 种特殊飞行技能和引导觅食、区域觅食、迁移觅食 3 种智能觅食策略,并通过引入…

【大数据入门核心技术-Spark】(三)Spark 本地模式安装

目录 一、Spark集群三种部署模式 1、 Local模式 2、Spark Standalone模式 3、Spark on YARN模式 二、准备工作 1、Hadoop环境安装 2、下载spark 三、安装spark 1、解压 2、配置环境变量 3、修改配置文件 4、测试安装是否成功 四、运行测试spark 1、读取本地文件 …

【Java|golang】1760. 袋子里最少数目的球---逆向二分法

给你一个整数数组 nums &#xff0c;其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations 。 你可以进行如下操作至多 maxOperations 次&#xff1a; 选择任意一个袋子&#xff0c;并将袋子里的球分到 2 个新的袋子中&#xff0c;每个袋子里都有 正整数…

buildroot 升级软件包

因为软件漏洞问题&#xff0c;需要升级软件包&#xff0c;如 ncurses、libpwquality 等&#xff1b; 我目前采用的方法如下&#xff1a; 环境&#xff1a; 下载一个 buildroot 的最新版本&#xff1a; git clone git://git.buildroot.net/buildroot.git 我使用的 linux 环…

深入底层,spring mvc父子容器初始化过程解析

spring mvc父子容器初始化过程解析1、为什么要学习spring mvc底层&#xff1f;2、Java Web应该学什么&#xff1f;1、Tomcat2、servlet3、filter4、listener3、spring mvc容器初始化过程1、以WebApplicationInitializer.onStartup()方法作为入口2、registerDispatcherServlet()…

Java真的不难(五十二)Stream流的深入理解与流式编程

Stream流的深入理解与流式编程&#xff1a; 在今年年初小应学长也写过Stream与Lambda的两篇文章&#xff0c;今天先将两者结合起来进行流式编程 一、关于这两者 Stream与Lambda都是Java8引入的新概念&#xff0c;lambda在Java编程中对于函数式编程的支持&#xff0c;有助于代…

H5 WebSQL每日成语

有一天看到同事发的类似 这种成语填空一样的内容。 惟利( )视 为德( )终 质非文( ) ( )追耗子 烂漫天( ) ( )则改之&#xff0c;无则嘉勉 得( )之作 哀( )如潮 于是就去网上找成语数据库表的 SQL… 哈哈哈 很容易就找到了. 本来打算写个前后端&#xff0c;想了想可以但没…

Codeforces Round #840 (Div. 2) and Enigma 2022 - Cybros LNMIIT题解

这场好难我是废物&#xff0c;掉大分了 A. Absolute Maximization 利用|找最大值和&找最小值即可 #include <bits/stdc.h> using namespace std; // #define int long long #define endl \nvoid solve() {int n;cin >> n;int maxn 0,minn 1023;for(int i …

TCP报文结构、确认应答机制、超时重传机制、连接管理机制

TCP报文结构、确认应答机制、超时重传机制、连接管理机制一、TCP报文结构二、确认应答机制三、超时重传机制四、连接管理机制4.1 三次握手建立连接4.2 四次挥手断开连接一、TCP报文结构 可靠传输是TCP中最最核心的特性&#xff01;&#xff01;&#xff01; 上篇博客我们已经介…

企事业单位如何做好服务器数据防泄露,防病毒工作

目前现状 无论是中小企业还是大型企事业单位&#xff0c;均有属于自己的内网或公有云服务器。这些服务器有的是专门的SVN、GIT代码服务器&#xff0c;有的是文档存储服务器&#xff0c;有的是应用服务器。服务器是企业的核心命脉&#xff0c;所有知识产权及多年心血都集中汇总…

【学习笔记】JDK源码学习之HashMap(附带面试题)

最近发布 AND 其他好文 &#xff1a;地址 什么是 HashMap &#xff1f;它和 Map 之间又有什么样的关系呢&#xff1f;我们是否能拿它在并发中使用呢&#xff1f; 带着以上问题&#xff0c;让我们一同走入这让人着迷的 HashMap 。 1、什么是HashMap&#xff1f; HashMap 基于…

DOM算法系列005-获取给定节点所属的window对象

UID: 20221220091217 aliases: tags: source: cssclass: created: 2022-12-20 我们知道&#xff0c;在一个HTML页面中&#xff0c;可以包含很多个框架或框架集&#xff0c;那么&#xff0c;当给定一个节点&#xff0c;我们如何获取这个节点所属的window对象呢&#xff1f; 首先…

【填坑向】Linux获取Java程序resource下的文件路径(这次的坑好像没填住……

​╮(&#xffe3;▽&#xffe3;"")╭没错&#xff0c;就是那个传说中的FileNotFoundException&#xff0c;文件找不到了 一开始&#xff0c;特别单纯的俺是把文件直接放在项目根目录的&#xff0c;获取文件地址的位置就只写了一个文件名&#xff08;相对路径&…

Nature子刊:生命的最初几个小时内可快速学习音位辨别—基于fNIRS研究

摘要 人类新生儿可以区分音素&#xff0c;但这种能力背后的神经机制尚不清楚。新生儿的大脑可以学会区分自然&#xff08;前&#xff09;元音和逆向&#xff08;后&#xff09;元音&#xff08;在子宫中学习不到的&#xff09;。利用功能近红外光谱&#xff0c;我们检测了出生…

工控CTF之协议分析2——MMS

协议分析 流量分析 主要以工控流量和恶意流量为主&#xff0c;难度较低的题目主要考察Wireshark使用和找规律&#xff0c;难度较高的题目主要考察协议定义和特征 简单只能简单得干篇一律&#xff0c;难可以难得五花八门 常见的工控协议有&#xff1a;Modbus、MMS、MQTT、CoA…

关于3D可视化的几个知识点

3D可视化&#xff0c;运用三维仿真技术实现信息感知、智能调度以及主动式运营维护&#xff0c;把复杂抽象的数据信息&#xff0c;以合适的人们视觉元素及视角用3D立体方式进行一比一还原呈现&#xff01; 近些年&#xff0c;将繁琐的信息通过可视化的图表视觉化展现出来的应用场…

惠普Elite蜻笔记本系统损坏怎么U盘重装教学

惠普Elite蜻笔记本系统损坏怎么U盘重装教学&#xff0c;有用户使用的惠普Elite蜻笔记本系统受到了其他恶意程序的损坏&#xff0c;导致无法正常的开启使用。所以想要去进行电脑系统的重装。那么如何U盘重装电脑系统&#xff0c;一起来看看详细的重装步骤吧。 准备工作&#xff…

有哪些实用的软件开发项目管理工具?

给大家介绍下&#xff0c;目前最新的免费项目管理工具&#xff0c;希望对大家有所帮助。 1、 Co-Project智能项目管理工具 智能项目管理平台&#xff0c;是CoCode旗下的软件开发全生命周期的项目管理平台&#xff0c;涵盖了从需求、计划、设计、开发、测试再到交付的整个项目周…

青少年关联网络功能地形的性别差异

我们发现了个性化联想网络功能地形的规范性性别差异&#xff0c;包括腹侧注意、默认模式和额顶网络。此外&#xff0c;染色体富集分析显示&#xff0c;功能地形多变量模式的性别差异在空间上与x连锁基因的表达以及星形细胞和兴奋性神经元细胞类型的特征相耦合。这些结果突出了性…

实景三维模型色彩差异大,用模方与DasViewer直接对模型调色

在实际项目生产过程中&#xff0c;由于受到采集天气、设备、时间、季节、航高等各类因素的影响&#xff0c;重建后的三维模型尤其是大面积模型中&#xff0c;纹理不可避免的出现明暗不一、颜色不均匀的现象&#xff0c;导致后期处理时间与成本增高&#xff0c;影响项目工期。 三…