图像函数

图像处理

16 个函数

设置截图通道保活时间

Image.setHotCaptureDuration(保活时间: integer)

设置截图通道在最后一次成功取帧后继续保持开启多久。保活期间再次找色、找图或识别文字,会复用现有截图通道并重新开始计时,从而减少重复启动截图环境的耗时。保活会持续占用截图进程、图像缓冲和一定的系统资源;长时间不使用屏幕识别时可设置为 0,需要高频连续识别前再恢复。该时间不是截图间隔、脚本延时或缓存画面的有效时间。

参数1 项
序号名称类型参数说明
1 保活时间 最后一次成功取帧后,截图通道继续保持开启的时间,单位毫秒。默认 1000;填 0 表示立即释放截图通道。
返回值无返回值

保存屏幕截图

Image.screenshot(输出路径: string, 范围横坐标: integer, 范围纵坐标: integer, 范围宽度: integer, 范围高度: integer): integer

保存当前采集帧,不会在保存时再次缩放。采集帧通常使用项目基准分辨率;设备分辨率更小时不会放大。 范围参数全部填 0:保存完整采集帧。指定有效范围:只保存该范围与画面相交的裁剪区域。

参数5 项
序号名称类型参数说明
1 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
2 范围横坐标 保存范围 X;整屏可填 0
3 范围纵坐标 保存范围 Y;整屏可填 0
4 范围宽度 保存范围宽;整屏可填 0
5 范围高度 保存范围高;整屏可填 0
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

裁剪图片区域

Image.crop(源图片: string, 输出路径: string, 范围横坐标: integer, 范围纵坐标: integer, 范围宽度: integer, 范围高度: integer): integer

按左上角 X、Y、宽和高裁剪图片;超出图片边界的部分不会保存。

参数6 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 范围横坐标 源图片中裁剪区域左上角 X 坐标。
4 范围纵坐标 源图片中裁剪区域左上角 Y 坐标。
5 范围宽度 要裁剪的区域宽度,必须大于 0。
6 范围高度 要裁剪的区域高度,必须大于 0。
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

缩放图片

Image.resize(源图片: string, 输出路径: string, 目标宽度: integer, 目标高度: integer): integer

把源图片缩放为指定的目标宽度和高度,并将结果保存到输出路径。目标宽度和目标高度的单位都是像素,且必须大于 0;图片会严格缩放到填写的宽高,不会自动保持原图比例。宽、高参数已拆分为对应的常用像素值,四组快捷值按列表顺序一一对应。调用示例:Image.resize("/sdcard/原图.png","/sdcard/缩放后.png",960,540),会生成一张 960×540 的图片。

参数4 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 目标宽度 缩放后图片的宽度,单位像素;快捷值依次为 1080、900、720、540,也可手动填写任意正整数。
4 目标高度 缩放后图片的高度,单位像素;快捷值依次为 1920、1600、1280、960,也可手动填写任意正整数。
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

旋转图片角度

Image.rotate(源图片: string, 输出路径: string, 旋转角度: number): integer

按任意角度顺时针旋转图片,并自动扩展画布避免裁掉四角。

参数3 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 旋转角度 顺时针旋转角度,可手动填写任意整数或小数;快捷值仅为常用预设
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

拼接两张图片

Image.concat(第一张图片: string, 第二张图片: string, 输出路径: string, 拼接方向: integer): integer

把两张图片横向或纵向拼接;不缩放图片,较小图片在另一方向居中。

参数4 项
序号名称类型参数说明
1 第一张图片 第一张图片的绝对路径,必须包含文件名。示例:/sdcard/第一张.png
2 第二张图片 第二张图片的绝对路径,必须包含文件名。示例:/sdcard/第二张.png
3 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
4 拼接方向 0 横向,把第二张图片放在右侧;1 纵向,把第二张图片放在下方
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

转换图片格式

Image.convert(源图片: string, 输出路径: string, 图片质量: integer): integer

按输出文件后缀转换图片格式,常用 PNG、JPG、WebP、BMP 和 TIFF。

