Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结

1.1. 五中滤镜的分别效果。。1

1.2. 基于肤色的图片分类1

1.3. 性能提升2

1.4. --code2

1.1. 五中滤镜的分别效果。。

/AtiPlatf_cms/src/com/attilax/clr/skinfltAll.java

1.2. 基于肤色的图片分类

/AtiPlatf_cms/src/com/attilax/clr/moveBySkinLow.java

生成所有图片的肤色百分比,存入csv文件。。

然后可以移动前面的20%的文件,人工二次检查

可以方便的把不便上传的文件与日益上传的文件区分开。。

1.3. 性能提升

图像处理性能比较慢,图像的处理比较消耗cpu,不知可否有方法提升??

或许可以缩小图片到标准化大小,然后点数吗??

大概100张图片需要10s。。1w张图片就需要 10分钟。。

1.4. --code

private static void getBlackPercentTxt(String d) throws IOException {

ExecutorService urlPool = Executors.newFixedThreadPool(3);

final List<Map> li = Lists.newArrayList();

Function<String, Object> closure = (String f) -> {

Runnable command = () -> {

Map m = Maps.newHashMap();

m.put("f", f);

BufferedImage src = imgx.toImg(f);

SkinFilter1 SkinFilter1a = new SkinFilter1();

BufferedImage dest = SkinFilter1a.filter(src, null);

float blackPoints = imgx.getBlackPercent(dest);

m.put("blkpst", blackPoints);

li.add(m);

n++;

System.out.println(n);

};

urlPool.execute(command);

return f;

};

//

// tOrder(li);

// li.sort((Map m)->{

//

// });

dirx.traveV3(d, closure);

urlPool.shutdown();

try {

urlPool.awaitTermination(20, TimeUnit.HOURS);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

//urlPool.sh

new Linq(li).orderby("blkpst", "asc");

filex fx= new filex("c:\\blkpst_asc.txt");

for (Map map : li) {

String line=map.get("blkpst").toString()+","+map.get("f").toString();

fx.appendLine_flush_safe(line);

}

fx.closeSF();

}

参考

肤色检测 - shangyaowei的专栏 - 博客频道 - CSDN.NET.html

肤色检测算法 - 基于不同颜色空间简单区域划分的皮肤检测算法 - songhhll的专栏 - 博客频道 - CSDN.NET.html

基于肤色的人脸检测_PerpLtx1988_新浪博客.html

人脸检测---基于肤色检测的实现.html

五种基于RGB色彩空间统计的皮肤检测算法 - 流浪的鱼 - 博客频道 - CSDN.NET.html

java 肤色检测 - epleone的专栏 - 博客频道 - CSDN.NET.html

Atitit 图像处理 常用8大滤镜效果 Jhlabs 图像处理类库

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )

汉字名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

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

Atiend

Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结的更多相关文章

  1. Atitit 图像处理 灰度图片 灰度化的原理与实现

    Atitit 图像处理 灰度图片 灰度化的原理与实现 24位彩色图与8位灰度图 首先要先介绍一下24位彩色图像,在一个24位彩色图像中,每个像素由三个字节表示,通常表示为RGB.通常,许多24位彩色图 ...

  2. titit. 深入理解 内聚( Cohesion)原理and  attilax大总结

    atitit. 深入理解 内聚( Cohesion)原理and  attilax大总结         1.1. 内聚的概念 1 1.1.1. 高内聚模式关于这个问题给出的答案是:分配职责,使其可保持 ...

  3. Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理

    Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理 1.1. 图像边缘一般都是通过对图像进行梯度运算来实现的1 1.2. Remark: 1 1.3.  1.失焦检测. 衡量画面模糊的主要方 ...

  4. Atitit  ocr识别原理 与概论 attilax总结

    Atitit  ocr识别原理 与概论 attilax总结 1.1. Ocr的过程与流程1 1.2. OCR不同技术细分略有不同,但大概原理是一样的. 即主要技术过程是:二值化(又叫归一化)----- ...

  5. Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结

    Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结 1.1. 原理,主要使用像素模糊后的差别会变小1 1.2. 具体流程1 1.3. 提升性能 可以使用采样法即可..1 ...

  6. Atitit 图像处理 深刻理解梯度原理计算.v1 qc8

    Atitit 图像处理 深刻理解梯度原理计算.v1 qc8 1.1. 图像处理  梯度计算  基本梯度 内部梯度 外部梯度 方向梯度1 2. 图像梯度就是图像边缘吗?2 1.1. 图像处理  梯度计算 ...

  7. javacpp-opencv图像处理系列:国内车辆牌照检测识别系统(万份测试车牌识别准确率99.7%以上,单次平均耗时39ms)

    javaCV图像处理系列: 一.javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置.大小.粗度.翻转.平滑等操作 二.javaCV图像处理之2:实时视频添 ...

  8. Win8 Metro(C#)数字图像处理--2.35图像肤色检测算法

    原文:Win8 Metro(C#)数字图像处理--2.35图像肤色检测算法  [函数名称] 肤色检测函数SkinDetectProcess(WriteableBitmap src) [算法说明] ...

  9. Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx

    Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx 分类 图像处理知识点体系 v2 qb24.xlsx 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...

随机推荐

  1. C++内存分配及变长数组的动态分配

    //------------------------------------------------------------------------------------------------ 第 ...

  2. codeIgniter 文件路径的问题

    学习CI的时候,发现一个问题,求指点. 整个项目的头部文件共用,CSS.JS 等文件都一起引入.在以下路径下都没问题. 首页      -- http://localhost/citest/index ...

  3. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  4. out与ref的区别

    out与ref的区别  前者传参时不必初始化,后者需要初始化 int a,b; public void fName(out int a,out int b); fName(out a , out b) ...

  5. EasyUI需注意的问题01

    一.EasyUI-Datagrid分页 在创建数据表格(DataGrid)的时候,通过设置'pagination' 属性为 true,可以在数据表格的底部生成一个分页工具栏. <table id ...

  6. 基于VC的ACM音频编程接口压缩Wave音频(一)

    (一)概述 音频数据一般都具有较高的采样率,经过压缩的原始数据才具有实用价值,否则不仅要占用大量存储空间而且在播放或进行网络传输时效率也是非常低下的,所以音频数字压缩编码在多媒体应用中有着广泛而又重要 ...

  7. dom4j解析xml的增加信息

    想要在xml中增加信息,那么就要先找到你要加信息的节点 前三行是固定模式,主要是找到xml文件的地址,并且得到根节点,再从根节点中便利出来movie的所有节点之后用集合接收 SAXReader rea ...

  8. 在chrome下的文本框sendkeys,提示element can't focus--解决方法

    在chrome下的文本框sendkeys,提示element can't focus--解决方法(成都-半步流雲,群友解决) 成都-半步流雲1.升级你的chromedriver,2.降chrome版本 ...

  9. iOS开发--Block

    iOS开发--Block 1.什么是Block,block 的作用 ui开发和网络常见功能实现回调,按钮的事件处理方法是回调方法以及网络下载后的回调处理 (1)按钮 target-action   一 ...

  10. 用Win7自带的磁盘管理工具给硬盘分区

    最近新买了一台笔记本,要给硬盘分几个区,心想还是用个工具方便点,于是就上网准备下个“硬盘分区魔术师”,但是看到有一篇文章介绍Win7系统也自带了硬盘分区工具,这我以前倒没听说过,试了一下,还挺方便好用 ...