public class BdmpRecognizer extends Object
created in 2020/5/19
| 限定符和类型 | 字段和说明 |
|---|---|
private BufferedImage |
image
图片
|
private PixelPngReader |
pixelReader |
private int |
radixBorder
边界半径
|
| 构造器和说明 |
|---|
BdmpRecognizer() |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
distinguish()
识别图片定位区
|
private Point |
findLeftTopPointFromSidePixel(int r)
通过斜边切入点找到该绘制区域(可能是绘制区域)的左上方的点
(r, r) 是当前切入的点
|
com.github.cosycode.common.ext.bean.DoubleBean<int[],int[]> |
findXYArr(BdmpRecCngInfo info)
寻找 XArr, YArr
XArr: x轴每一个像素点阵中的平均值
yArr: y轴每一个像素点阵中的平均值
|
static boolean |
isBlack(int rgb)
判断定位区像素是否是黑色
|
static boolean |
isBorderVal(int rgb)
判断定位区像素是否是白色或黑色
|
static boolean |
isGray(int rgb)
判断定位区像素是否是黑色
|
static boolean |
isNearColor(int rgb1,
int rgb2)
判断两个像素是否相近
|
static boolean |
isWhite(int rgb)
判断定位区像素是否是白色
|
private BdmpRecCngInfo |
recognizeDrawArea(@NonNull Point leftTopPoint)
识别绘制区域
从 leftTopPoint 出发, 向右, 向下, 找到黑白框边界
判断边界是否围了一周,
判断边界外一圈是否全是和rgb_1相近的像素
|
static BdmpRecInfo |
resolver(BufferedImage image) |
private BufferedImage image
private PixelPngReader pixelReader
private int radixBorder
public static BdmpRecInfo resolver(BufferedImage image)
image - 待识别的图片public static boolean isBorderVal(int rgb)
rgb - rgb 值public static boolean isBlack(int rgb)
rgb - rgb 值public static boolean isGray(int rgb)
rgb - rgb 值public static boolean isWhite(int rgb)
rgb - rgb 值public static boolean isNearColor(int rgb1,
int rgb2)
rgb1 - 整型rgb像素值1rgb2 - 整型rgb像素值2public boolean distinguish()
private Point findLeftTopPointFromSidePixel(int r)
r - 斜边切入的边长private BdmpRecCngInfo recognizeDrawArea(@NonNull @NonNull Point leftTopPoint)
从 leftTopPoint 出发, 向右, 向下, 找到黑白框边界 判断边界是否围了一周, 判断边界外一圈是否全是和rgb_1相近的像素
public com.github.cosycode.common.ext.bean.DoubleBean<int[],int[]> findXYArr(BdmpRecCngInfo info)
info - 识别的像素信息Copyright © 2021. All rights reserved.