AIWROK软件IOS系统里如何实现ocr识别屏幕文字
<span id="thread_subject" style="font-family: "Microsoft Yahei", Hei, Tahoma, SimHei, sans-serif; font-size: 16px; font-weight: 700;">AIWROK软件IOS系统里如何实现ocr识别屏幕文字</span><span style="font-family: "Microsoft Yahei", Hei, Tahoma, SimHei, sans-serif; font-size: 16px; font-weight: 700;"> </span><p></p><div><ne-clipboard data="%7B%22type%22%3A%22fragment%22%2C%22name%22%3A%22%23fragment%22%2C%22children%22%3A%5B%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u4271b6ef%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u3522147b%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84ocr%E8%AF%86%E5%88%AB%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ue098ca80%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22cCPht%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22%2F%2F%E6%88%AA%E5%9B%BE%5Cnvar%20img%20%3D%20screen.screenShotFull()%3B%5Cn%2F%2Focr%E8%AF%86%E5%88%AB%5Cnvar%20ocrres%3Dimg.ocr(0%2C%200%2C%201%2C%201)%5Cnprintl(ocrres)%5Cn%2F%2F%E9%87%8A%E6%94%BE%E5%86%85%E5%AD%98%20%E5%90%A6%E5%88%99%E4%BC%9A%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%5Cnimg.close()%3B%5Cn%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22default%22%2C%22customStyle%22%3A%5B%5D%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u53e6f6af%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ufa43d2df%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%85%88%E5%AF%B9%E5%9B%BE%E5%83%8F%E8%BF%9B%E8%A1%8C%E5%A4%84%E7%90%86%E5%90%8E%E5%86%8Docr%E8%AF%86%E5%88%AB%20%E8%A7%A3%E5%86%B3%E9%83%A8%E5%88%86%E6%96%87%E5%AD%97%E4%B8%8D%E5%87%86%E9%97%AE%E9%A2%98%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22uc82bc9ed%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22t924O%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22%2F%2F%E6%88%AA%E5%B1%8F%E5%B9%B6%E8%BD%AC%E6%88%90mat%E6%A0%BC%E5%BC%8F%5Cnvar%20img%20%3D%20screen.screenShotFull()%3B%5Cnvar%20mat%20%3D%20img.getMat()%3B%5Cn%5Cn%2F%2F%E4%BA%8C%E5%80%BC%E5%8C%96%5Cnopencv.threshold(mat%2C50%2C200)%5Cn%5Cn%2F%2Fprintl(mat)%5Cn%5Cn%2F%2F%E8%BD%AC%E6%88%90image%5Cnvar%20img2%20%3D%20new%20Image()%3B%5Cnimg2.readMat(mat)%5Cnprintl(img2)%5Cn%5Cnvar%20ocrres%3Dimg2.ocr(0%2C%200%2C%201%2C%201)%5Cn%5Cnprintl(ocrres)%5Cn%2F%2F%E9%87%8A%E6%94%BE%E5%86%85%E5%AD%98%5Cnmat.close()%3B%5Cnimg.close()%3B%5Cnimg2.close()%3B%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22default%22%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u30d60bcb%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u0ff74226%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%8F%AF%E4%BB%A5%E5%B0%9D%E8%AF%95%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%E5%90%8E%E5%86%8D%E8%AF%86%E5%88%AB%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u644a7626%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22eaVg4%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22%2F%2F%E6%88%AA%E5%B1%8F%E5%B9%B6%E8%BD%AC%E6%88%90mat%E6%A0%BC%E5%BC%8F%5Cnvar%20img%20%3D%20screen.screenShotFull()%3B%5Cnvar%20mat%20%3D%20img.getMat()%3B%5Cn%5Cn%2F%2F%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%5Cnopencv.invertColor(mat)%5Cn%5Cn%2F%2Fprintl(mat)%5Cn%5Cn%2F%2F%E8%BD%AC%E6%88%90image%5Cnvar%20img2%20%3D%20new%20Image()%3B%5Cnimg2.readMat(mat)%5Cnprintl(img2)%5Cn%5Cnvar%20ocrres%3Dimg2.ocr(0%2C%200%2C%201%2C%201)%5Cn%5Cnprintl(ocrres)%5Cn%2F%2F%E9%87%8A%E6%94%BE%E5%86%85%E5%AD%98%5Cnmat.close()%3B%5Cnimg.close()%3B%5Cnimg2.close()%3B%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22default%22%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u991558b0%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uf5c472e9%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E8%BF%99%E6%AE%B5%E4%BB%A3%E7%A0%81%E6%98%AF%E4%BD%BF%E7%94%A8AutoAppIOS%E8%87%AA%E5%8A%A8%E5%8C%96IDE%E8%BF%9B%E8%A1%8C%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86%E5%92%8COCR%E8%AF%86%E5%88%AB%E7%9A%84%E7%A4%BA%E4%BE%8B%E3%80%82AutoAppIOS%E6%98%AF%E4%B8%80%E4%B8%AA%E7%94%A8%E4%BA%8E%E8%87%AA%E5%8A%A8%E5%8C%96iOS%E8%AE%BE%E5%A4%87%E6%93%8D%E4%BD%9C%E7%9A%84%E5%B7%A5%E5%85%B7%EF%BC%8C%E6%94%AF%E6%8C%81%E9%80%9A%E8%BF%87%E8%84%9A%E6%9C%AC%E5%AE%9E%E7%8E%B0%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%E3%80%81%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86%E7%AD%89%E5%A4%9A%E7%A7%8D%E5%8A%9F%E8%83%BD%E3%80%82%E4%BB%A3%E7%A0%81%E4%B8%AD%E4%BD%BF%E7%94%A8%E4%BA%86OpenCV%E5%BA%93%E6%9D%A5%E8%BF%9B%E8%A1%8C%E5%9B%BE%E5%83%8F%E7%9A%84%E4%BA%8C%E5%80%BC%E5%8C%96%E5%92%8C%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%E6%93%8D%E4%BD%9C%EF%BC%8C%E5%B9%B6%E4%BD%BF%E7%94%A8%E4%BA%86OCR%EF%BC%88%E5%85%89%E5%AD%A6%E5%AD%97%E7%AC%A6%E8%AF%86%E5%88%AB%EF%BC%89%E5%8A%9F%E8%83%BD%E6%9D%A5%E8%AF%86%E5%88%AB%E5%9B%BE%E5%83%8F%E4%B8%AD%E7%9A%84%E6%96%87%E5%AD%97%E3%80%82%E4%BB%A5%E4%B8%8B%E6%98%AF%E4%BB%A3%E7%A0%81%E7%9A%84%E8%AF%A6%E7%BB%86%E8%AF%B4%E6%98%8E%EF%BC%9A%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u59b51584%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u00a52d6d%22%2C%22fid%22%3A%22u1cc392c3%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A0%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ufa005753%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%88%AA%E5%9B%BE%E5%B9%B6%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u1faff27e%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%EF%BC%9A%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u6dd2bcb1%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22aEaZR%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22var%20img%20%3D%20screen.screenShotFull()%3B%20%2F%2F%20%E6%88%AA%E5%8F%96%E5%B1%8F%E5%B9%95%E7%9A%84%E5%85%A8%E5%B1%8F%E6%88%AA%E5%9B%BE%EF%BC%8C%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AAImage%E5%AF%B9%E8%B1%A1%5Cnvar%20ocrres%20%3D%20img.ocr(0%2C%200%2C%201%2C%201)%3B%20%20%2F%2F%20%E5%AF%B9%E6%88%AA%E5%9B%BE%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%EF%BC%8C%E8%BF%99%E9%87%8C(0%2C0%2C1%2C1)%E5%8F%82%E6%95%B0%E7%9C%8B%E8%B5%B7%E6%9D%A5%E6%9C%89%E9%97%AE%E9%A2%98%EF%BC%8C%E9%80%9A%E5%B8%B8%E5%BA%94%E8%AF%A5%E6%98%AF%E6%8C%87%E5%AE%9A%E8%A6%81%E8%AF%86%E5%88%AB%E7%9A%84%E7%9F%A9%E5%BD%A2%E5%8C%BA%E5%9F%9F%E7%9A%84%E5%9D%90%E6%A0%87%E5%92%8C%E5%A4%A7%E5%B0%8F%EF%BC%8C%E5%8F%AF%E8%83%BD%E6%98%AF%E4%BB%A3%E7%A0%81%E7%A4%BA%E4%BE%8B%E4%B8%AD%E7%9A%84%E9%94%99%E8%AF%AF%5Cnprintl(ocrres)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%89%93%E5%8D%B0OCR%E8%AF%86%E5%88%AB%E7%9A%84%E7%BB%93%E6%9E%9C%5Cnimg.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BE%E6%88%AA%E5%9B%BE%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%EF%BC%8C%E9%98%B2%E6%AD%A2%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22One%20Dark%20Pro%22%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22uc52c9f7c%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u20c502b1%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u79de0309%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%B3%A8%E6%84%8F%EF%BC%9A%22%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ub480efca%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ud3036bc6%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22ocr%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uaeb77227%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%96%B9%E6%B3%95%E4%B8%AD%E7%9A%84%E5%8F%82%E6%95%B0%22%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22ud11a3ecc%22%2C%22name%22%3A%22code%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u12f8c5b6%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22(0%2C%200%2C%201%2C%201)%22%7D%5D%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u816fbe8a%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E4%BC%BC%E4%B9%8E%E4%B8%8D%E6%AD%A3%E7%A1%AE%EF%BC%8C%E5%8F%AF%E8%83%BD%E9%9C%80%E8%A6%81%E6%A0%B9%E6%8D%AE%E5%AE%9E%E9%99%85%E6%83%85%E5%86%B5%E8%B0%83%E6%95%B4%E4%B8%BA%E5%85%B7%E4%BD%93%E7%9A%84%E5%9D%90%E6%A0%87%E5%92%8C%E5%B0%BA%E5%AF%B8%E3%80%82%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u829191c9%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u00a52d6d%22%2C%22fid%22%3A%22u1cc392c3%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A1%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u568f8468%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%88%AA%E5%9B%BE%E3%80%81%E4%BA%8C%E5%80%BC%E5%8C%96%E5%A4%84%E7%90%86%E5%90%8E%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uc765f4c9%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%EF%BC%9A%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u593f0cd3%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22vdJ38%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22var%20img%20%3D%20screen.screenShotFull()%3B%20%2F%2F%20%E6%88%AA%E5%8F%96%E5%B1%8F%E5%B9%95%E7%9A%84%E5%85%A8%E5%B1%8F%E6%88%AA%E5%9B%BE%5Cnvar%20mat%20%3D%20img.getMat()%3B%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%B0%86Image%E5%AF%B9%E8%B1%A1%E8%BD%AC%E6%8D%A2%E4%B8%BA%E8%83%BD%E5%A4%9F%E8%A2%ABOpenCV%E5%A4%84%E7%90%86%E7%9A%84Mat%E5%AF%B9%E8%B1%A1%5Cn%5Cnopencv.threshold(mat%2C%2050%2C%20200)%3B%20%20%20%20%2F%2F%20%E5%AF%B9Mat%E5%AF%B9%E8%B1%A1%E8%BF%9B%E8%A1%8C%E4%BA%8C%E5%80%BC%E5%8C%96%E5%A4%84%E7%90%86%EF%BC%8C50%E6%98%AF%E9%98%88%E5%80%BC%EF%BC%8C200%E6%98%AF%E6%9C%80%E5%A4%A7%E5%80%BC%E3%80%82%E4%BD%8E%E4%BA%8E50%E7%9A%84%E5%83%8F%E7%B4%A0%E7%82%B9%E4%BC%9A%E8%A2%AB%E8%AE%BE%E7%BD%AE%E4%B8%BA0%EF%BC%8C%E9%AB%98%E4%BA%8E50%E7%9A%84%E4%BC%9A%E8%A2%AB%E8%AE%BE%E7%BD%AE%E4%B8%BA200%5Cn%5Cnvar%20img2%20%3D%20new%20Image()%3B%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%96%B0%E7%9A%84Image%E5%AF%B9%E8%B1%A1%5Cnimg2.readMat(mat)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%B0%86%E5%A4%84%E7%90%86%E8%BF%87%E7%9A%84Mat%E5%AF%B9%E8%B1%A1%E8%BD%AC%E6%8D%A2%E5%9B%9EImage%E5%AF%B9%E8%B1%A1%5Cnprintl(img2)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%89%93%E5%8D%B0Image%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%8F%8F%E8%BF%B0%E4%BF%A1%E6%81%AF%5Cnvar%20ocrres%20%3D%20img2.ocr(0%2C%200%2C%201%2C%201)%3B%20%2F%2F%20%E5%AF%B9%E5%A4%84%E7%90%86%E5%90%8E%E7%9A%84Image%E5%AF%B9%E8%B1%A1%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%5Cnprintl(ocrres)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%89%93%E5%8D%B0OCR%E8%AF%86%E5%88%AB%E7%9A%84%E7%BB%93%E6%9E%9C%5Cn%5Cnmat.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BEMat%E5%AF%B9%E8%B1%A1%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%5Cnimg.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BE%E5%8E%9F%E5%A7%8B%E6%88%AA%E5%9B%BE%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%5Cnimg2.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BE%E5%A4%84%E7%90%86%E5%90%8E%E7%9A%84%E6%96%B0Image%E5%AF%B9%E8%B1%A1%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22One%20Dark%20Pro%22%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u05f50468%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u91d419cc%22%2C%22name%22%3A%22oli%22%2C%22attrs%22%3A%7B%22list%22%3A%22u00a52d6d%22%2C%22fid%22%3A%22u1cc392c3%22%2C%22indexType%22%3A0%2C%22indexStyle%22%3A%7B%7D%2C%22parentIndex%22%3A%5B%5D%2C%22index%22%3A2%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22u56ff64f1%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E6%88%AA%E5%9B%BE%E3%80%81%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%E5%90%8E%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%22%7D%2C%7B%22type%22%3A%22text%22%2C%22id%22%3A%22uae475d48%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%EF%BC%9A%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22u128c98b7%22%2C%22name%22%3A%22hole%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22card%22%2C%22id%22%3A%22zDjzb%22%2C%22name%22%3A%22codeblock%22%2C%22attrs%22%3A%7B%22value%22%3A%7B%22mode%22%3A%22javascript%22%2C%22code%22%3A%22var%20img%20%3D%20screen.screenShotFull()%3B%20%2F%2F%20%E6%88%AA%E5%8F%96%E5%B1%8F%E5%B9%95%E7%9A%84%E5%85%A8%E5%B1%8F%E6%88%AA%E5%9B%BE%5Cnvar%20mat%20%3D%20img.getMat()%3B%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%B0%86Image%E5%AF%B9%E8%B1%A1%E8%BD%AC%E6%8D%A2%E4%B8%BAMat%E5%AF%B9%E8%B1%A1%5Cn%5Cnopencv.invertColor(mat)%3B%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%AF%B9Mat%E5%AF%B9%E8%B1%A1%E8%BF%9B%E8%A1%8C%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%EF%BC%8C%E5%8D%B3%E9%A2%9C%E8%89%B2%E5%8F%96%E5%8F%8D%5Cn%5Cnvar%20img2%20%3D%20new%20Image()%3B%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%96%B0%E7%9A%84Image%E5%AF%B9%E8%B1%A1%5Cnimg2.readMat(mat)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E5%B0%86%E5%A4%84%E7%90%86%E8%BF%87%E7%9A%84Mat%E5%AF%B9%E8%B1%A1%E8%BD%AC%E6%8D%A2%E5%9B%9EImage%E5%AF%B9%E8%B1%A1%5Cnprintl(img2)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%89%93%E5%8D%B0Image%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%8F%8F%E8%BF%B0%E4%BF%A1%E6%81%AF%5Cnvar%20ocrres%20%3D%20img2.ocr(0%2C%200%2C%201%2C%201)%3B%20%2F%2F%20%E5%AF%B9%E5%A4%84%E7%90%86%E5%90%8E%E7%9A%84Image%E5%AF%B9%E8%B1%A1%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%5Cnprintl(ocrres)%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E6%89%93%E5%8D%B0OCR%E8%AF%86%E5%88%AB%E7%9A%84%E7%BB%93%E6%9E%9C%5Cn%5Cnmat.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BEMat%E5%AF%B9%E8%B1%A1%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%5Cnimg.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BE%E5%8E%9F%E5%A7%8B%E6%88%AA%E5%9B%BE%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%5Cnimg2.close()%3B%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20%E9%87%8A%E6%94%BE%E5%A4%84%E7%90%86%E5%90%8E%E7%9A%84%E6%96%B0Image%E5%AF%B9%E8%B1%A1%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%22%2C%22autoWrap%22%3Afalse%2C%22lineNumbers%22%3Atrue%2C%22heightLimit%22%3Atrue%2C%22collapsed%22%3Afalse%2C%22hideToolbar%22%3Afalse%2C%22name%22%3A%22%22%2C%22tabSize%22%3Anull%2C%22indentWithTab%22%3Afalse%2C%22lightLines%22%3A%5B%5D%2C%22foldLines%22%3A%5B%5D%2C%22theme%22%3A%22One%20Dark%20Pro%22%2C%22__spacing%22%3A%22both%22%7D%2C%22cardType%22%3A%22block%22%7D%2C%22cardType%22%3A%22block%22%7D%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22uc6626e48%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%5D%7D%2C%7B%22type%22%3A%22element%22%2C%22id%22%3A%22uaf77b586%22%2C%22name%22%3A%22p%22%2C%22attrs%22%3A%7B%7D%2C%22children%22%3A%5B%7B%22type%22%3A%22text%22%2C%22id%22%3A%22ufe8f5cfe%22%2C%22name%22%3A%22%23text%22%2C%22attrs%22%3A%7B%7D%2C%22data%22%3A%22%E5%9C%A8%E8%BF%99%E6%AE%B5%E4%BB%A3%E7%A0%81%E4%B8%AD%EF%BC%8C%E4%B8%BB%E8%A6%81%E7%9A%84%E6%AD%A5%E9%AA%A4%E5%8C%85%E6%8B%AC%E6%88%AA%E5%9B%BE%E3%80%81%E5%B0%86%E6%88%AA%E5%9B%BE%E8%BD%AC%E6%8D%A2%E4%B8%BA%E9%80%82%E5%90%88OpenCV%E5%A4%84%E7%90%86%E7%9A%84%E6%A0%BC%E5%BC%8F%E3%80%81%E4%BD%BF%E7%94%A8OpenCV%E8%BF%9B%E8%A1%8C%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86%EF%BC%88%E5%A6%82%E4%BA%8C%E5%80%BC%E5%8C%96%E5%92%8C%E9%A2%9C%E8%89%B2%E7%BF%BB%E8%BD%AC%EF%BC%89%E3%80%81%E5%B0%86%E5%A4%84%E7%90%86%E5%90%8E%E7%9A%84%E5%9B%BE%E5%83%8F%E8%BD%AC%E6%8D%A2%E5%9B%9EImage%E5%AF%B9%E8%B1%A1%E3%80%81%E8%BF%9B%E8%A1%8COCR%E8%AF%86%E5%88%AB%E4%BB%A5%E5%8F%8A%E6%9C%80%E5%90%8E%E9%87%8A%E6%94%BE%E6%89%80%E6%9C%89%E5%8D%A0%E7%94%A8%E7%9A%84%E5%86%85%E5%AD%98%E3%80%82%E6%AF%8F%E4%B8%AA%E8%BF%87%E7%A8%8B%E9%83%BD%E4%BC%B4%E9%9A%8F%E7%9D%80%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86%E7%9A%84%E6%93%8D%E4%BD%9C%EF%BC%8C%E7%A1%AE%E4%BF%9D%E8%87%AA%E5%8A%A8%E5%8C%96%E6%93%8D%E4%BD%9C%E4%B8%8D%E4%BC%9A%E5%AF%BC%E8%87%B4%E5%86%85%E5%AD%98%E6%B3%84%E6%BC%8F%E9%97%AE%E9%A2%98%E3%80%82%22%7D%5D%7D%5D%2C%22attrs%22%3A%7B%7D%7D" source="https%3A%2F%2Fwww.yuque.com%2Faiwork%2Fnba2pr%2Fvykhn4p5x4ruuqub"></ne-clipboard><div class="lake-content" typography="classic"><p id="u4271b6ef" class="ne-p" style="min-height: 24px;"><span class="ne-text">最简单的ocr识别</span></p><pre data-language="javascript" id="cCPht" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>//截图var img = screen.screenShotFull();
//ocr识别
var ocrres=img.ocr(0, 0, 1, 1)
printl(ocrres)
//释放内存 否则会内存泄漏
img.close();
</code></pre><p id="u53e6f6af" class="ne-p" style="min-height: 24px;"><span class="ne-text">先对图像进行处理后再ocr识别 解决部分文字不准问题</span></p><pre data-language="javascript" id="t924O" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>//截屏并转成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();</code></pre><p id="u30d60bcb" class="ne-p" style="min-height: 24px;"><span class="ne-text">可以尝试颜色翻转后再识别</span></p><pre data-language="javascript" id="eaVg4" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>//截屏并转成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();</code></pre><p id="u991558b0" class="ne-p" style="min-height: 24px;"><span class="ne-text">这段代码是使用AutoAppIOS自动化IDE进行图像处理和OCR识别的示例。AutoAppIOS是一个用于自动化iOS设备操作的工具,支持通过脚本实现屏幕截图、图像处理等多种功能。代码中使用了OpenCV库来进行图像的二值化和颜色翻转操作,并使用了OCR(光学字符识别)功能来识别图像中的文字。以下是代码的详细说明:</span></p><ol class="ne-ol" style="padding-left: 23px;"><li id="u59b51584" data-lake-index-type="0"><span class="ne-text">截图并进行OCR识别</span><span class="ne-text">:</span></li></ol><pre data-language="javascript" id="aEaZR" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>var img = screen.screenShotFull(); // 截取屏幕的全屏截图,返回一个Image对象
var ocrres = img.ocr(0, 0, 1, 1);// 对截图进行OCR识别,这里(0,0,1,1)参数看起来有问题,通常应该是指定要识别的矩形区域的坐标和大小,可能是代码示例中的错误
printl(ocrres); // 打印OCR识别的结果
img.close(); // 释放截图占用的内存,防止内存泄漏</code></pre><p id="uc52c9f7c" class="ne-p" style="min-height: 24px;"><br></p><p id="u20c502b1" class="ne-p" style="min-height: 24px;"><span class="ne-text">注意:</span><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">ocr</span></code><span class="ne-text">方法中的参数</span><code class="ne-code" style="font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; background-color: rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 2px; padding-right: 2px; padding-left: 2px;"><span class="ne-text">(0, 0, 1, 1)</span></code><span class="ne-text">似乎不正确,可能需要根据实际情况调整为具体的坐标和尺寸。</span></p><ol start="2" class="ne-ol" style="padding-left: 23px;"><li id="u829191c9" data-lake-index-type="0"><span class="ne-text">截图、二值化处理后进行OCR识别</span><span class="ne-text">:</span></li></ol><pre data-language="javascript" id="vdJ38" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>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对象占用的内存</code></pre><p id="u05f50468" class="ne-p" style="min-height: 24px;"><br></p><ol start="3" class="ne-ol" style="padding-left: 23px;"><li id="u91d419cc" data-lake-index-type="0"><span class="ne-text">截图、颜色翻转后进行OCR识别</span><span class="ne-text">:</span></li></ol><pre data-language="javascript" id="zDjzb" class="ne-codeblock language-javascript" style="border: 1px solid #e8e8e8; border-radius: 2px; background: #f9f9f9; padding: 16px; font-size: 13px; color: #595959"><code>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对象占用的内存</code></pre><p id="uc6626e48" class="ne-p" style="min-height: 24px;"><br></p><p id="uaf77b586" class="ne-p" style="min-height: 24px;"><span class="ne-text">在这段代码中,主要的步骤包括截图、将截图转换为适合OpenCV处理的格式、使用OpenCV进行图像处理(如二值化和颜色翻转)、将处理后的图像转换回Image对象、进行OCR识别以及最后释放所有占用的内存。每个过程都伴随着内存管理的操作,确保自动化操作不会导致内存泄漏问题。</span></p></div></div>
页:
[1]