Opencv中RotatedRect和ellipse的角度方向

版本:opencv-4.7.0-windows
Opencv中,大多数时候,逆时针旋转是正方向,但在RotatedRect和ellipse中,顺时针旋转是正方向。

//RotatedRect的角度参数是顺时针为正方向
RotatedRect(const Point2f& center, const Size2f& size, float angle);//ellipse的angle、startAngle、endAngle都是顺时针为正方向
void ellipse(InputOutputArray img, Point center, Size axes,double angle, double startAngle, double endAngle,const Scalar& color, int thickness = 1,int lineType = LINE_8, int shift = 0);

源码说明:
在这里插入图片描述
代码测试:

#include <opencv2/opencv.hpp>
int main()
{
#pragma region RotatedRect顺时针为正cv::Mat image = cv::Mat(500, 500, CV_8UC3, cv::Scalar(255,255,255));cv::Scalar color(0, 0, 255); cv::Point2f center1 = cv::Point2f(100, 100);cv::Size2f axes1 = cv::Size2f(100, 50);cv::RotatedRect rotatedRect(center1, axes1, 0);cv::Point2f vertices[4];rotatedRect.points(vertices);for (int i = 0; i < 4; i++) {cv::line(image, vertices[i], vertices[(i + 1) % 4], color, 1, cv::LINE_AA);}cv::Point2f center2 = cv::Point2f(300, 100);cv::RotatedRect rotatedRect1(center2, axes1, 5);rotatedRect1.points(vertices);for (int i = 0; i < 4; i++) {cv::line(image, vertices[i], vertices[(i + 1) % 4], color, 1, cv::LINE_AA);}
#pragma endregion#pragma region ellipse顺时针为正cv::Point center3 = cv::Point(50,300);int radius1 = 50;int startAngle = 0;int endAngle = 90;cv::ellipse(image, center3, cv::Size(radius1, radius1), 0, startAngle, endAngle, color, 5, cv::LINE_AA);cv::Point center4 = cv::Point(250, 300);endAngle = 180;cv::ellipse(image, center4, cv::Size(radius1, radius1), 0, startAngle, endAngle, color, 5, cv::LINE_AA);cv::Point center5 = cv::Point(400, 300);cv::ellipse(image, center5, cv::Size(radius1, radius1), 30, startAngle, endAngle, color, 5, cv::LINE_AA);cv::imshow("Image", image);cv::waitKey(0);cv::destroyAllWindows();
#pragma region ellipse顺时针为正
}

测试结果:
在这里插入图片描述

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

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

相关文章

OpenCV练习(2)图像校正

1、傅里叶变换 霍夫变换 直线 角度 旋转2、边缘检测 霍夫变换 直线角度 旋转3、四点透视 角度 旋转4、检测矩形轮廓 角度 旋转 1.目的 实现类似全能扫面王的图像校正功能 2. 基于轮廓提取和透射变换 基于轮廓提取和透射变换的矫正算法更适用于车牌、身份证、人民…

机器人控制系列教程之动力学建模(1)

简介 机器人动力学是对机器人机构的力和运动之间关系与平衡进行研究的学科。机器人动力学是以机器人运动为基础&#xff0c;研究在运动过程中连杆与连杆之间、连杆与工件之间力或力矩等关系。 分类&#xff1a; 根据研究方向的不同&#xff0c;机器人的动力学分析也分为正、逆…

javascript设计模式---单例模式

JavaScript设计模式—单例模式 单例模式又称为单体模式&#xff0c;并提供一个访问它的全局访问点&#xff0c;也就是说&#xff0c;第二次使用同一个类创建的对象的时候&#xff0c;应该得到和第一次创建的对象完全相同的对象 特点 一个类只能生成一个实例对象提供一个全局…

6.25杂七杂八

一、毛泽东&#xff1a; 1、三个代表&#xff1a;&#xff08;1&#xff09;核心&#xff1a;保持党的先进性 &#xff08;2&#xff09;关键&#xff1a;与时俱进 &#xff08;3&#xff09;本质&#xff1a;执政为民 2、…

【Qt之·类QTableWidget】

系列文章目录 文章目录 前言一、常用属性二、成员函数2.1 左上角空白区域 三、实例演示总结 前言 一、常用属性 二、成员函数 方法描述selectRow选中行removeRow移除行insertRow插入行rowCount总行数 2.1 左上角空白区域 QTableCornerButton即不属于列表头&#xff0c;也不…

标准版绑定完手机号页面不跳转问题修复

标准版在不登录的情况下&#xff0c;从商品进去下单的时候跳出来登录并绑定手机号&#xff0c;绑定完手机号页面不跳转问题 修改教程如下&#xff1a; 文件目录&#xff1a;template/uni-app/pages/users/binding_phone/index.vue 加如图内容&#xff0c;然后重新打包

分享一套基于SSM的美食推荐管理系统(源码+文档+部署)

