Advertisement

OpenMV学习记录(二):探索OpenMV4 H7

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
本篇博客是《OpenMV学习记录》系列的第二部分,专注于介绍和探讨OpenMV4 H7的功能、特点及其开发应用。通过实例分析,帮助读者深入了解如何利用该硬件进行计算机视觉项目开发。 今天先介绍一下OpenMV4 H7的相关资料: 文章目录: 简介 引脚电路图 板子信息 尺寸规格 功耗温度范围 简介:OpenMV4 H7具有STM32H743VI ARM Cortex M7处理器,主频为480 MHz,配备1MB RAM和2 MB flash。所有I/O引脚输出电压为3.3V,并且能够承受5V电压。 该设备还包含以下接口: 1. 全速USB(12Mbs)接口,用于连接电脑。插入OpenMV摄像头后,你的电脑会出现一个虚拟COM端口和“U盘”。 2. μSD卡槽支持高达100Mbs的读写速度,允许你的OpenMV摄像头录制视频,并从SD卡提取机器视觉素材。 3. SPI总线最高可达54Mbps。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • OpenMV):OpenMV4 H7
    优质
    本篇博客是《OpenMV学习记录》系列的第二部分,专注于介绍和探讨OpenMV4 H7的功能、特点及其开发应用。通过实例分析,帮助读者深入了解如何利用该硬件进行计算机视觉项目开发。 今天先介绍一下OpenMV4 H7的相关资料: 文章目录: 简介 引脚电路图 板子信息 尺寸规格 功耗温度范围 简介:OpenMV4 H7具有STM32H743VI ARM Cortex M7处理器,主频为480 MHz,配备1MB RAM和2 MB flash。所有I/O引脚输出电压为3.3V,并且能够承受5V电压。 该设备还包含以下接口: 1. 全速USB(12Mbs)接口,用于连接电脑。插入OpenMV摄像头后,你的电脑会出现一个虚拟COM端口和“U盘”。 2. μSD卡槽支持高达100Mbs的读写速度,允许你的OpenMV摄像头录制视频,并从SD卡提取机器视觉素材。 3. SPI总线最高可达54Mbps。
  • OpenMV H7 Plus.rar
    优质
    OpenMV H7 Plus 是一个高级机器视觉微控制器固件包,适用于嵌入式视觉应用开发,内含Python库和示例代码,助力用户轻松实现图像处理与识别功能。 基于OpenMV H7 Plus的色块巡线、十字/T字判断及多数字神经网络识别与坐标判断。
  • ROS之——多机器人环境
    优质
    本简介为“ROS学习记录之——多机器人环境探索”系列的一部分,专注于使用ROS平台进行多机器人协同工作与环境探索技术的研究和实践。通过理论结合实际操作的方式,系统性地讲解如何利用ROS实现多机器人的通信、导航及任务分配等功能,旨在帮助机器人爱好者和技术研究人员掌握这一领域的核心技能,推动多机器人系统的广泛应用和发展。 本博文是基于explore_lite软件包的学习笔记目录。该软件包采用贪心前沿探索算法(greedy frontier-based exploration)。当节点运行时,机器人会贪婪地探索环境,直到找不到边界为止。这些机器人会一直把整个区域都探索完。
  • LabVIEW LabVIEW
    优质
    这段内容是关于使用LabVIEW软件进行编程和开发的学习笔记与心得分享,旨在帮助初学者掌握LabVIEW的基础知识及应用技巧。 ### LabVIEW学习笔记知识点梳理 #### 一、调试技巧与数据监测 - **探针工具**: 在调试过程中可以使用右键菜单中的`probe`和`custom probe`功能来设置探针,用于实时监测数据流。这有助于理解各个节点之间的数据流动。 - **客户定制指示器**: 客户定制指示器是一个自定义的子VI,可以在前面板上添加“写数据”VI以记录显示的数据。这对于跟踪关键数据点非常有用。 #### 二、文件读写优化 - **避免频繁打开关闭文件**: 要提高运行效率,应尽量减少对同一文件的操作次数。当需要重复读取或修改同一个文件时,建议将这些操作放在一个循环外部执行以节省资源消耗。 #### 三、图形绘制与数据处理 - **波形绘制**: 使用`build xy graph`功能可以轻松地创建X和Y坐标的数据组合成的波形图。频谱分析可在`waveform measurement`中找到,而滤波器则位于`waveform condition`模块内。 - **数学运算**: 波形数据处理包括频谱分析、滤波等操作可以在`mathematical`模块下的相应子菜单中完成。 #### 四、顺序结构中的数据传递 - **顺序结构的数据传输**: 在使用顺序结构时,框内的数据无法直接通过图框节点传送到下一个框内。需要添加一个`add sequence local`以实现这一功能。另外,也可以采用`flat sequence`来简化这种操作方式。 #### 五、文件格式与读写操作 - **数据转换和存储**: 使用LabVIEW的“write”功能时,输入的数据必须先通过`format into string`转化为字符串形式才能被正确地保存。 - **特定类型文件的操作**: LabVIEW支持`.lvm`测量数据文件类型的读取和编写。波形通常以`.dat`格式进行存储。 #### 六、界面设计与控件使用 - **颜色选择**: 在LabVIEW的“numeric”模块下的`color box`中可以为各种元素设置所需的颜色。 - **曲线拟合操作**: 使用位于数学功能中的`general polynomial fit.vi`来进行数据拟合,该VI可在子菜单curve fit下找到。 - **添加标签和注释**: `free label`控件可以在装饰模块(decoration)里创建自由文本标注。另外使用数组图片环可以插入图像并可以通过索引访问。 #### 七、控件外观调整与子面板操作 - **改变控件的视图**: 如果某些元素看起来不太符合预期,可以通过右键点击该元件选择`view as icon`来切换到标准图标模式。 - **管理子面板属性和方法**: 子面板的操作包括设置其属性或调用特定的方法。这些功能可以在“application controls”模块中找到。 #### 八、表格操作与数据管理 - **添加表头**: 在表达式表格里,可以通过右键菜单选择`property`来开启列标题显示。 - **数组处理技巧**: 使用索引数组节点时,其参数代表的是行或列的索引。为了提取整行的数据,则需要先对矩阵进行转置操作。 #### 九、比较操作与列表控件 - **比较工具的应用**: `express comparison`功能不仅适用于数值比对还支持布尔值和字符串间的对比。 - **多列选择器**: 多列列表可以通过基于行的选择来实现类似下拉菜单的效果,其灵活性更胜一筹。 #### 十、波形分析与频率测量 - **频谱分析工具**: 使用`tone measurement.vi`可以准确地测定信号的频率。而FFT变换功能则仅在示波器中可视化呈现。 #### 十一、VI调用流程 - **基本步骤**:包括打开VI引用,设置属性(如前面板布局),执行函数,并关闭引用。 #### 十二、数据采集系统构建 - **DAQ系统的快速搭建**: 通过`DAQ assistance express vi`可以方便地建立一个简单的数据采集方案。或者也可以使用一系列的控件来手动配置更复杂的场景。 #### 十三、Office文档操作 - **Word和Excel的操作**:可以通过自动化接口打开并控制Word或Excel中的文件,以进行各种编辑与读写任务。
  • IoT-Camera之初IoT-Camera
    优质
    本篇文章是关于IoT-Camera学习的第一手笔记,主要介绍了对IoT-Camera的基本探索和初步理解,包括其功能、应用场景及与传统摄像头的区别。 IoT-Camera学习笔记之初识IoT-Camera 在开始这段学习旅程之前,我们将一起探索什么是IoT-Camera以及它的工作原理。本篇博客将带你了解IoT-Camera的基础知识,并为后续更深入的学习打下坚实的基础。 首先,我们需要理解什么是物联网(Internet of Things, IoT)。简而言之,就是通过互联网连接各种设备、传感器和系统,使它们能够相互通信并交换数据。而IoT-Camera则是这一概念在监控摄像头领域的应用实例。它不仅具备传统摄像机的视频捕捉功能,还集成了网络通信能力,可以将拍摄到的画面实时传输至云端或指定接收端。 接下来的内容中,我们将详细介绍如何操作和配置一台IoT-Camera设备,并探讨其应用场景及未来发展趋势。希望通过这篇笔记的学习能够帮助大家更好地理解和掌握关于IoT-Camera的相关知识和技术要点。
  • 机器2:使用sklearniris数据集
    优质
    本篇笔记介绍了如何利用Python的scikit-learn库进行Iris数据集的加载、预处理及初步分析,帮助初学者掌握基本的数据探索方法。 本段落使用scikit-learn开源机器学习库对iris数据集进行分类练习,并将分别采用两种内置算法——决策树(DecisionTree)与k近邻算法(kNN)。此外,我还将尝试自行实现kNN算法。目前我的学习仍处于初级阶段,在此文中不会详细解释相关算法原理,若需深入了解细节,请查阅其他资料。 scikit-learn库中包含了许多经典的数据集供使用者练习使用。加载iris数据集的方式十分简便: load_iris函数返回的结果包括如下属性:feature_names(分别为sepal等特征)。
  • 优质
    学习记录笔记是一个旨在帮助学生和终身学习者高效整理和回顾知识的平台。用户可以在此创建、编辑个性化学习笔记,并通过标签分类管理内容,以便更好地记忆和理解所学材料。此外,它支持协作功能,便于小组成员共享想法和资源,促进共同进步。 这个仓库主要存放我绝大部分Markdown文章,并且也用来存储Hexo博客的文本段落件。
  • Qt (Qt)
    优质
    《Qt 学习记录》是一份详尽的学习笔记,内容涵盖Qt框架的基础知识、核心组件及高级应用技巧,适合编程爱好者和技术从业者参考。 ### Qt学习笔记知识点详解 #### 一、从Hello Qt开始 **知识点1:Qt程序的基本结构** - **头文件引入**: - 第一行和第二行代码中,`#include ` 和 `#include ` 是引用了两个类:`QApplication` 和 `QLabel`。其中,`QApplication` 类用于管理应用程序的主要部分,包括事件循环;而 `QLabel` 则用来显示静态文本或图像。 - 在Qt 4中,引入头文件通常采用 `` 的形式,这种格式会自动查找安装的Qt库。 - **主函数定义**: - 第三行代码 `int main(int argc, char* argv[])` 定义了程序入口点。其中参数 `argc` 和 `argv[]` 分别代表命令行参数的数量和数组,用于接收从命令行传入的数据。 - **QApplication实例化**: - 在第五行中创建了一个 `QApplication` 对象:`QApplication app(argc, argv);` ,这个对象管理整个应用程序的资源及控制流程。 - **控件创建与显示**: - 第六行代码是通过 `new QLabel(Hello Qt!);` 创建一个 `QLabel` 控件,并设置其文本为 Hello Qt!。 - 接下来的第七行,通过调用 `label->show();` 显示这个控件。 - **事件循环**: - 在第八行中使用了 `return app.exec();` 进入Qt的事件循环。这意味着程序开始监听并处理用户输入的事件,直到应用程序关闭为止。 **知识点2:编译过程** - **qmake命令**: - 通过执行 `qmake-project` 命令会自动生成一个项目文件,通常是 `hello.pro` 文件。 - 然后使用 `qmake hello.pro` 根据生成的 `.pro` 文件创建 Makefile。 - **Makefile构建**: - 在完成了上述步骤之后,可以通过运行命令如在Unix/Linux系统中执行 `make` 或者 Windows环境下使用 `nmake` 来编译和链接程序。 **扩展知识点:HTML样式支持** - **QLabel HTML支持**: - 使用HTML语法设置 `QLabel` 的显示内容是可行的。例如,以下代码会将 Hello 显示为斜体,并使 Qt! 以红色字体显示: ```cpp QLabel* label = new QLabel(

    Hello Qt!

    ); ``` #### 二、连接信号与槽 **知识点1:信号与槽机制** - **信号(signal)**:是Qt中一种特殊类型的成员函数,当特定事件发生时自动由对象发出。 - **槽(slot)**:是一个一般的成员函数的别称,可以通过被触发的信号来执行。 **知识点2:示例分析** - **QPushButton的clicked信号**: - 示例使用了 `QPushButton` 类,并且在按钮点击时会发射 `clicked()` 信号。 - **连接信号与槽**: - 在第七行和第八行中,通过以下代码将 `QPushButton` 的 `clicked` 信号绑定到 `QApplication` 的 `quit` 槽函数上。当按钮被点击后,应用程序将调用其退出方法并结束运行。 ```cpp QObject::connect(button, SIGNAL(clicked()), &app, SLOT(quit())); ``` **知识点3:编译与运行** - **编译步骤**: - 将代码保存为 `quit.cpp` 文件。 - 使用命令如 `qmake-project` 和 `qmake quit.pro` 来生成 Makefile。 - 然后利用 `make` 或者 Windows系统中的 `nmake` 命令来构建程序。 #### 三、控件的几何排列——Laying Out Widgets **知识点1:控件布局** - **控件类型**: - 包括用于输入数字的 `QSpinBox` 控件,以及用来调节数值范围的滑块型 `QSlider`。 - 此外还有作为容器来容纳其他控件的 `QWidget`。 - **父控件与子控件关系**: - 在Qt中,一个控件可以成为另一个控件的父亲或孩子。例如,`QWidget` 可以是 `QSpinBox` 和 `QSlider` 的父亲。 - 父控件负责管理其孩子的生命周期。 **知识点2:信号与槽在布局中的应用** - **示例代码**: - 示例中使用了未完全展示的代码片段来说明如何通过连接 `QSpinBox` 和 `QSlider` 控制年龄输入,并且展示了它们之间的交互是如何实现的。 - **信号与槽连接**: - 例如,可以通过将 `QSpinBox` 和
  • 优质
    《深度学习探索》一书深入浅出地介绍了深度学习的基本概念、核心算法及最新研究成果,适合希望了解和掌握深度学习技术的研究人员与实践者阅读。 深度学习是一种基于人工神经网络的学习方法,其核心在于通过构建多层网络结构来模拟人脑分析和处理数据的过程。随着计算机技术的迅速发展及数据量的显著增加,深度学习作为一种高效的学习范式,在图像识别、语音识别以及自然语言处理等领域取得了革命性的进展。 深度学习的历史可以追溯到早期的人工神经网络研究阶段。它经历了从感知机到多层前馈网络的发展过程,并最终演进至现在的深度卷积和循环网络技术。这一历程见证了模型名称的变化,反映了研究人员对模型能力认知的深化及研究范式的演变。 在深度学习的发展过程中,数据量的增长起到了关键作用,帮助提升了模型的学习能力和实际应用中的精度表现。同时,计算能力的进步也推动了更大型、复杂度更高的深度学习模型的出现,使这些模型能够捕捉到更为复杂的模式和依赖关系,并因此对现实世界产生了深远影响,在工业、医疗及科技等多个领域取得了突破。 从基础理论来看,深度学习涉及广泛的应用数学与机器学习概念。在应用数学方面,它依靠线性代数(如向量、矩阵运算)、概率论(例如贝叶斯规则)和信息论等知识;数值计算则是优化模型参数的技术基石,包括梯度下降方法及其相关问题。 而在机器学习基础领域内,深度学习涵盖监督学习、无监督学习及强化学习等多种算法框架。其中,监督学习包含回归与分类任务的多种技术(如线性回归和支持向量机),而无监督则关注数据聚类和降维等;此外还有专注于决策过程中的强化学习方法。 现代实践方面,深度网络包括了前馈、卷积以及循环网络等多种结构类型。这些模型能够处理序列数据、图像及文本等各种不同类型的数据。例如,通过逐层传递信息来捕捉复杂非线性映射的深层前馈架构;利用卷积层提取空间特征的卷积网络;还有用于时间序列或语音等时序数据分析的循环神经网络。 深度学习还面临诸如维数灾难(在高维度中数据稀疏导致难以泛化)、局部不变性和平滑正则化的挑战,以及如何从复杂的数据集中发现低纬度结构等问题。这些问题需要综合应用计算机科学、数学、统计学和认知科学等多学科的知识来解决。 总之,深度学习是一个高度跨学科的领域,它不仅推动了人工智能技术的进步,也为实际问题提供了强大的解决方案。随着该领域的不断成熟和技术进步,其在各个行业的应用前景将越来越广泛。
  • 优质
    Digsilent学习记录笔记是一份详尽的学习资料集,涵盖了使用Digsilent电力系统仿真软件进行电力网络规划与分析所需的知识和技巧。 在使用Digsilent进行风电并网的潮流计算时,如果通过外部文件更改风速后出现问题,应该如何解决?