Матричные записи для бинаризации внутри RenderScriptIntrinsicColorMatrix
Я пытаюсь сделать OCR с библиотекой tess two для Android.
Прямо сейчас я передаю TessBaseApi растровое изображение, которое было преобразовано в двоичную форму через RenderscriptInstrinsicColorMatrix. После обработки растровое изображение выглядит не так уж плохо. Тем не менее, я вижу различные оттенки черного на заднем плане, которые я пытаюсь исключить из растрового изображения. Я действительно не очень разбираюсь в выборе записей в следующей матрице 4X4. Я просто знаю, что это 4X4 из-за компонентов ARGB в каждом пикселе внутри объекта Bitmap.
Я знаю, что, настраивая эти числовые записи, я могу каким-то образом устранить различные оттенки черного в растровом изображении. вот изображение растрового изображения после его обработки с помощью RenderScript:
Вот код для RenderScriptIntrinsicColorMatrix:
Bitmap out = Bitmap.createBitmap(in.getWidth(),in.getHeight(),in.getConfig());
Allocation inputA = Allocation.createFromBitmap(rs,in);
Allocation outA = Allocation.createFromBitmap(rs,out,
Allocation.MipmapControl.MIPMAP_NONE, Allocation.USAGE_SHARED|Allocation.USAGE_SCRIPT);
ScriptIntrinsicColorMatrix colorMatrix = ScriptIntrinsicColorMatrix.create(rs, Element.U8_4(rs));
Matrix4f matrix4f = new Matrix4f(new float[]{-0.33f, -0.33f, -0.33f, 1.0f,
-0.59f, -0.59f, -0.59f, 1.0f,
-0.11f, -0.11f, -0.11f, 1.0f,
1.0f, 1.0f, 1.0f, 1.0f
});
colorMatrix.setColorMatrix(matrix4f);
colorMatrix.forEach(inputA, outA);
outA.copyTo(out);
Спасибо за любые предложения или помощь