原创不易,转载请注明出处:分享一个网上的图片识别程序
HistogramFilter.java
package com.zuidaima.image.compare; import java.awt.image.BufferedImage; public class HistogramFilter { private int redBins; private int greenBins; private int blueBins; public HistogramFilter() { redBins = greenBins = blueBins = 4; } public void setRedBinCount(int redBinCount) { this.redBins = redBinCount; } public void setGreenBinCount(int greenBinCount) { this.greenBins = greenBinCount; } public void setBlueBinCount(int blueBinCount) { this.blueBins = blueBinCount; } public float[] filter(BufferedImage src, BufferedImage dest) { int width = src.getWidth(); int height = src.getHeight(); int[] inPixels = new int[width * height]; float[] histogramData = new float[redBins * greenBins * blueBins]; getRGB(src, 0, 0, width, height, inPixels); int index = 0; int redIdx = 0, greenIdx = 0, blueIdx = 0; int singleIndex = 0; float total = 0; for (int row = 0; row < height; row++) { int ta = 0, tr = 0, tg = 0, tb = 0; for (int col = 0; col < width; col++) { index = row * width + col; ta = (inPixels[index] >> 24) & 0xff; tr = (inPixels[index] >> 16) & 0xff; tg = (inPixels[index] >> 8) & 0xff; tb = inPixels[index] & 0xff; redIdx = (int) getBinIndex(redBins, tr, 255); greenIdx = (int) getBinIndex(greenBins, tg, 255); blueIdx = (int) getBinIndex(blueBins, tb, 255); singleIndex = redIdx + greenIdx * redBins + blueIdx * redBins * greenBins; histogramData[singleIndex] += 1; total += 1; } } // start to normalize the histogram data for (int i = 0; i < histogramData.length; i++) { histogramData[i] = histogramData[i] / total; } return histogramData; } private float getBinIndex(int binCount, int color, int colorMaxValue) { float binIndex = (((float) color) / ((float) colorMaxValue)) * ((float) binCount); if (binIndex >= binCount) binIndex = binCount - 1; return binIndex; } public int[] getRGB(BufferedImage image, int x, int y, int width, int height, int[] pixels) { int type = image.getType(); if (type == BufferedImage.TYPE_INT_ARGB || type == BufferedImage.TYPE_INT_RGB) return (int[]) image.getRaster().getDataElements(x, y, width, height, pixels); return image.getRGB(x, y, width, height, pixels, 0, width); } }
下载地址:http://www.zuidaima.com/share/1550463398382592.htm
相关推荐
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
基于Halcon实现的条形码识别程序C#源码+项目说明+sln解决方案(支持图片、视频识别).zip基于Halcon实现的条形码识别程序C#源码+项目说明+sln解决方案(支持图片、视频识别).zip基于Halcon实现的条形码识别程序C#源码+...
我收集到得一些人脸识别的程序和大家分享-使用基于LDA算法的人脸识别程序.rar 将我收集到得一些比较完整的人脸识别的资料和大家分享,由于附件大小的限制 我只挑选了一些小的发上来,还有些为了减小文件,我把数据...
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
使用基于LDA算法的人脸识别程序 国外著名大学成功的人脸检测识别算法中的眨眼检测 用HMM实现的人脸识别及其文档 经过调试完整的人脸检测系统源码 Linear Discriminant Analysis算法
2、利用小程序生成海报保存图片到相册分享到朋友圈,用户长按识别二维码关注公众号或者打开小程序来达到裂变的目的 实现方案 一、分析如何实现 相信大家应该都会有类似的迷惑,就是如何按照产品设计的那样绘制成...
1、打开条形码识别软件。...如果图片中包含了一个或多个条形码,软件会自动识别并显示条形码的内容。 4、执行相应的操作。根据需要,您可以将条形码的内容复制到剪贴板、保存为文件或分享到其他应用程序中。
用户通过微信关联进入小程序后,可以通过选择动物识别或植物识别进入识别界面,进而通过拍照或本地图片进行动物或植物的识别。对于识别结果,可以通过点击详情,查看更详细的动植物介绍,从而方便人们对该动植物品种...
知名度最大的java识别程序了。 我的环境是windows7 64位 jdk1.8 64位 各种折腾,痛苦的尝试了各版本,基本都是报模块加载失败,安装上vc_redist.x64_2015.exe后执行成功,但是在xp32位还是没有成功。 测试类: ...
用户通过微信关联进入小程序后,可以通过选择动物识别或植物识别进入识别界面,进而通过拍照或本地图片进行动物或植物的识别。对于识别结果,可以通过点击详情,查看更详细的动植物介绍,从而方便人们对该动植物品种...
用户通过微信关联进入小程序后,可以通过选择动物识别或植物识别进入识别界面,进而通过拍照或本地图片进行动物或植物的识别。对于识别结果,可以通过点击详情,查看更详细的动植物介绍,从而方便人们对该动植物品种...
微信小程序开发项目——图片扫描提取文字(OCR)##完整的一个图片OCR微信小程序项目,采用了百度OCR的API和百度翻译API,实现了拍照,选图,批量图片识别提取文字,表格识别,图片剪裁,支持分享,翻译,校对,记录...
本文主要参考以下博文,感谢其作者的总结分享。 https://www.cnblogs.com/ybcao/p/5463030.html https://www.cnblogs.com/fnng/p/4881102.html 背景: 做CS架构的客户端应用程序UI自动化测试时,需要用图标的状态来...
主要介绍了小程序图片长按识别功能的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
微信小程序支持通过扫描/长按识别二维码或小程序码图片的方式进入一个小程序首页或小程序中某个特定页面(如何生成这类常规二维码、小程序码,可参考《微信小程序之生成自定义参数小程序二维码》这篇文章),我们...