Atitit.论图片类型 垃圾文件的识别与清理  流程与设计原则 与api概要设计 v2 pbj

1. 俩个问题::识别垃圾文件与清理策略1

2. 如何识别垃圾图片1

2.1. 体积过小文件<10kb1

2.2. 增加扩展名对于无扩展名文件1

2.3. 清理非图片(bmp,jpg,jpeg,png)的文件2

2.4. 尺寸过小图片(210*150)2

2.5. 清理广告图片(高度宽度不成比例)超长超宽图片2

2.6. 清理重复图片(此结果不能加入指纹库)2

2.7. 非本类别的图片(人工识别)2

3. 垃圾图片文件指纹库3

3.1. 根据垃圾文件指纹库(模式结果固化)3

3.2. 根据垃圾文件路径名称库(加快性能比对速度,md5可能比较慢)3

4. 人工识别垃圾图片策略3

5. 清理策略3

6. Code3

6.1. 文件去重4

1. 俩个问题::识别垃圾文件与清理策略

2. 如何识别垃圾图片

2.1. 体积过小文件<10kb

2.2. 增加扩展名对于无扩展名文件

package com.attilax.clr;

import com.attilax.clr.imp.MoveExcuter;

import com.attilax.clr.imp.NoPicReconer;

import com.attilax.clr.imp.tooMinSizePicClrerPartImp;

import com.attilax.clr.imp.tooMiniPixPicClrerPartImp;

