B2B网络软件

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

AIWROK软件IOS系统里如何实现ocr识别屏幕文字

[复制链接]

1186

主题

1191

帖子

8021

积分

abc

Rank: 9Rank: 9Rank: 9

积分
8021
跳转到指定楼层
楼主
发表于 2025-6-18 08:12:05 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
AIWROK软件IOS系统里如何实现ocr识别屏幕文字 

最简单的ocr识别

//截图
var img = screen.screenShotFull();
//ocr识别
var ocrres=img.ocr(0, 0, 1, 1)
printl(ocrres)
//释放内存 否则会内存泄漏
img.close();

先对图像进行处理后再ocr识别 解决部分文字不准问题

//截屏并转成mat格式
var img = screen.screenShotFull();
var mat = img.getMat();

//二值化
opencv.threshold(mat,50,200)

//printl(mat)

//转成image
var img2 = new Image();
img2.readMat(mat)
printl(img2)

var ocrres=img2.ocr(0, 0, 1, 1)

printl(ocrres)
//释放内存
mat.close();
img.close();
img2.close();

可以尝试颜色翻转后再识别

//截屏并转成mat格式
var img = screen.screenShotFull();
var mat = img.getMat();

//颜色翻转
opencv.invertColor(mat)

//printl(mat)

//转成image
var img2 = new Image();
img2.readMat(mat)
printl(img2)

var ocrres=img2.ocr(0, 0, 1, 1)

printl(ocrres)
//释放内存
mat.close();
img.close();
img2.close();

这段代码是使用AutoAppIOS自动化IDE进行图像处理和OCR识别的示例。AutoAppIOS是一个用于自动化iOS设备操作的工具,支持通过脚本实现屏幕截图、图像处理等多种功能。代码中使用了OpenCV库来进行图像的二值化和颜色翻转操作,并使用了OCR(光学字符识别)功能来识别图像中的文字。以下是代码的详细说明:

  1. 截图并进行OCR识别:
var img = screen.screenShotFull(); // 截取屏幕的全屏截图,返回一个Image对象
var ocrres = img.ocr(0, 0, 1, 1);  // 对截图进行OCR识别,这里(0,0,1,1)参数看起来有问题,通常应该是指定要识别的矩形区域的坐标和大小,可能是代码示例中的错误
printl(ocrres);                  // 打印OCR识别的结果
img.close();                     // 释放截图占用的内存,防止内存泄漏


注意:ocr方法中的参数(0, 0, 1, 1)似乎不正确,可能需要根据实际情况调整为具体的坐标和尺寸。

  1. 截图、二值化处理后进行OCR识别:
var img = screen.screenShotFull(); // 截取屏幕的全屏截图
var mat = img.getMat();            // 将Image对象转换为能够被OpenCV处理的Mat对象

opencv.threshold(mat, 50, 200);    // 对Mat对象进行二值化处理,50是阈值,200是最大值。低于50的像素点会被设置为0,高于50的会被设置为200

var img2 = new Image();            // 创建一个新的Image对象
img2.readMat(mat);                 // 将处理过的Mat对象转换回Image对象
printl(img2);                      // 打印Image对象的描述信息
var ocrres = img2.ocr(0, 0, 1, 1); // 对处理后的Image对象进行OCR识别
printl(ocrres);                    // 打印OCR识别的结果

mat.close();                       // 释放Mat对象占用的内存
img.close();                       // 释放原始截图占用的内存
img2.close();                      // 释放处理后的新Image对象占用的内存


  1. 截图、颜色翻转后进行OCR识别:
var img = screen.screenShotFull(); // 截取屏幕的全屏截图
var mat = img.getMat();            // 将Image对象转换为Mat对象

opencv.invertColor(mat);           // 对Mat对象进行颜色翻转,即颜色取反

var img2 = new Image();            // 创建一个新的Image对象
img2.readMat(mat);                 // 将处理过的Mat对象转换回Image对象
printl(img2);                      // 打印Image对象的描述信息
var ocrres = img2.ocr(0, 0, 1, 1); // 对处理后的Image对象进行OCR识别
printl(ocrres);                    // 打印OCR识别的结果

mat.close();                       // 释放Mat对象占用的内存
img.close();                       // 释放原始截图占用的内存
img2.close();                      // 释放处理后的新Image对象占用的内存


在这段代码中,主要的步骤包括截图、将截图转换为适合OpenCV处理的格式、使用OpenCV进行图像处理(如二值化和颜色翻转)、将处理后的图像转换回Image对象、进行OCR识别以及最后释放所有占用的内存。每个过程都伴随着内存管理的操作,确保自动化操作不会导致内存泄漏问题。

回复

使用道具 举报

关闭

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

map2

GMT+8, 2026-10-3 17:39 , Processed in 0.148919 second(s), 33 queries .

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