找传奇、传世资源到传世资源站!

android OCR 实例(文字识别,简单识别汉字数字)

8.5玩家评分(1人评分)
下载后可评
介绍 评论 失效链接反馈

cor文字识别例子
android OCR 实例(文字识别,简单识别汉字数字) Android平台开发-第1张android OCR 实例(文字识别,简单识别汉字数字) Android平台开发-第2张android OCR 实例(文字识别,简单识别汉字数字) Android平台开发-第3张android OCR 实例(文字识别,简单识别汉字数字) Android平台开发-第4张 /** * 灰度化处理 */ public Bitmap convertGray(Bitmap bitmap3) { colorMatrix = new ColorMatrix(); colorMatrix.setSaturation(0); ColorMatrixColorFilter filter = new ColorMatrixColorFilter(colorMatrix); Paint paint = new Paint(); paint.setColorFilter(filter); Bitmap result = Bitmap.createBitmap(bitmap3.getWidth(), bitmap3.getHeight(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(result); canvas.drawBitmap(bitmap3, 0, 0, paint); return result; }

/** * 二值化 * * @param tmp 二值化阈值 默认100 */ private Bitmap binaryzation(Bitmap bitmap22, int tmp) { // 获取图片的宽和高 int width = bitmap22.getWidth(); int height = bitmap22.getHeight(); // 创建二值化图像 Bitmap bitmap; bitmap = bitmap22.copy(Bitmap.Config.ARGB_8888, true); // 遍历原始图像像素,并进行二值化处理 for (int i = 0; i < width; i ) { for (int j = 0; j < height; j ) { // 得到当前的像素值 int pixel = bitmap.getPixel(i, j); // 得到Alpha通道的值 int alpha = pixel & 0xFF000000; // 得到Red的值 int red = (pixel & 0x00FF0000) >> 16; // 得到Green的值 int green = (pixel & 0x0000FF00) >> 8; // 得到Blue的值 int blue = pixel & 0x000000FF; if (red > tmp) { red = 255; } else { red = 0; } if (blue > tmp) { blue = 255; } else { blue = 0; } if (green > tmp) { green = 255; } else { green = 0; } // 通过加权平均算法,计算出最佳像素值 int gray = (int) ((float) red * 0.3 (float) green * 0.59 (float) blue * 0.11); // 对图像设置黑白图 if (gray <= 95) { gray = 0; } else { gray = 255; } // 得到新的像素值 int newPiexl = alpha | (gray << 16) | (gray << 8) | gray; // 赋予新图像的像素 bitmap.setPixel(i, j, newPiexl); } } return bitmap; }

评论

发表评论必须先登陆, 您可以 登陆 或者 注册新账号 !


在线咨询: 问题反馈
客服QQ:174666394

有问题请留言,看到后及时答复