信息发布软件,b2b软件,广告发布软件

标题: AIWROK软件技巧分享图片二值化封装使用 [打印本页]

作者: 群发软件    时间: 2025-4-24 09:51
标题: AIWROK软件技巧分享图片二值化封装使用
AIWROK软件技巧分享图片二值化封装使用

AIWROK软件技巧分享图片二值化封装使用 b2b软件 AIWROK软件技巧分享图片二值化封装使用 b2b软件 AIWROK软件技巧分享图片二值化封装使用 b2b软件 AIWROK软件技巧分享图片二值化封装使用 b2b软件

// 引入 Android 和 OpenCV 的类
importPackage(org.opencv.core);
importPackage(org.opencv.imgproc);
importPackage(org.opencv.android);
importClass(android.graphics.Bitmap);


function screenshotAndBinarize(width, height, quality, threshold1, threshold2) {
// 进行屏幕截图
var bitmap = screen.screenShot(width, height, quality).getBitmap();

// 将 Bitmap 转换为 OpenCV 的 Mat
var mat = new Mat();
Utils.bitmapToMat(bitmap, mat);


// 进行二值化处理
var binaryMat = new Mat();
Imgproc.threshold(mat, binaryMat, threshold1, threshold2, Imgproc.THRESH_BINARY);
printl(binaryMat);


// 将二值化后的 Mat 转换回 Bitmap
var binaryBitmap = Bitmap.createBitmap(binaryMat.cols(), binaryMat.rows(), Bitmap.Config.ARGB_8888);
Utils.matToBitmap(binaryMat, binaryBitmap);
printl(binaryBitmap);


return binaryBitmap;
}


// 调用封装的函数
var resultBitmap = screenshotAndBinarize(640, 960, 100, 50, 150);

代码结构

  1. 引入库和类
  1. 函数定义
  1. 函数参数

代码步骤

  1. 屏幕截图
var bitmap = screen.screenShot(width, height, quality).getBitmap();
  1. Bitmap 转 Mat
var mat = new Mat();
Utils.bitmapToMat(bitmap, mat);
  1. 二值化处理
var binaryMat = new Mat();
Imgproc.threshold(mat, binaryMat, threshold1, threshold2, Imgproc.THRESH_BINARY);
printl(binaryMat);
  1. Mat 转 Bitmap
var binaryBitmap = Bitmap.createBitmap(binaryMat.cols(), binaryMat.rows(), Bitmap.Config.ARGB_8888);
Utils.matToBitmap(binaryMat, binaryBitmap);
printl(binaryBitmap);
  1. 返回值
return binaryBitmap;

调用示例

var resultBitmap = screenshotAndBinarize(640, 960, 100, 50, 150);





欢迎光临 信息发布软件,b2b软件,广告发布软件 (http://www.postbbs.com/) Powered by Discuz! X3.2