文件重命名批量处理(Matlab)

第一种方法:eval 方法
该方法未对文件进行任何处理,直接重命名。文件不损失任何信息。


tic
clear;
close all;
% edited by cmwang,if any problem,please reference the website
%http://blog.csdn.net/jiandanjinxin/article/details/51513598%-------------------------------------------------------------------------
% 读取文件方法1
srcDir=uigetdir('Choose source directory.'); %获得选择的文件夹
cd(srcDir);
% 读取文件方法2
% % srcDir='.\FinalJPEG2048'; %获得选择的文件夹
% % cd(srcDir);
%--------------------------------------------------------------------------% 带有时间标志的重命名文件夹年月日和时刻
savetime = fix(clock);
savetimestr = num2str(savetime);
savetimestr(isspace(savetimestr)) = []; %去除所有空格
Renamefullname = ['Rename' savetimestr];if exist(Renamefullname,'dir') == 0mkdir (Renamefullname)
elsecd Renamefullnamedelete *cd ..
end% 复制重命名文件夹到带有时间标志的文件夹中
copyfile('*.jpg',Renamefullname)cd(Renamefullname);
allnames=struct2cell(dir('*.jpg')); %只处理8位的jpg文件
[k,len]=size(allnames); %获得jpg文件的个数for ii=1:len%逐次取出文件name=allnames{1,ii};%----------------------------------------------------------------------% 重命名规则为原始图像中的数值加上100,你可在此区域添加你自己的重命名规则newnameformat =name(end-3:end);numberstr1 = name(end-6:end-4);number  = str2num(numberstr1);number2 =num2str(number+100);newname = [number2 newnameformat];%----------------------------------------------------------------------% 关于renameStr一定要注意里面的空格和双引号renameStr = ['!rename', ' "',name,'" ',newname];eval(renameStr)
end
cd ..
close all;
Renametime = toc;disp('------------------------------------------------------------------')
disp(['The Rename time is ', num2str(Renametime), 's'])
disp('------------------------------------------------------------------')

第二种方法: imwrite
该方法对文件进行了处理在另存为,即重命名。但是文件有可能会损失信息,具体信息可对比重命名前后文件的大小。

tic
clear;
close all;
% edited by cmwang,if any problem,please reference the website
%http://blog.csdn.net/jiandanjinxin/article/details/51513598%-------------------------------------------------------------------------
% 读取文件方法1
srcDir=uigetdir('Choose source directory.'); %获得选择的文件夹
cd(srcDir);
allnames=struct2cell(dir('*.jpg')); %只处理8位的jpg文件
[k,len]=size(allnames); %获得jpg文件的个数% 读取文件方法2
% % srcDir='.\FinalJPEG2048'; %获得选择的文件夹
% % cd(srcDir);
%--------------------------------------------------------------------------% 带有时间标志的重命名文件夹年月日和时刻
savetime = fix(clock);
savetimestr = num2str(savetime);
savetimestr(isspace(savetimestr)) = []; %去除所有空格
Renamefullname = ['Rename' savetimestr];if exist(Renamefullname,'dir') == 0mkdir (Renamefullname)
elsecd Renamefullnamedelete *cd ..
endfor ii=1:len%逐次取出文件name=allnames{1,ii};I=imread(name); %读取文件%-------------------------------------------------------------------------%然后在此处添加你的图像处理程序即可if size(I,3)==3;A = rgb2gray(I);elseA = I;end%-------------------------------------------------------------------------%----------------------------------------------------------------------% 重命名规则为原始图像中的数值加上100,你可在此区域添加你自己的重命名规则newnameformat =name(end-3:end);numberstr1 = name(end-6:end-4);number  = str2num(numberstr1);number2 =num2str(number+100);newname = [number2 newnameformat];%----------------------------------------------------------------------% 注意imwrite中的空格imwrite(A,['.\' Renamefullname '\',newname])
end
close all;
Renametime = toc;disp('------------------------------------------------------------------')
disp(['The Rename time is ', num2str(Renametime), 's'])
disp('------------------------------------------------------------------')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/246994.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

React-router总结

版本 v3和v4有一些差距&#xff1a; https://blog.csdn.net/qq_35484341/article/details/80500237 以下的总结&#xff0c;都是基于V4的 官方文档&#xff1a;https://reacttraining.com/react-router/web/guides/quick-start 核心组件和用法 <BrowserRouter/> <H…

机器学习之 weka学习(一)weka介绍,安装和配置环境变量

本部分详情可查看博客http://blog.csdn.net/u011067360/article/details/20844443 数据挖掘开源软件&#xff1a;WEKA基础教程 Weka简介&#xff1a; Weka是由新西兰怀卡托大学开发的智能分析系统&#xff08;Waikato Environment for Knowledge Analysis&#xff09; 。在怀…

第一章:线性空间和线性变换

转载于:https://www.cnblogs.com/invisible2/p/11514817.html

机器学习之 weka学习(二)算法说明

本文转自&#xff1a;http://blog.csdn.net/mm_bit/article/details/47405433 weka中的各算法说明 1) 数据输入和输出 WOW()&#xff1a;查看Weka函数的参数。 Weka_control()&#xff1a;设置Weka函数的参数。 read.arff()&#xff1a;读Weka Attribute-Relation File Forma…

TypeScript泛型

泛型的概念 指不预先确定的数据类型&#xff0c;具体的类型要在使用的时候才能确定。咋一听&#xff0c;是不是觉得JavaScript本身就是这样&#xff1f;这是由于理解有误。前面说“在使用的时候确定”&#xff0c;而非在程序执行的时候确定。 泛型函数 现在有个需求&#xff1a…

TypeScript类型检查机制

类型推断 指不需要指定变量的类型&#xff0c;TS编译器可以根据某些规则自动推断出类型。 什么时候会有类型推断&#xff1f; 声明变量时没有指定类型函数默认参数函数返回值......let a; // 这时自动推断为any类型 let b 1; // 推断为number类型 let c []; // 推断为由any类…

机器学习之 weka学习(三)

本文转自&#xff1a;http://blog.csdn.net/qiao1245/article/category/6115745 Weka教程笔记 http://blog.csdn.net/qiao1245/article/category/6115745 使用Weka进行数据挖掘&#xff08;Weka教程二&#xff09;Weka数据之ARFF与多文件格式转换 http://blog.csdn.net/qiao…

机器学习之 weka学习(四)

本文转自&#xff1a; http://blog.csdn.net/lantian0802/article/details/8875874 http://blog.csdn.net/lkj345/article/details/50152055 点击最上方的Classify按钮&#xff0c;选择Logistic&#xff08;逻辑回归&#xff09;分类方法&#xff0c;在Test options中选择…

TypeScript模块系统、命名空间、声明合并

命名空间 命名空间能有效避免全局污染。在ES6引入模块之后&#xff0c;命名空间就较少被提及了。如果使用了全局的类库&#xff0c;命名空间仍是一个好的解决方案。 namespace Shape{const pi Math.PI;// 使用export关键字导出&#xff0c;可以在全局空间内可见export functio…

机器学习之 weka学习(五)示例用法

WEKA 开发学习 &#xff1a;源码法分析 http://www.360doc.com/userhome.aspx?userid13256259&cid11# 用 WEKA 进行数据挖掘 http://www.ibm.com/developerworks/cn/opensource/os-weka1/WEKA使用教程 http://blog.csdn.net/yangliuy/article/details/7589306 初试w…

如何在TypeScript中使用JS类库

使用流程 1.首先要清除类库是什么类型&#xff0c;不同的类库有不同的使用方式 2.寻找声明文件 JS类库一般有三类&#xff1a;全局类库、模块类库、UMD库。例如&#xff0c;jQuery是一种UMD库&#xff0c;既可以通过全局方式来引用&#xff0c;也可以模块化引用。 声明文件 当我…

机器学习之 weka学习(六)最大内存

Weka 常见问题处理&#xff1a; weka如何安装支持向量机工具包 方法一、打开 weka&#xff0c;工具栏的Tools–>Package manager,可在里面添加需要的工具包。 方法二、下载 libsvm-**.jar 包&#xff0c;开源的。解压文件夹&#xff0c;里面……\libsvm-3.19\java ,下面有…

使用Jest进行单元测试

Jest是Facebook推出的一款单元测试工具。 安装 npm install --save-dev jest ts-jest types/jest 在package.json中添加脚本&#xff1a; “test”: "jest" 生成Jest配置文件&#xff08;生成jest.config.js&#xff09; npx ts-jest config:init 使用 先简单编写一个…

国外十大高校人工智能实验室及其代表性人物一览

本文转自&#xff1a; http://toutiao.com/a6293031494186107137/?tt_frommobile_qq&utm_campaignclient_share&appnews_article&utm_sourcemobile_qq&iid4325464459&utm_mediumtoutiao_android 高校建立的实验室与大公司有所不同&#xff0c;其研究项目…

pytorch简单框架

网络搭建&#xff1a; mynn.py: import torchfrom torch import nnclass mynn(nn.Module): def __init__(self): super(mynn, self).__init__() self.layer1 nn.Sequential( nn.Linear(3520, 4096), nn.BatchNorm1d(4096), nn.ReLU(True) …

java 基础安装和Tomcat8配置

初识 java&#xff0c;基础安装的说明。 下载 在oracle官网一般在同一个java版本会提供2个版本&#xff0c; 一个是Java SE Development Kit 7u80&#xff0c;此版本包含JDK开发环境版本&#xff1b; 另外一个是 Java SE Runtime Environment 7u80&#xff0c;此为只包含JR…

TypeScript React

环境搭建 我们当然可以先用脚手架搭建React项目&#xff0c;然后手动配置成支持TypeScript的环境&#xff0c;虽然比较麻烦&#xff0c;但可以让你更清楚整个过程。这里比较麻烦&#xff0c;就不演示了&#xff0c;直接用命令配置好。 npx create-react-app appname --typescri…

matlab内存溢出的解决方案

&#xff08;1&#xff09; 增加虚拟内存&#xff1a;cmd -> taskmgr 打开任务管理器&#xff0c;查看物理内存和虚拟内存&#xff0c;可观察matlab在运行过程中是否超过物理内存和虚拟内存。若超过&#xff0c;增加虚拟内存的方法是不可行的。物理内存不足的时候可以通过将…

c++MMMMM:oo

1.union&#xff0c;struct和class的区别 转载于:https://www.cnblogs.com/invisible2/p/11524465.html

matlab调用Java程序时出现 Java.lang.OutOfMemoryErrot: GC overhead limit exceeded

matlab调用Java程序时出现 java.lang.OutOfMemoryError: GC overhead limit exceeded JDK1.6.0_37和JDK_1.7.0_60版本&#xff0c;这2个版本中JVM默认启动的时候-XX:UseGCOverheadLimit&#xff0c;即启用了该特性。这其实是JVM的一种推断&#xff0c;如果垃圾回收耗费了98%的…