青年大学习分类收集截屏小程序 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

青年大学习分类收集截屏小程序

发表时间:2020-9-26

发布人:葵宇科技

浏览次数:133

青年大学习简易打包小程序

    • 收取截屏图片的难受
    • 士可忍,我不能忍
    • Matlab 一键分类青年大学习截屏

收取截屏图片的难受

不当组织委员不知道,收集每个人的青年大学习的截屏,并存入每个人的文件夹是多么浪费时间的事。那话说收青大截屏分几个步骤:

  1. 同学发给你
  2. 你打开QQ存入手机并上传电脑
  3. 打开电脑
  4. 将图片拖入名字对应的文件夹
  5. 打包发送

看似简单,困难在于班级同学不会同时发给你,所以这个收集图片的战线估计要持续一周,最终会在截至的最后一天迎来高峰。

这人时间一长,记性就不好,赶上忙了忘记存图片还要挨个的找聊天记录

士可忍,我不能忍

简单方便的开发一个小程序,而且符合劳苦大众的大学生,matlab是首选工具。本来想搞个微信小程序,奈何我不会后端,没必要为了个截屏难为自己。大佬有兴趣的可以开发的小程序造福一下班级干部。哈哈哈

话不多说上程序!!!!!!!!!!!!!!

Matlab 一键分类青年大学习截屏

  1. 首先,需要发布一个问卷星。还好问卷星可以上传图片,并将文本部分命名为图片的名字,这样就相当于给每个人的图片做了一个独有的索引标志。
    问卷星问题

2.问卷星导出的图片会自带姓名 (下图打码)
在这里插入图片描述

  1. 需要自己创建一个班级信息表 txt 格式 (这里就不展示了,一般姓名和学号各一行就可以了。)

  2. 在这里插入图片描述

  3. 打开matlab 导入这个程序,设置好图片读入路径和存入路径。就可以轻松搞定了

clc
clear
%% 读取人员信息
feature('DefaultCharacterSet', 'UTF8'); 
data = importdata('data.txt');
name_num = length(data.textdata);
%%
cha = 'test\';  %这个cha 可以和t_path 合并,无所谓啦,最后都合并在一起,懒得改
t_path = 'C:\Users\baoye\Desktop\daxuexi\';  %随便路径,最后存照片的
file_path =  'C:\Users\baoye\Desktop\daxuexi\91723930\';% 图像文件夹路径  
img_path_listjpg = dir(strcat(file_path,'*.jpg'));%获取该文件夹中所有jpg格式的图像
img_path_listpng = dir(strcat(file_path,'*.png'));%获取该文件夹中所有png格式的图像
img_path_list = [img_path_listjpg;img_path_listpng]; 
img_num = length(img_path_list);%获取图像总数量 
I=cell(1,img_num); 
if img_num > 0 %有满足条件的图像   
       for j = 1:img_num %逐一读取图像  
           image_name = img_path_list(j).name;% 图像名  
           image =  imread(strcat(file_path,image_name));  
           I{j}=image;
          fprintf('%d %d %s\n',i,j,strcat(file_path,image_name));% 显示正在处理的图像名  
           %图像处理过程 省略  

           %这里直接可以访问细胞元数据的方式访问数据

       end  
end

%% 清空旧文件夹
for i = 1:name_num
   t_path = [t_path,cha,'0',num2str(data.data(i)),' ',cell2mat(data.textdata(i))];
   if exist(t_path)~=0   %判断就文件夹是否存在
       rmdir(t_path, 's')  %存在,删除旧文件 
       mkdir(t_path) 
   else
       mkdir(t_path) 
   end
   t_path = 'C:\Users\baoye\Desktop\daxuexi\';
end

%% 图像与人员信息的匹配(这里使用名字,也可以自己选择改成学号)

for i = 1:name_num
   for j = 1:img_num
      k = isempty(strfind(img_path_list(j).name,data.textdata(i))); 
      if k == 0 
        t_path = [t_path,cha,'0',num2str(data.data(i)),' ',cell2mat(data.textdata(i))];
%          mkdir(t_path)  


        %设置图片路径并写入
       
        t_path = fullfile(t_path,img_path_list(j).name);
        imwrite(cell2mat( I(j)),t_path)

      end
      %路径恢复
      t_path = 'C:\Users\baoye\Desktop\daxuexi\';
   end
   
end
  1. 示例:
    test文件夹里面是空的在这里插入图片描述
    程序运行之后会在test中创建文件夹,并图片和文件夹对号入座!!

生成结果

这个程序的缺点是没有设置matlab 对于中文的识别,所以如果你的文件夹名字有中文,可以设置一下matlab对于中文的设置,这里没有设置,所以路径都是字母或数字组成
小小的人性化的地方是可以自动删除旧文件夹,创建新的

如果有大佬想完善随时可以完善!!!这个程序纯属因为本人懒的分配图片
有BUG尽量自己解决哈哈哈,因为代码实在简单(开个玩笑)。有更简单的代码可以交流

相关案例查看更多