大家好&#xff0c;今天给大家分享一套基于SSM的美食推荐管理系统 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringSpringMvcMyBatis 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 博主介绍&#xff1a; 一名Java全栈工程师&#xff0c;专注于Jav…

3D Web轻量引擎HOOPS Web Platform赋能AEC行业数字化,高效渲染与多格式支持!

在建筑、工程和施工&#xff08;AEC&#xff09;行业&#xff0c;数字化转型和高效协作正变得越来越重要。为应对日益复杂的项目需求和不断提升的质量标准&#xff0c;AEC企业需要一种强大的工具来实现高效的3D可视化和数据管理。HOOPS Web Platform作为一款综合性3D开发平台&a…

Kafka topic消息清理几种方式

Kafka清理Topic消息 参考链接&#xff1a;https://cloud.tencent.com/developer/article/1590094 快速配置删除法 kafka启动之前&#xff0c;在server.properties配置delete.topic.enabletrue 执行命令bin/kafka-topics.sh --delete --topic test --zookeeper zk:2181或者使…

床上用品跨境电商:拥有沃尔玛1P特权的商家享有哪些显著优势?

在全球化的背景下&#xff0c;跨境电商对床上用品行业至关重要。沃尔玛因其品牌影响力、客户资源及物流体系在跨境电商平台中脱颖而出。拥有沃尔玛1P特权的商家享有更多曝光机会和独家优惠。那么&#xff0c;这些特权商家具体有哪些优势呢? 沃尔玛1P特权商家在曝光率上具有显著…

Ubuntu 20.04安装中文输入法出错:gnome-user-docs-zh-hans安装失败

问题&#xff1a;Ubuntu20.04安装中文输入法出错&#xff1a;gnome-user-docs-zh-hans安装失败 现象&#xff1a; 打开language Support页面的时候&#xff0c;提示install依赖的文件 这个过程中会弹窗提示: The following packages have unmet dependencies:gnome-user-doc…

怎么从零到一建立一个海外仓:分步指南,7个关键步骤归纳

无论你是想从零到一建立一个海外仓&#xff0c;还是想升级现有的海外仓&#xff0c;下面的7个步骤对你都会有一些参考价值。从海外仓选址到安装必要系统&#xff0c;再到人员配置&#xff0c;在创建海外仓的时候这些细节都非常重要。 1、确定海外仓所需的空间容量 确定海外仓…

微信小程序版threejs的使用

首先是使用环境:我是使用的uniapp制作的微信小程序,当然原生的也是可以的,但是测试过很多,发现微信官方的threejs移植版本只能够导入gltf格式的模型,无法导入obj,这就有些尴尬了,为此我找了很多版本的threejs,首先是threejs-miniprogram,也就是官方的,可以直接在unia…

网络安全自学入门:(超详细)从入门到精通学习路线规划,学完即可就业

很多人上来就说想学习黑客&#xff0c;但是连方向都没搞清楚就开始学习&#xff0c;最终也只是会无疾而终&#xff01;黑客是一个大的概念&#xff0c;里面包含了许多方向&#xff0c;不同的方向需要学习的内容也不一样。 算上从学校开始学习&#xff0c;已经在网安这条路上走…

多商户万能DIY商城小程序源码系统 支持自营+独立部署 带完整的安装代码包以及搭建教程

系统概述 多商户万能 DIY 商城小程序源码系统是一个综合性的电商平台解决方案&#xff0c;旨在满足不同用户的多样化需求。它不仅支持自营模式&#xff0c;还为多商户入驻提供了广阔的空间&#xff0c;使平台能够汇聚各类商品和商家&#xff0c;形成一个丰富多样的商业生态。 …

基于YOLO的目标检测系统(PyQT页面+模型+数据集)

亲爱的读者&#xff0c;欢迎来到我们的 YOLO 检测交互式应用系统专栏。在这里&#xff0c;我们为您准备了几个高质量的、基于 YOLO&#xff08;You Only Look Once&#xff09;算法的交互式应用系统&#xff0c;每一个系统都包含了直观易用的 PYQT 页面、经过精心训练的模型和相…

神经网络——数据预处理

基于方差缩放的参数初始化 方差缩放方法能够根据神经元的链接数量来自适应地调整初始化分布地方差&#xff0c;尽可能的保证每个神经元的输入和输出方差一致。 那么&#xff0c;为什么要保证前后方差的一致性呢&#xff1f; 这是因为如果输入空间和输出空间的方差差别较大&a…

功率回路布线

目录 一、布线布局和散热问题 二、设计PCB线宽、过孔与电压、电流关系 一、布线布局和散热问题 功率电路通常包括控制电路、驱动电路和功率输出三部分。其中功率输出部分通常采用开光工作方式&#xff0c;这种工作方式会发生大电压和大电流的突变&#xff0c;其可通过电源和信…

优化Java中XML和JSON序列化

优化Java中XML和JSON序列化 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在Java应用程序中&#xff0c;对于XML和JSON的序列化操作是非常常见的需求。本文将…

GroundingDINO1.5突破开放式物体检测界限:介绍与应用

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…