| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> Angle Finder(角度测量) -> 正文阅读 |
|
[人工智能]Angle Finder(角度测量) |
目录 一 前言? ? ? ?在本次项目中,我们将会使用鼠标构建一个角,并显示这个角的度数;即通过点击鼠标来生成两条线,如果这两条线相交就会形成一个夹角,我们要做的就是测量这个夹角的度数。和之前的项目一样,本项目也是博主在Github中找到的比较有趣的项目,大家如果感兴趣可以尝试着复现一遍,如果对其他项目感兴趣可以关注下面这专栏,有时间我会更新一些比较有趣的项目分享给大家: Now, let's start! 二 实现步骤? ? ? ?先来简单介绍一下本次的任务,我们要通过点击鼠标生成三个点,而这三个点刚好能够组成两条相交的射线,接下我们使用一些简单的数学知识就可以得出这个角的度数了。不难看出,本次的项目并没有太大的难度,主要是使用数学方法计算角度。 1 需要的第三方库? ? ? ?在本次项目中首先是要对图像中的角度进行测量,所以需要的第一个库是?OpenCV;然后需要计算角度,免不了数学计算,因此还需要 math 库,使用这两个库就可以实现本次项目了。 2 读取图像? ? ? ?本项目是在图像中测量角度,所以第一步需要做的是读取目标图像。本次实验中我使用的是随便找的一幅图像,只要是使用 CV2 第三方库能够读取就到图像就可以。 读取图像的代码比较简单,如下:
如果你想将图像显示出来也可以: 3 获取鼠标点? ? ? ? 读取图像之后我们要操作的是能够让鼠标的点击在图像中起作用(点击左键就可以创建一个点,通过三次点击不同的点得到一个角)。在这里我们创建一个 mousepoint() 函数来完成这个任务。 (1)打印鼠标点击的位置(演示,不一定要实现)? ? ? ?通过下面的函数就可以实现鼠标点的检测并将点击的坐标,本过程只是显示鼠标的点击位置,在项目中不一定实现
通过点击就可以打印出鼠标的位置? (2)创建列表存储坐标并将点击生成的点绘制出来每测量一个角度我们要生成不止一个点,所以我们可以将这些点的坐标存储到一个列表中。
将存有坐标点的列表打印下来如下:? 4 计算三个点组成的角的度数? ? ? ?当我们的列表中存储的点的个数达到3的倍数(即图像中的出现完整的角度时,我们该计算这些角的度数并将其绘制在图中) 计算一个角的度数的方式如下(通过三角函数诱导公式就能得到): 创建一个函数来计算角的度数:
5 润色(绘制线段构成角度)?? ? ? ?其实到第四步我们的目标已经达成了,将前面的代码整合起来就可以实现测量角度了,但我们可以在添加一些来绘制线段构成角度,代码如下:
通过以上的步骤就能实现本次的角度测量了 由于线段宽度以及一些因素的影响,误差在所难免,感兴趣可以简单尝试一下。? 三 整体代码整体代码如下:
四 结束语? ? ? ?本次项目的实现较为简单,大家都可以尝试一下,原理也是使用高中的知识就能搞懂,简单的不达鸟,简单的一塌糊涂啊!! |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 12:18:40- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |