opencv.checkColors 多点比色有没有好用的例子?

2

主题

0

回帖

8

积分

新手上路

积分
8
opencv.checkColors 多点比色有没有好用的例子?


举报 回复

28

主题

184

回帖

581

积分

管理员

积分
581
opencv.checkColors 多点比色

名称

opencv.checkColors

作用

多个坐标颜色对比查找

权限

  • root
  • 键鼠
  • 无障碍

语法

opencv.checkColors(mat,colour,Color_deviation,deviation,sim)

参数

类型

是/否

说明

mat

对象

mat格式截图对象

colour

数组

字符数组,16进制颜色,格式为[“X坐标,Y坐标,16进制颜色”],

如:[‘351,452,#553E38’, ‘368,449,#816D78’]

Color_deviation

整数

偏色阈值0~100,10等同于101010

deviation

整数

偏差范围值0~10

sim

整数

双精度浮点数,相似度,取值范围0-1

返回

类型

是/否

说明

true/false

布尔

成功

true

失败

false

注意

名称

screen.screenShot

作用

截图并压缩图片,配合上面函数使用

权限

  • root
  • 键鼠
  • 无障碍

语法

screen.screenShot(width,height,quality)

参数

类型

是/否

说明

width

整数

压缩图片宽度,注意这个宽度不是屏幕分辨率宽度

height

整数

压缩图片高度,注意这个高度不是屏幕分辨率高度

quality

数组

压缩图片清晰度,0~100

返回

类型

是/否

说明

对象/null

对象

成功

位图对象

失败

null

对象方法

类型

是/否

说明

.getMat();

把位图转mat格式,配合screen.screenShot使用

返回

类型

是/否

说明

对象/null

对象

成功

mat格式对象

失败

null



var mat=screen.screenShot(720,1280,100).getMat();
var seek = opencv.checkColors(mat, ['351,452,#553E38', '368,449,#816D78'], 2, 4, 0.95);
if (seek) {
    printl("找到了");
} else {
    printl("未找到了");
}


var mat=screen.screenShot(720,1280,100).getMat();
if (opencv.checkColors(mat, ['351,452,#553E38', '368,449,#816D78'], 2, 4, 0.95)) {
    printl("找到了");
} else {
    printl("未找到了");
}

举报 回复