OpenCV 4.x API 详解与C++实例-物体跟踪

第二节 物体跟踪OpenCV的video模块提供了几种基于光流的物体跟踪方法。1、cv::buildOpticalFlowPyramid、cv::calcOpticalFlowPyrLK1)cv::buildOpticalFlowPyramid:构造可以传递给calcOpticalFlowPyrLK的图像金字塔。int cv::buildOpticalFlowPyramid (InputArray img,OutputArrayOfArrays pyramid,Size winSize,int m
分类: 其他 发布时间: 03-01 08:06 阅读次数: 0

WeMos物联网开板实例入门-点亮内置LED

点亮内置LEDWebMos D1 R2开发板内置的内置LED与TXD接口共用,因此在使用LED时不能使用Serial.print()。// 程序初始化void setup() { pinMode(LED_BUILTIN, OUTPUT); // 设置LED_BUILTIN引脚为输出}// 无限循环void loop() { digitalWrite(LED_BUILTIN, LOW); // 点亮内置LED,内置LED设置低电压时LED实际是点亮 delay(1000)
分类: 其他 发布时间: 03-01 08:06 阅读次数: 0

WeMos物联网开板实例入门-连接WIFI

WeMos开发板连接WIFIWeMos开发板自带WIFI模块,并与Arudino UNO 兼容,连接WIFI非常简单。1、硬件准备WeMos D1 R2 开发板一块笔记本电脑一台将WeMos开发环境建塔好,可以参考WeMos物联网开板实例入门-环境搭建。2、代码实现打开Arduino IDE,新建一个工程,编写如下代码:#include <ESP8266WiFi.h>// WIFI 连接信息const char* ssid = "填写WIFI的名称";const ch
分类: 其他 发布时间: 03-01 08:06 阅读次数: 0

WeMos物联网开板实例入门-实现简单Web服务器

实现简单Web服务器通过前面连接WIFI的实例将WeMos开发板连接上了WIFI,在本节里,将实例一个简单的Web服务器。1、硬件准备WeMos D1 R2开发板一个笔记本电脑(台式电脑)一台发光LED一个杜邦线两根面包板一个发光LED通过面包板、杜邦线与开发板连接。如下图:2、代码实现实现简单Web服务器主要由以下几步组成:连接WIFI定义服务器端口初始化LED接口启动服务器监听客户端连接解析客户端请求参数按请求参数控制LED代码实现如下:#includ
分类: 其他 发布时间: 03-01 08:06 阅读次数: 0

WeMos物联网开板实例入门-实现简单WebSocket服务器

实现简单WebSockets服务器通过前面[WeMos物联网开板实例入门-连接WIFI]的实例将WebMos开发板连接上了WIFI,在本节里,将实例一个简单的WebSockets服务器。1、硬件准备WeMos D1 R2开发板一个笔记本电脑(台式电脑)一台发光LED一个杜邦线两根面包板一个发光LED通过面包板、杜邦线与开发板连接。如下图:2、代码实现在本次应用中,需要使用到WebSockets库,下载完成后,将其导入到Arduino IDE中,如下图:[外链图片转存失败,源站可
分类: 其他 发布时间: 03-01 08:05 阅读次数: 0

WeMos物联网开板实例入门-实现简单MQTT客户端

简单MQTT客户端通过前面[WeMos物联网开板实例入门-连接WIFI]的实例将WebMos开发板连接上了WIFI,在本节里,将实例一个简单的MQTT客户端。1、硬件准备WeMos D1 R2开发板一个笔记本电脑(台式电脑)一台发光LED一个杜邦线两根面包板一个发光LED通过面包板、杜邦线与开发板连接。如下图:2、代码实现安装mosquitto可以通过https://mosquitto.org/download/下载并安装并启动。导入相关头文件及定义#incl
分类: 其他 发布时间: 03-01 08:05 阅读次数: 0

WeMos物联网开板实例入门-实现简单CoAP服务器

实现简单CoAP服务器Coap(Constrained Application Protocol)是一种在物联网世界的类web协议,它的详细规范定义在 RFC 7252。COAP名字翻译来就是“受限应用协议”,顾名思义,使用在资源受限的物联网设备上。物联网设备的ram,rom都通常非常小,运行TCP和HTTP是不可以接受的。本文对CoAP协议暂不做详细讲解,感兴趣的同学可以参考相关资料。通过前面[WeMos物联网开板实例入门-连接WIFI]的实例将WebMos开发板连接上了WIFI,在本节里,将实例一个
分类: 其他 发布时间: 03-01 08:05 阅读次数: 0

Python序列元素解压全面介绍

Python语言对序列元素解压有着灵活的支持,下面将全面介绍Python语言对序列元素解压
分类: 其他 发布时间: 03-01 08:05 阅读次数: 0

C++11格式化输出生成乘法口诀表

C++格式化输出生成乘法口诀表C++格式化输出的主要内容有:字段宽度、字符填充、字符对齐。字段宽度:由setw函数实现,可以在字符前、中、后设置。字符填充:由setfill函数实现,setfill函数是跟在setw后面填充相应的空位(默认是空格)。字符对齐:由std::ios_base::left, std::ios_base::adjustfield,std::ios_base::right等指定。下面将通过以上三种操作生成一个乘法口诀表:#include <iostream>
分类: 其他 发布时间: 03-01 08:04 阅读次数: 0

C++11使用copy函数优雅实现向量输入及输出

C++STL算法中的copy函数主要用于容器之间元素的拷贝,即将迭代器区间[first,last)的元素复制到由复制目 标result给定的区间[result,result+(last-first))中。下面将通过copy函数及迭代器实现向量的输入和输出:#include <iostream>#include <algorithm>#include <vector>#include <iterator>using namespace std;
分类: 其他 发布时间: 03-01 08:04 阅读次数: 0

C++11通过迭代器反转向量元素

反转向量容器中的元素,可以通过索引方式,也可以直接调用C++STL标准库中的std::reverse函数实现,还可以通过迭代器实现。
分类: 其他 发布时间: 03-01 08:04 阅读次数: 0

C++11通过Lambda表达式操作向量元素

C++11提供了Lambda表达式,可以方便地操作向量元素。虽然C++11的Lambda表达式是未命名函数,但是可以像变量一样命名一个Lambda表达式并且调用方式跟常规函数没有什么区别。
分类: 其他 发布时间: 03-01 08:04 阅读次数: 0

C++11Lambda表达式捕获变量(Capturing the Variable)与本地变量(Local Variable)

在Lambda的方括号[]中命名局部变量称为捕获变量(capturing the variable)。如果没有在**方括号[]**指定变量,则在Lambda表达中不能使用。Lambda捕获变量默认是值传递方式。如下面代码:#include <iostream>#include <algorithm>#include <iterator>#include <vector>using namespace std;int main(int argc
分类: 其他 发布时间: 03-01 08:03 阅读次数: 0

C++11代码注释及Doxygen文档生成

代码注释及Doxygen文档生成1、DoxygenDoxygen是一个免费的(成本和许可证)工具,可读取源代码,查找遵循特定条件的注释。构建并从注释和代码中提取信息以生成文档。 它以多种格式输出:HTML,RTF(富文本格式),LaTeX,UNIX手册页和XML。Java程序员可能熟悉类似的名为javadoc的工具。Javadoc工具是Java软件开发工具包中的标准工具,而Doxygen与C ++标准或任何C ++供应商都没有关系。C++缺乏结构化文档的标准,因此你可以自由地做任何想做的事情。例如,如
分类: 其他 发布时间: 03-01 08:03 阅读次数: 0

OpenCV 4.x API 详解与C++实例-特征检测与描述

第一节 特征检测与描述OpenCV提供了丰富的特征检测算法,比如SIFT(Scale Invariant Feature Transform)、AffineFeature、AgastFeatureDetector、AKAZE、BRISK、FastFeatureDetector、GFTTDetector、KAZE、MSER、ORB、SimpleBlobDetector等1、SIFT尺度不变特征变换算法提取图像特征SIFT类继承了cv::Feature2D类,通过create静态方法创建。stati
分类: 其他 发布时间: 03-01 08:03 阅读次数: 0

OpenCV4.x图像处理实例- 特征描述符匹配器及匹配点绘制

第二节 特征描述符匹配器及匹配点绘制OpenCV中关键点描述符的匹配器具有带有公共接口的包装器,可以轻松地在解决同一问题的不同算法之间进行切换。 本节专门介绍在多维空间中以向量表示的匹配描述符。 实现矢量描述符匹配器的所有对象都继承DescriptorMatcher接口以及相应的关键点和匹配点绘制接口。1、cv::drawKeypoints绘制关键点void cv::drawKeypoints(InputArray image,const std::vector< KeyPoint >
分类: 其他 发布时间: 03-01 08:03 阅读次数: 0

NodeMCU-ESP32开发实例-Arduino开发环境搭建

NodeMCU-ESP-32S开发环境搭建NodeMCU-32S 最强的ESP32 开发板非盗版或副厂的CH340。WiFi 蓝牙ESP-32 可用Arduino IDEESP32-S 是一款通用型WiFi-BT-BLE MCU模组,功能强大,用途广泛,可以用于低功耗传感器网络和要求极高的任务,例如语音编码、音频流和MP3解码等。此款模组的核心是ESP32芯片,具有可扩展、自适应的特点。两个CPU核可以被单独控制或上电。时钟频率的调节范围为80 MHz到240 MHz。用户可以切断CPU的电源,利用低
分类: 其他 发布时间: 03-01 08:02 阅读次数: 0

NodeMCU-ESP32开发实例-连接WiFi

连接WiFi在前面,NodeMCU-ESP32-Arduino开发环境搭建的笔记中,已经成功搭建了NodeMCU-ESP32s的开发环境并成功扫描附近的WiFi网络。下面将详细介绍NodeMCU-ESP32s连接开发板。1、准备硬件NodeMCU-ESP32s开发板一块数据线一条笔记本电脑一台假设已经通过路由器搭建好WiFi网络,并且可以访问。NodeMCU-ESP32s开发板通过数据线连接电脑。2、软件准备Arudino IDE 及ESP32插件3、代码实现#include
分类: 其他 发布时间: 03-01 08:02 阅读次数: 0

NodeMCU-ESP32开发实例-通过NTP获取 Epoch/Unix时间

通过NTP获取 Epoch/Unix时间NTP代表“网络时间协议”,它是用于在计算机系统之间进行时钟同步的网络协议。 换句话说,它用于同步网络中的计算机时钟时间。本文将介绍如何使用带Arduino IDE的NodeMCU ESP32s开发板获取Epoch/Unix时光。 获取纪元时间对于时间戳记读数,为文件指定唯一名称以及其他应用程序很有用。 我们会从NTP服务器请求当前的epoch时间,因此ESP32s开发板需要建立Internet连接。
分类: 其他 发布时间: 03-01 08:02 阅读次数: 0

NodeMCU-ESP32开发实例-ESP32的WiFi工作模式

ESP32的WiFi工作模式NodeMCU-32S 最强的ESP32 开发板非盗版或副厂的CH340 WiFi 蓝牙ESP-32 可用Arduino IDEESP32-S 是一款通用型WiFi-BT-BLE MCU模组,功能强大,用途广泛,可以用于低功耗传感器网络和要求极高的任务,例如语音编码、音频流和MP3解码等。此款模组的核心是ESP32芯片,具有可扩展、自适应的特点。两个CPU核可以被单独控制或上电。时钟频率的调节范围为80 MHz到240 MHz。用户可以切断CPU的电源,利用低功耗协处理器来
分类: 其他 发布时间: 03-01 08:01 阅读次数: 0