B2B网络软件

 找回密码
 立即注册 审核网站号:QQ:896757558
搜索
查看: 326|回复: 0
打印 上一主题 下一主题

AIWORK软件图片二值化封装使用方法说明

[复制链接]

850

主题

855

帖子

6676

积分

abc

Rank: 9Rank: 9Rank: 9

积分
6676
跳转到指定楼层
楼主
发表于 2025-2-18 09:18:02 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式


群711841924

AIWORK软件图片二值化封装使用方法说明 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. 引入库和类

    • importPackage 和 importClass 用于导入OpenCV和Android中相关类和包,这在使用其函数时是必需的。
  2. 函数定义

    • screenshotAndBinarize: 封装了对屏幕截图进行二值化处理的所有步骤。
  3. 函数参数

    • width: 截图的宽度。
    • height: 截图的高度。
    • quality: 截图的质量。
    • threshold1: 二值化过程中使用的阈值1。
    • threshold2: 二值化过程中使用的阈值2。

代码步骤

  1. 屏幕截图

    var bitmap = screen.screenShot(width, height, quality).getBitmap();
    
  • 使用给定的宽度、高度和质量参数进行屏幕截图,结果是一个 Bitmap 对象。
  1. Bitmap 转 Mat

    var mat = new Mat();
    Utils.bitmapToMat(bitmap, mat);
    
  • 创建一个 Mat 对象。
    • Utils.bitmapToMat 将 Bitmap 转换为 OpenCV 的 Mat 对象,便于后续的图像处理操作。
  1. 二值化处理

    var binaryMat = new Mat();
    Imgproc.threshold(mat, binaryMat, threshold1, threshold2, Imgproc.THRESH_BINARY);
    printl(binaryMat);
    
    • 初始化一个新的 Mat 对象 binaryMat 用于存储处理后的图像。
    • 使用 Imgproc.threshold 方法对图像进行二值化处理。
    • threshold1 和 threshold2 是用于二值化的阈值。
    • Imgproc.THRESH_BINARY 表示采用二值化处理方法。
  2. Mat 转 Bitmap

    var binaryBitmap = Bitmap.createBitmap(binaryMat.cols(), binaryMat.rows(), Bitmap.Config.ARGB_8888);
    Utils.matToBitmap(binaryMat, binaryBitmap);
    printl(binaryBitmap);
    
  • 创建一个新的 Bitmap 对象,用于存储二值化后的图像。
  • 将 binaryMat 转换回 Bitmap
  1. 返回值

    return binaryBitmap;
    
  • 函数的返回值是处理后的 Bitmap 对象。

调用示例

var resultBitmap = screenshotAndBinarize(640, 960, 100, 50, 150);
  • 使用特定参数调用该函数,获取二值化后的图像。
回复

使用道具 举报

本版积分规则

关闭

QQ|»营销软件综合讨论|»营销软件有问必答|»营销软件教程专区|»营销软件POST脚本分享|»营销软件普通脚本分享|»营销软件软件资讯|»营销软件精品软件|»营销软件更新公告|营销软件|B2B软件|B2B网络软件 ( 京ICP备09078825号 )本网站开发的营销软件是一款新的网络营销软件,这款营销可以去网站软件,博客软件,B2B软件,分类信息网发贴,可以抢沙发,可以到百度文库上传WORD文档,可以到一些是相册网站自动上传图片,这个自动发帖软件自带云蜘蛛,加快收录,有6种对接打码接口,方便,效率高,速度快,而且对拖动的验证码全网第一家独家支持,全部原创技术,独家研发,正版原创带版权软件。选择万能营销软件,就选择了一种赚钱的效率,从没有被超越过,一直在努力研发新技术。放飞梦想,解放双手,来点创意,成就你的梦想,就在万能营销软件开始

map2

GMT+8, 2025-5-1 04:05 , Processed in 0.139107 second(s), 36 queries .

快速回复 返回顶部 返回列表