SLAM学习-文件按序批量重命名

任务 我们知道SLAM是处理序列图像的,有时候需要格式化的图像名字用作输入。前面提到的TUM的RGB-D数据集中图像是根据时间命名的,请从下面链接下载数据集fr1/desk https://vision.in.tum.de/data/datasets/rgbd-dataset/download# 并解压。请编程实现将文件夹/rgb下以时间命名的序列图片重新命名为0000-9999的格式。 题目来源:从零开始一起学习SLAM | 学习SLAM到底需要学什么?-计算机视觉life Linux下C++实现文件批量重命名 获取所有文件名findFileNames 虽然给出DIR为__dirstream的别名,但在本地的头文件中寻找不到后者的定义,是不透明的数据类型.dirent结构体: 首先我们要弄清楚目录文件(directory file)的概念:这种文件包含了其他文件的名字以及指向与这些文件有关的信息的指针(摘自《UNIX环境高级编程(第二版)》)。1 当使用readdir(pDir)时,pDir中指向文件指针后移,通过rewinddir(pDir)可以复位.3 c_str()函数返回一个指向正规C字符串的指针常量, 内容与本string串相同.(其实它指向的是string对象内部真正的char缓冲区),所以返回const,以防止用户的修改。这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式。2对于strcmp()函数,需要const char*类型的输入,因此可以通过c_str()将string类型变量得到该类型内容 此外,可以通过递归访问一个路径下包括子目录在内的所有文件,如注释所示. 批量重命名bulkRename 由于题目要求修改的数字需要补零,因此封装函数fillNum()完成工作.5 ‘setw’ is not a member of ‘std’ 需要引入头文件iomanip 使用iterator遍历所有文件名 可以通过sort()函数将vector容器中的文件名排序,需要头文件<algorithm>6 通过函数rename()将系统文件重命名,需要头文件<cstdlib>4 效果展示 完整代码 参考 [1] Linux下DIR,dirent,stat等结构体详解 [2] c++ string.c_str()小结 [3] C语言readdir()函数:读取目录函数 [4] C++修改文件名 [5] 字符串前面自动补零? [6] C++ 中vector的使用方法

PLC学习笔记(五)电梯逻辑

今天意外关注起发生在9年前的那起温州动车追尾事故,原本是想时隔多年再追问内心的困惑,掩埋列车是否合理?
但浏览更新时间停留在很久之前的帖子、报道,看到了最后获救的女童小伊伊,还有她远在天国的父母,我不胜悲痛。读到身为教师骨干的爸爸的好友的祭文,强烈的情感抒发使人感同深受,还有那对中国制造的拷问,也让我羞愧——
安全生产,可我在进行电梯实验测试时,留意到一个现象:即使未开门到位,乘客也会自行上梯。那我在为提高评分时,便想到过利用这一漏洞减少开门时间。在冰冷的分数之外,我好像忽视了实际生产的安全性。如今,我的念头完全被打消,生命面前,再高的分数也是不及格!

PLC学习笔记(三)循环遍历续篇

在我看来,编程的魅力就在于利用有限的语言写出无限的循环,把清晰的指令交给计算机去做最枯燥无味的重复工作。
因此,对于本次电梯的控制,当完成了对应输入输出变量的控制能够进行初始化工作及前往指定楼层后,便需要把电梯的选层与当前楼层综合得到前进目标的逻辑完整。

利用蓝鲸MagicBox组件库实现时间轴效果

开启多样页面之旅 任务 一直想将计划的完成情况实时更新在主页面 Summer Vacation Plan of 2020 时间轴可以起到这一作用。但希望以美观的形式出现,想到尝试使用学习SaaS时,蓝鲸的MagicBox前端代码可以直接使用。 效果 清空 生成样例 提交 2015-05-21 blue king 给你发了一封邮件 我们的目标是让您对腾讯云的服务… 查看详情 删除 5 分钟前 blue king 已经接受你的认证申请! 27 分钟前 blue king 给你回复 我们会用饱满的热情、诚恳的态度、专业的知识背景,耐心、细致地为用户解决问题… 回复 2015-05-20 2 天前 blue king 上传一组照片 5 分钟前 blue king 已经接受你的认证申请! 27 分钟前 blue king 给你回复 我们会用饱满的热情、诚恳的态度、专业的知识背景,耐心、细致地为用户解决问题… 回复 2015-05-20 2 天前 blue king… Continue reading 利用蓝鲸MagicBox组件库实现时间轴效果

无向图两个顶点之间的所有简单路径

给定一个无向图的顶点个数, 再给出有关联的边的信息,请找出给定的两个顶点之间的所有简单路径。按照顶点编号的大小顺序依次输出。

Published
Categorized as 算法

matlab处理音频文件——语音识别实例