参数3 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 图片质量 范围 1~100,默认 90;JPG、WebP 控制画质,PNG 控制压缩程度。快捷值仅为预设,可手动填写
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

翻转图片方向

Image.flip(源图片: string, 输出路径: string, 翻转方向: integer): integer

按水平、垂直或双向翻转源图片。

参数3 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 翻转方向 翻转方式:0 水平,1 垂直,2 水平并垂直。
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

转换灰度图片

Image.grayscale(源图片: string, 输出路径: string): integer

把彩色图片转换为灰度图片。

参数2 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

阈值二值化

Image.threshold(源图片: string, 输出路径: string, 灰度阈值: integer, 是否反转: integer): integer

按灰度阈值生成黑白图片,适合明暗分离明显的内容。

参数4 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 灰度阈值 灰度阈值范围 0~255;快捷值仅为常用预设,可手动填写
4 是否反转 0 保持黑白结果,1 反转黑白结果。
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

颜色二值化

Image.colorMask(源图片: string, 输出路径: string, 滤色值: string, 颜色容差: integer, 是否反转: integer): integer

按滤色值和容差生成黑白图片,匹配颜色保留为前景,其余像素变为背景。

参数5 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 滤色值 需要保留为前景的 HEX 颜色,格式 #RRGGBB;多个颜色用 | 分隔。示例:#FFFFFF|#FF0000
4 颜色容差 范围 0~255;0 最严格,数值越大范围越宽。快捷值仅为常用预设,可手动填写
5 是否反转 0 保持黑白结果,1 反转黑白结果。
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

替换图片颜色

Image.replaceColor(源图片: string, 输出路径: string, 原颜色: string, 新颜色: string, 颜色容差: integer): integer

把源图片中接近原颜色的像素替换为新颜色。

参数5 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 原颜色 需要替换的原颜色,格式 #RRGGBB。示例:#FF0000
4 新颜色 替换后的新颜色,格式 #RRGGBB。示例:#FF0000
5 颜色容差 范围 0~255;0 最严格,数值越大范围越宽。快捷值仅为常用预设,可手动填写
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效

获取图片信息

Image.info(源图片: string): (integer, integer, integer)

读取绝对路径图片的宽度、高度和通道数。

参数1 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
返回值至少接收一个返回值
序号名称类型返回说明
1 图片宽度 图片宽;读取失败时为 0。
2 图片高度 图片高;读取失败时为 0。
3 通道数量 图片通道数;读取失败时为 0。

比较图片相似度

Image.similarity(第一张图片: string, 第二张图片: string): number

比较两张同尺寸图片的整体像素相似度。

参数2 项
序号名称类型参数说明
1 第一张图片 第一张图片的绝对路径,必须包含文件名。示例:/sdcard/第一张.png
2 第二张图片 第二张图片的绝对路径,必须包含文件名。示例:/sdcard/第二张.png
返回值至少接收一个返回值
序号名称类型返回说明
1 相似度 相似度范围 0~1,四舍五入保留两位小数;读取失败或尺寸不同时为 0。

识别二维码

Image.qrDecode(源图片: string): string

读取图片并返回其中第一个二维码的文字内容。

参数1 项
序号名称类型参数说明
1 源图片 源图片的绝对路径,必须包含文件名。示例:/sdcard/原图.png
返回值至少接收一个返回值
序号名称类型返回说明
1 识别文字 二维码文字内容;没有二维码、无法解码或图片读取失败时为空字符。

生成二维码

Image.qrEncode(二维码内容: string, 输出路径: string, 图片尺寸: integer): integer

把文字生成黑白二维码图片并保存到绝对路径。

参数3 项
序号名称类型参数说明
1 二维码内容 要写入二维码的文字或网址。示例:https://www.baidu.com
2 输出路径 输出文件绝对路径,必须包含文件名和后缀。示例:/sdcard/结果.png
3 图片尺寸 二维码正方形边长,单位像素,默认 512;快捷值仅为预设,可手动填写任意正数
返回值返回值可以不接收
序号名称类型返回说明
1 是否成功 处理是否成功。
  • 1:处理成功
  • 0:输入内容、图片绝对路径或处理参数无效