SLAM数据集序列图片如何批量处理
Posted indulge-code
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SLAM数据集序列图片如何批量处理相关的知识,希望对你有一定的参考价值。
原创:SLAM爬坑之行
引言:在SLAM学习过程中,有时候需要对大量的数据集比如TUM/KITTI等图片序列进行批量处理,这个时候需要用到opencv中的函数对图像进行批量处理的话,会大大减少我们的时间,提高工作效率。
详细流程:
1、数据集下对大批量图片文件名的导出
我们采用的是TUM实验室中的rgbddatasetfreiburg2pioneerslam的RGB图像序列,每当看见这些密密麻麻的数据图像的时候,就会有一种无力感,所以需要批量处理。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W9k03k7b-1592542839980)(D:SLAMSLAM基础文章 gbseires.png)]
-
1、使用ls >命令将目录RGB(根据实际情况进行更改)中的图片名列举出来,然后利用>将文 件名重定向到test.txt中(.txt的名字可根据需要自定义),效果入下图,可以看见rgb中的图像序列已经被保存,终端输入下列指令后结果如下图所示
ls rgb >text.txt
-
2、利用opencv实现批量图像的处理工作
下图是处理后的图像,这样就可以我们就可以看见原文件rgb中的200张彩色图像被批量处理成灰度图并且重命名。
3、常用举例按规律读取并显示
数据集命名规则如下所示,下列程序将按照序列号名称顺序读取
4、写入序列图片
char path[200];
sprintf(path, "../save/%d.jpg", i);
Mat edgeMat;
imwrite(path, edgeMat);
[参考]:
以上是关于SLAM数据集序列图片如何批量处理的主要内容,如果未能解决你的问题,请参考以下文章
[YOLO专题-17]:YOLO V5 - 如何把YOLO训练数据集批量转换成带矩形框的图片