任务 教科书式的信号处理偏理论,不妨尝试现实中的音频文件,与实践接轨。 在工具包Signal Processing Toolbox的文档示例中有Find a Signal in a Measurement,通过相关xcorr()的计算找到一段数据中是否存在指定信号:与匹配滤波器的原理相一致。 导入音频文件 根据matlab提供丰富的文档说明: audioinfo(FilePath) 显示路径为FilePath文件的相应信息,例如第一个输出为如下所示,已知的信息如:压缩方式为’AAC’、2个声道、采样频率为48000Hz(1s采样48000次)、时长为44.0319、样本总数量2113532(采样频率*时长) wholeInfo = 包含以下字段的 struct: Filename: ‘C:\Users\cascara\Documents\录音\paragraph.m4a’ CompressionMethod: ‘AAC’ NumChannels: 2 SampleRate: 48000 TotalSamples: 2113532 Duration: 44.0319 Title: ‘paragraph’ Comment: [] Artist: [] BitRate: 199.3600 [y,Fs] = audioread(FilePath); 将文件路径FilePath对应的音频文件的样本y及频率Fs读取 sound(y,Fs) 电脑的扬声器播放音频的形式将读取的数据展示出来。 分离声道 首先用采样数量length(y)除以采样频率获得时间尺度,以1/Fs为分度值。 channel1=y(:,1); 已知音频数据包含两个声道,直接绘制图像可看到两种颜色的叠加。由matlab的语法,将矩阵进行切片,以提取两个声道的数据。 假设一个矩阵A A(1,:) %输出A矩阵的第一行 A(:,1) %输出A矩阵的第一列 A(1:2, 2:3)… Continue reading matlab处理音频文件——语音识别实例

匹配滤波器

信号矢量空间 空间是指赋予某种数学结构的集合 引入线性运算的矢量集合 线性空间 引入矢量长度“范数” 线性赋范空间 引入矢量间相互关系“内积” 内积空间 不同的空间具有相应数学运算规则、定理。信号的能量与矢量空间的长度可以类比,对于常用的范数||·||1、||·||2、||·||∞,在信号空间中具有的物理意义分别是强度、能量与幅值。 为了对能量无限如周期信号物理概念的描述,引入类似范数的平均值(直流分量)、平均功率。 此后,很多能量有限信号的定义对于功率有限信号失去意义,采用相似的推广方式得到可类比的定义。如相关、能量谱->功率谱 柯西——施瓦茨不等式的证明 信号的正交函数分解 求f1(t)=C12f2(t)中C12的推导: 而最终求最小方均误差的方法(一般情况推导戳链接): 帕塞瓦尔定理 对于完备正交函数满足帕塞瓦尔方程 物理意义:一个信号的功率恒等于在完备正交函数集上各分量的功率之和 数学意义:矢量空间信号的范数(内积)不变性 <f(t),f(t)>=<c,c> 相关 重点捋清能量信号的章节内容,功率信号可类比得出,主干清晰,减少篇幅: 匹配滤波器 h(t)=s(T-t) matlab实现 例题 例6-7在测距系统中,发送信号s(t),以匹配滤波器接收回波信号,利用滤波器输出信号峰值出现的时间折算目标距离。如果有两种可供选择的s(t)信号,分别如图6- 22(a)的s1(t)和(b)的s2(t)。求:(1)分别画出s1(t)和s2(t)自相关函数波形R11(t)和R22(t)。(2)为改善测距精度,你认为应选用s1(t)或s2(t)两种脉冲的哪一种信号? 基本思路 将非周期信号表示出来 matlab中的heaviside(t)函数表示阶跃函数,可以通过其的时移、叠加将题目的输入信号表示 将相关函数表示 积分通过函数int(f,t,a,b)实现:对函数f的自变量t从a到b积分 匹配滤波器就是相关函数的时移 整体的函数通过定义的符号变量实现 完整代码 定义部分 绘图部分 输出图片

sqli-labs学习笔记

less1 入门感知篇,若尝试万能密码格式,得到结果如下 教程有过提示,比较恒为真语句与假语句的结果有无区别 ??这是得到了用户和密码么?换了不同的id值,得到的就是不同的用户和密码了 尝试其他语句 数据库名 同样根据教程,得到结果,正是数据库名。 这个语句是什么意思呢? 显然id=-1一般是不存在的,因实际显示的union后的数据 database()是内置函数,用来显示当前使用数据库 因为union需要保证列数一致,因此需要填充为合适的列数(试出来吗?) 后面的–就是注释后面的语句 表名 group_concat()函数返回一个字符串结果,该结果由分组中的值连接组合而成。 在information_schema中存放的正是各表的数据 这里得到的就是当前数据库的所有表名 获取用户名和密码信息 通过上述类似原理获取users表中的列名 less2 只需把less1中的单引号去掉即可获得所需数据