public class ClrerPicClrer extends ClrerAbs {

public static void main(String[] args) {

ClrerPicClrer c=new ClrerPicClrer();

c.dir="d:\\ati\\isheo";

c.dir="D:\\ati\\p2015\\pic_p";

NoExtnameCheckerImp  neImp=new NoExtnameCheckerImp();

c.PreProcessor=neImp;

c.traveDir(c.dir);

System.out.println("--f");

2.3. 清理非图片(bmp,jpg,jpeg,png)的文件

Gif js

2.4. 尺寸过小图片(210*150)

2.5. 清理广告图片(高度宽度不成比例)超长超宽图片

长宽比大于2的图片

2.6. 清理重复图片(此结果不能加入指纹库)

部分重复文件是广告文件,所以容易重复

2.7. 非本类别的图片(人工识别)

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

3. 垃圾图片文件指纹库

3.1. 根据垃圾文件指纹库(模式结果固化)

3.2. 根据垃圾文件路径名称库(加快性能比对速度,md5可能比较慢)

4. 人工识别垃圾图片策略

不好的isho

不能like的pic

误删除的文件专门集中放在isho_manu文件夹中,人工处理

5. 清理策略

生成清理脚本(或者直接java程序模式)

移动到制定文件夹(推荐)

6. Code

AtibrowPrj

public class ClrerPicClrer extends ClrerAbs {

public static void main(String[] args) {

ClrerPicClrer c=new ClrerPicClrer();

c.dir="d:\\ati\\isheo";

//c.GabFileRecongers.add(new NoPicReconer());

tooMiniPixPicClrerPartImp ClrerPartImp = new tooMiniPixPicClrerPartImp();

ClrerPartImp.dir=c.dir;

ClrerPartImp.targetDir="d:\\ati\\tooMiniPixPic_files";

c.IClrerParts.add(ClrerPartImp);

tooMinSizePicClrerPartImp tmsc=new tooMinSizePicClrerPartImp();

tmsc.dir=c.dir;

tmsc.targetDir="d:/ati/tooMinSize_files";

c.IClrerParts.add(tmsc);

c.traveDir(c.dir);

System.out.println("--f");

}

6.1. 文件去重

DeduliAbs_ByMoveToNewFolder.java

Atitit.论图片类型 垃圾文件的识别与清理  流程与设计原则 与api概要设计 v2 pbj的更多相关文章

  1. Atitit.论垃圾文件的识别与清理 文档类型垃圾文件 与api概要设计pa6.doc

    Atitit.论垃圾文件的识别与清理 文档类型垃圾文件 与api概要设计pa6.doc 1. 俩个问题::识别垃圾文件与清理策略1 1.1. 文件类型:pic,doc,v,m cc,isho pose ...

  2. Atitit。Tree文件解析器的原理流程与设计实现  java  c# php js

    Atitit.Tree文件解析器的原理流程与设计实现  java  c# php js 1. 解析原理与流程1 1.1. 判断目录  ,表示服  dirFlagChar = "└├─&quo ...

  3. Atitit 基于图片图像 与文档混合文件夹的分类

    Atitit 基于图片图像 与文档混合文件夹的分类 太小的文档(txt doc csv exl ppt pptx)单独分类 Mov10KminiDoc 但是可能会有一些书法图片迁移,因为他们很微小,需 ...

  4. [转]webstorm中js文件被识别成txt类型

    问题描述: webstorm中index.js文件被识别成txt格式,如下图. 原因: webstorm中js文件被识别成txt文件,原因在于txt类型识别了以当前js文件名命名的模式. 解决办法: ...

  5. atitit.短信 验证码  破解  v3 p34  识别 绕过 系统方案规划----业务相关方案 手机验证码  .doc

    atitit.短信 验证码  破解  v3 p34  识别 绕过 系统方案规划----业务相关方案 手机验证码  .doc 1. 手机短信验证码 vs 图片验证码 安全性(破解成本)确实要高一些1 1 ...

  6. Atitit.java图片图像处理attilax总结

    Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image 获取图像像素点 image.getRGB(i, lineIndex); ...

  7. Atitit.java图片图像处理attilax总结  BufferedImage extends java.awt.Image获取图像像素点image.getRGB(i, lineIndex); 图片剪辑/AtiPlatf_cms/src/com/attilax/img/imgx.javacutImage图片处理titit 判断判断一张图片是否包含另一张小图片 atitit 图片去噪算法的原理与

    Atitit.java图片图像处理attilax总结 BufferedImage extends java.awt.Image 获取图像像素点 image.getRGB(i, lineIndex); ...

  8. 《前端之路》之 前端图片 类型 & 优化 & 预加载 & 懒加载 & 骨架屏

    目录 09: 前端图片 类型 & 优化 & 预加载 & 懒加载 & 骨架屏 09: 前端图片 类型 & 优化 & 预加载 & 懒加载 & ...

  9. Ajax实现文件上传的临时垃圾文件回收策略

    转载请注明原文出处:http://www.cnblogs.com/ygj0930/p/6126240.html 在我们web开发过程中,一个很重要的技术就是Ajax(异步传输).Ajax通过把数据从网 ...

随机推荐

  1. Razor练习2

    Razor的数据类型有string,int,float,decimal,bool等. 另外需要对数据类型的转换,通常的方法有如下:ToString(): 转换数据类型为字符串(string).此与C# ...

  2. ubuntu16.4下用jexus部署asp.net core rtm

    上篇文章介绍了下用vs发布部署到iis环境,今天说下ubuntu 下部署asp.net core,不需要安装.net core sdk,自带运行时方式部署,利用jexus服务器转发请求到asp.net ...

  3. iOS取得AddressBook联系人信息

    新建一个CContact类用于存放联系人信息,下面是该类的代码: CContact.h代码: 01 #import <Foundation/Foundation.h> 02   03   ...

  4. 三层架构与MVC之间的区别

    文章转发自:http://www.admin10000.com/document/535.html 我们平时总是将三层架构与MVC混为一谈,殊不知它俩并不是一个概念.下面我来为大家揭晓我所知道的一些真 ...

  5. lodash链式使用

    chain var _ = require('lodash'); var user1 = { name: 'zhangsan', height: 180, weight: 120 }; var use ...

  6. Hibernate(六)__对象的三种状态

    瞬时(transient):数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来且与session没有关联的对象. 持久(persistent):数据库中有数据与之对应,当前 ...

  7. CamanJS – 提供各种图片处理的 JavaScript 库

    CamanJS 是一个基于 Canvas 处理图片的 Javascript 库,结合简单易用的接口和先进高效的图像编辑技术.CamanJS 很容易扩展新的过滤器和插件,并伴随着一系列广泛的图像编辑功能 ...

  8. Number()、parseInt() 和 parseFloat() 的区别

    一:Number() 如果是Boolean值,true和false值将分别被转换为1和0. 如果是数字值,只是简单的传入和返回. 如果是null值,返回0. 如果是undefined,返回NaN. 如 ...

  9. 总结CSS3新特性(选择器篇)

    CSS3新增了嗯- -21个选择器,脚本通过控制台在这里运行; ~: p ~ p { color : red;/*此条规则将用于p后边所有的p...就是除了第一个p的所有p,规则同p:not(:nth ...

  10. HTML标签的嵌套

    随着时间的推移,我们学习html的基础知识有了大概的了解.而我发现,平时在写html文档的时候,发现不太清楚标签之间的嵌套规则,经常是想到什么标签就用那些,然而发现有时的标签嵌套却是错误的.通过网上找 ...