Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结
Atitit 图像处理--图像分类 模式识别 肤色检测识别原理 与attilax的实践总结
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的实践总结的更多相关文章
- Atitit 图像处理 灰度图片 灰度化的原理与实现
Atitit 图像处理 灰度图片 灰度化的原理与实现 24位彩色图与8位灰度图 首先要先介绍一下24位彩色图像,在一个24位彩色图像中,每个像素由三个字节表示,通常表示为RGB.通常,许多24位彩色图 ...
- titit. 深入理解 内聚( Cohesion)原理and attilax大总结
atitit. 深入理解 内聚( Cohesion)原理and attilax大总结 1.1. 内聚的概念 1 1.1.1. 高内聚模式关于这个问题给出的答案是:分配职责,使其可保持 ...
- Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理
Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理 1.1. 图像边缘一般都是通过对图像进行梯度运算来实现的1 1.2. Remark: 1 1.3. 1.失焦检测. 衡量画面模糊的主要方 ...
- Atitit ocr识别原理 与概论 attilax总结
Atitit ocr识别原理 与概论 attilax总结 1.1. Ocr的过程与流程1 1.2. OCR不同技术细分略有不同,但大概原理是一样的. 即主要技术过程是:二值化(又叫归一化)----- ...
- Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结
Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结 1.1. 原理,主要使用像素模糊后的差别会变小1 1.2. 具体流程1 1.3. 提升性能 可以使用采样法即可..1 ...
- Atitit 图像处理 深刻理解梯度原理计算.v1 qc8
Atitit 图像处理 深刻理解梯度原理计算.v1 qc8 1.1. 图像处理 梯度计算 基本梯度 内部梯度 外部梯度 方向梯度1 2. 图像梯度就是图像边缘吗?2 1.1. 图像处理 梯度计算 ...
- javacpp-opencv图像处理系列:国内车辆牌照检测识别系统(万份测试车牌识别准确率99.7%以上,单次平均耗时39ms)
javaCV图像处理系列: 一.javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置.大小.粗度.翻转.平滑等操作 二.javaCV图像处理之2:实时视频添 ...
- Win8 Metro(C#)数字图像处理--2.35图像肤色检测算法
原文:Win8 Metro(C#)数字图像处理--2.35图像肤色检测算法 [函数名称] 肤色检测函数SkinDetectProcess(WriteableBitmap src) [算法说明] ...
- Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx
Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx 分类 图像处理知识点体系 v2 qb24.xlsx 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...
随机推荐
- iframe自适应高度,根据src中页面来得到。
在页面布局时,div+iframe能根据具体的大小进行布局.但,对于iframe的适应大小,仍需js获取内部html文件来改变. function reinitIframe(){ var iframe ...
- python语言特性及其数据类型
- flask_日期和时间
不知道大家有没有发现,在我们学习flask的过程中,post的timestamp字段添加时间时一直用的是datetime.utcnow()来获取时间,但是它获取的时间跟本地时间不一样,下面我们来测试一 ...
- Java读取文件的几种方式
package com.mesopotamia.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...
- tomee 消息持久化
http://tomee.apache.org/jms-resources-and-mdb-container.html http://activemq.apache.org/xml-configur ...
- vs.net2008工具栏上找不到debug/release选项
使用vs.net多年,以前不时会用到release发布,近几年几乎不用的.近来生成时感觉有些项目使用了release选项,因为生成的dll的位置变了.于是想调整回bebug,发现vs.net2008的 ...
- XCode一直显示"scanning for working copies"的解决办法
一个SVN上的项目,在本地重新CheckOut打开后,一直提示"scanning for working copies"且不能使用SVN的更新.提交等功能,当时想着晾它一晚上,看能 ...
- ASP.Net的导出Excel的快速方法,DataTable导出Excel(亲测,非原创)
//使用方法 ExcelHelper.dataTableToCsv(dt,@"D:\1212.xls");System.Diagnostics.Process.Start(@&qu ...
- oracle迁移mysql数据库注意
oracle转mysql修改: . substr() substr( string , 0, 10) 这里测试 必须从 第一位获取 既是 substr(string , 1 , 10)2. to_ch ...
- Mysql 之旅开始啦
本来是打算以后从事oracle 的DBA 的,结果面试了mysql的dba,总的来说学习到的oracle 知识还是在面试中很有用的,毕竟都是想通的.最近又不好好学习了,为了鼓励自己多学习mysql,以 ...