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. 原生js-日历插件

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  2. 谁动了我的特征?——sklearn特征转换行为全记录

    目录 1 为什么要记录特征转换行为?2 有哪些特征转换的方式?3 特征转换的组合4 sklearn源码分析 4.1 一对一映射 4.2 一对多映射 4.3 多对多映射5 实践6 总结7 参考资料 1 ...

  3. Bootstrap自带的一些预定义的按钮颜色

    浅蓝色 btn-info 被用在那些用户可能会采取的操作上. 红色btn-danger被用来提醒用户该操作具有“破坏性”,例如删除一张猫的图片.

  4. 转行IT行业的心路历程2

    2011/07-2016/12 11年毕业之后阴差阳错的到了宁波慈星股份,学习了针织机械.当初的想法很简单从沈阳到南方,因为南方小厂多机会多,因为我的目标就是当老板(呵呵,大部分的人的目标都是吧,现在 ...

  5. java.lang.RuntimeException: Method setUp in android.test.ApplicationTestCase not mocked. See http://g.co/androidstudio/not-mocked for details.

    解决: build.gradle里加入: android { testOptions { unitTests.returnDefaultValues = true } }

  6. Linux内核--网络栈实现分析(五)--传输层之UDP协议(上)

    本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明出处http://blog.csdn.net/yming0221/article/details/7532512 更多请看专栏, ...

  7. redis持久化以及主从服务器的配置

    作者:silenceper 日期:2013-10-03 原文地址:http://silenceper.com/archives/959.html redis 与memcached 最大的一个区别就是R ...

  8. spark on centos6.5 安装

    第一步在centos 6.5上安装java 运行环境 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-18 ...

  9. Magicodes.Shop——版本历史

    Magicodes.Shop为湖南心莱信息科技有限公司(xin-lai.com)Magicodes系列产品之一. 产品中引用的Magicodes系列Nuget包的开源库地址为:https://gith ...

  10. 需要知道关于struct的一些事情

    前言 重构代码的时候,会遇到长参数的方法,此时就需要使用“引入参数对象”来封装这些参数.大多数时候,这些参数都是简单类型,而且所有参数的值占用的空间也不是非常的大,此时使用对象真的好吗?对象的特性是堆 ...