Opencv读取多张图片

SLAM基础代码学习

作业:请编程实现将文件夹/rgb下以时间命名的序列图片重新命名为0000-9999的格式。

 

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main()
{
    cv::String path="/home/ze/data/";//待处理图片路径
    cv::String dest="/home/ze/data/";//保存处理后的图片路径
    cv::String savefilename;
    vector<cv::String> filenames;
    Mat srcImg,dstImg;

    cv::glob(path,filenames);//glob 将路径里的图片读取到vector中
//void cv::glob ( String pattern,std::vector< String > & result,bool recursive = false)
   for(int i=0;i<filenames.size();++i)
    {
        srcImg=cv::imread(filenames[i]);
        srcImg.copyTo(dstImg);
        if(i<10)
        {
        savefilename=dest+"000"+to_string(i)+".png";  // /home/ze/data/000i.png
        cv::imwrite(savefilename,dstImg);  //保存路径+图片
        }
        if(i>=10&&i<99)
        {
        savefilename=dest+"00"+to_string(i)+".png";
        cv::imwrite(savefilename,dstImg);
        }
        if(i>=100&&i<999)
        {
        savefilename=dest+"0"+to_string(i)+".png";
        cv::imwrite(savefilename,dstImg);
        }
        if(i>=1000&&i<9999)
        {
        savefilename=dest+to_string(i)+".png";
        cv::imwrite(savefilename,dstImg);
        }
     
    }
  
return 0;
  }

顺利运行 但是很慢

出处:https://github.com/lyy-ai/SLAM-Learning

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值