$img 返回
图片操作
makePng(image,color,threshold)
制作透明图片
- 参数 : image {image} 需要处理的图片
- 参数 : color {string} 保留的颜色
- 参数 : threshold {number} 允许颜色的误差
- 返回 : {image} 生成新的png图片
makePng(image,colors,thresholds)
制作透明图片
- 参数 : image {image} 需要处理的图片
- 参数 : colors {string} 保留的颜色
- 参数 : thresholds {number} 允许颜色的误差
- 返回 : {image} 生成新的png图片
makePng(image,colors,thresholds,options)
制作透明图片
- 参数 : image {image} 需要处理的图片
- 参数 : colors {string} 保留的颜色
- 参数 : thresholds {number} 允许颜色的误差
- 参数 : options {object} 配置参数
- 返回 : {image} 生成新的png图片
let options = {
isBlur:true,//开启滤波(默认值:true)
blurSize:1,//滤波大小(默认值:1)
isDilate:true,//开启膨胀(默认值:true)
dilateSize:1,//膨胀大小(默认值:1)
isErode:true,//开启腐蚀(默认值:true)
erodeSize:3,//腐蚀大小(默认值:3)
}
read(imgPath)
读取图片
读取资源失败时会返回空null
- 参数 : imgPath {string} 图片路径
- 返回 : {Image} 读取的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p01.png";
//读取图片
let img = $img.read(path);
read(imgFile)
读取图片
读取资源失败时会返回空null
- 参数 : imgFile {File} 图片路径
- 返回 : {Image} 读取的图片
save(image,path,format,quality)
保存图片
- 参数 : image {Image} 需要保存的图片
- 参数 : path {string} 保存路径
- 参数 : format {string} 格式
- 参数 : quality {int} 质量
save(image,path)
保存图片
- 参数 : image 需要保存的图片
- 参数 : path 保存路径
toBase64(image,format,quality)
转换base64
- 参数 : image 需要转换为base64的图片
- 参数 : format 格式
- 参数 : quality 质量
- 返回 : 图片的base64字符串
toBase64(image)
转换base64
- 参数 : image 需要转换为base64的图片
- 返回 : 图片的base64字符串
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p01.png";
//读取图片
let img = $img.read(path);
//转化为base64
let imgBase64 = $img.toBase64(img);
log(imgBase64)
toBase64(path)
转换base64
- 参数 : path 需要转换为base64的图片路径
- 返回 : 图片的base64字符串
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p01.png";
//转化为base64
let imgBase64 = $img.toBase64(path);
log(imgBase64)
readBase64(base64Str)
加载base64
- 参数 : base64Str base64字符串
- 返回 : 图片对象
//读取图片
let img = $img.readBase64(imgBase64);
clip(image,x,y,w,h)
裁剪图片
- 参数 : image 原本的图片
- 参数 : x 开始坐标
- 参数 : y 开始坐标
- 参数 : w 宽度
- 参数 : h 高度
- 返回 : 新的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p03.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.clip(img, 0, 0, 300, 200);
//显示图片
$img.show(image);
resize(image,w,h,interpolation)
设置尺寸
- 参数 : image 需要处理的图片
- 参数 : w 宽度
- 参数 : h 高度
- 参数 : interpolation 插值方式
- 返回 : 图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.resize(img, 200, 200, "INTER_CUBIC");
//显示图片
$img.show(image);
resize(image,w,h)
设置尺寸
- 参数 : image 需要处理的图片
- 参数 : w 宽度
- 参数 : h 高度
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.resize(img, 200, 200);
//显示图片
$img.show(image);
scale(image,scaleX,scaleY,interpolation)
缩放图片
- 参数 : image 需要处理的图片
- 参数 : scaleX 宽度缩放倍数
- 参数 : scaleY 高度缩放倍数
- 参数 : interpolation 插值方式
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.scale(img, 0.3, 0.2, "INTER_CUBIC");
//显示图片
$img.show(image);
scale(image,scaleX,scaleY)
缩放图片
- 参数 : image 需要处理的图片
- 参数 : scaleX 宽度缩放倍数
- 参数 : scaleY 高度缩放倍数
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.scale(img, 0.3, 0.2);
//显示图片
$img.show(image);
rotate(image,degree,x,y)
旋转图片
- 参数 : image 需要处理的图片
- 参数 : degree 旋转的角度
- 参数 : x 旋转中心点x坐标
- 参数 : y 旋转中心点y =坐标
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.rotate(img, 45, 100, 200);
//显示图片
$img.show(image);
rotate(image,degree)
旋转图片
- 参数 : image 需要处理的图片
- 参数 : degree 旋转的角度
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.rotate(img, 45);
//显示图片
$img.show(image);
rotate(image)
旋转图片
默认旋转90度
- 参数 : image 需要处理的图片
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.rotate(img);//默认旋转90度
//显示图片
$img.show(image);
concat(img1,img2,directionStr)
拼接图片
- 参数 : img1 需要拼接的图片1
- 参数 : img2 需要拼接的图片2
- 参数 : directionStr 拼接方向
- 返回 : 拼接好的图片
gray(image)
灰度化
- 参数 : image 需要灰度化的图片
- 返回 : 灰度化的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.gray(img);
//显示图片
$img.show(image);
threshold(image,min,max)
二值化图片
- 参数 : image 需要处理的图片
- 参数 : min 阈值
- 参数 : max 最大阈值
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.threshold(img, 150, 255);
//显示图片
$img.show(image);
adaptiveThreshold(image,maxValue,adaptiveMethod,thresholdType,blockSize,C)
自适应二值化
- 参数 : image {Image} 图片
- 参数 : maxValue {number} 最大值
- 参数 : adaptiveMethod {string} 在一个邻域内计算阈值所采用的算法 默认值是:GAUSSIAN_C
- 参数 : thresholdType {string} 阈值化类型 默认值是:BINARY
- 参数 : blockSize {number} 邻域块大小
- 参数 : C {number} 偏移值调整量
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.adaptiveThreshold(img,255,"MEAN_C","BINARY", 11, 2);
//显示图片
$img.show(image);
cvtColor(img,code,dstCn)
颜色空间转换
- 参数 : img {Image} 图片
- 参数 : code {string} 颜色空间转换的类型,可选的值有一共有205个 默认值:COLOR_BGR2GRAY
- 参数 : dstCn {number} 目标图像的颜色通道数量,如果不填写则根据其他参数自动决定。
- 返回 : {Image} 颜色转换后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.cvtColor(img,"RGBA2BGR",null);
//显示图片
$img.show(image);
cvtColor(img,code)
颜色空间转换
- 参数 : img {Image} 图片
- 参数 : code {string} 颜色空间转换的类型,可选的值有一共有205个 默认值:COLOR_BGR2GRAY
- 返回 : {Image} 颜色转换后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.cvtColor(img,"RGBA2BGR");
//显示图片
$img.show(image);
inRange(img,lowerBound,upperBound)
图片二值化
- 参数 : img {Image} 图片
- 参数 : lowerBound {string} | {number} 颜色下界
- 参数 : upperBound {string} | {number} 颜色下界
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.inRange(img,"#666666","#FFFFFF");
//显示图片
$img.show(image);
inRange(img,lowerBound,upperBound)
inRange(img,lowerBound,upperBound)
inRange(img,lowerBound,upperBound)
interval(img,color,threshold)
图片二值化
在color-interval ~ color+interval范围以外的颜色都变成0,在范围以内的颜色都变成255。
这里对color的加减是对每个通道而言的。
例如images.interval(img, "#888888", 16),
每个通道的颜色值均为0x88,加减16后的范围是[0x78, 0x98],
因此这个代码将把#787878~#989898的颜色变成#FFFFFF,而把这个范围以外的变成#000000。
- 参数 : img {Image} 图片
- 参数 : color {string} | {number} 颜色值
- 参数 : threshold {number} 每个通道的范围间隔
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.interval(img,"#787878",20);
//显示图片
$img.show(image);
interval(img,color,threshold)
blur(img,size,point,type)
模糊平滑处理
- 参数 : img {Image} 图片
- 参数 : size {Array} 定义滤波器的大小,如[3, 3]
- 参数 : point {Array} 指定锚点位置(被平滑点),默认为图像中心
- 参数 : type {string} 推断边缘像素类型,默认为"DEFAULT"
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.blur(img,[10,10],[-1,-1],"REPLICATE");
//显示图片
$img.show(image);
medianBlur(img,size)
中值滤波
- 参数 : img {Image} 图片
- 参数 : size {number} 定义滤波器的大小
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.medianBlur(img,3);
//显示图片
$img.show(image);
gaussianBlur(img,size,sigmaX,sigmaY,type)
高斯模糊
- 参数 : img {Image} 图片
- 参数 : size {Array} 定义滤波器的大小,如[3, 3]
- 参数 : sigmaX {number} x方向的标准方差,不填写则自动计算
- 参数 : sigmaY {number} y方向的标准方差,不填写则自动计算
- 参数 : type {string} 推断边缘像素类型,默认为"DEFAULT"
- 返回 : {Image}
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.gaussianBlur(img,[15,15],0,0,"WRAP");
//显示图片
$img.show(image);
flip(image)
左右翻转
- 参数 : image 需要处理的图片
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.flip(img);
//显示图片
$img.show(image);
upside(image)
上下翻转
- 参数 : image 需要处理的图片
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.upside(img);
//显示图片
$img.show(image);
flip(image,sx,sy)
水平翻转
- 参数 : image 需要处理的图片
- 参数 : sx 横向翻转的方向
- 参数 : sy 纵向翻转的方向
- 返回 : 处理后的图片
//图片路径
let path = "sdcard/Pictures/示例/$img/res/p02.png";
//读取图片
let img = $img.read(path);
//操作图片
let image = $img.flip(img,-1,-1);
//显示图片
$img.show(image);
putTop(bigImg,smallImg,x,y)
在大图片上面放置一个小图片
释放资源
- 参数 : bigImg {Image} 大图片
- 参数 : smallImg {Image} 小图片
- 参数 : x {int} 小图片左上角x
- 参数 : y {int} 小图片左上角y
- 返回 : 处理完成的图片
//图片路径
let path1 = "sdcard/Pictures/示例/$img/res/p02.png"; //大图片
let path2 = "sdcard/Pictures/示例/$img/res/p04.png"; //小图片
let bigImg = $img.read(path1);
let smallImg = $img.read(path2);
//设置放置的位置
let image = $img.putTop(bigImg, smallImg, 20, 20);
//显示图片
$img.show(image);
findColor(image,color,threshold,x,y,w,h)
查找颜色
- 参数 : image {image} 需要处理的图片
- 参数 : color {string} 需要查找的颜色
- 参数 : threshold {int} 阈值
- 参数 : x {int} 范围x起点坐标
- 参数 : y {int} 范围y起点坐标
- 参数 : w {int} 范围宽度
- 参数 : h {int} 范围高度
- 返回 : {image} 处理后的图片
findColor(image,color,threshold,region)
查找颜色
- 参数 : image {image} 需要处理的图片
- 参数 : color {string} 需要查找的颜色
- 参数 : threshold {int} 阈值
- 参数 : region {int[]} 找色范围
- 返回 : 处理后的图片
findColor(image,color,threshold)
查找颜色
- 参数 : image 需要处理的图片
- 参数 : color 需要查找的颜色
- 参数 : threshold 阈值
- 返回 : 处理后的图片
findColor(image,color)
查找颜色
- 参数 : image 需要处理的图片
- 参数 : color 需要查找的颜色
- 返回 : 处理后的图片
findMultiColors(image,region,color,threshold,colors)
多点找色
- 参数 : image {image} 图片
- 参数 : region {int[]} 范围
- 参数 : color {string} 颜色
- 参数 : threshold {int} 阈值
- 参数 : colors {int[]} 点色数据
- 返回 : {point} 位置
findImg(bigImg,minImg,params)
找图
- 参数 : bigImg 大图片
- 参数 : minImg 小图片
- 参数 : params 参数
- 返回 : 找到的位置(中心点)
findImg(bigImg,minImg,options)
findImg(bigImg,minImg)
findImgAll(bigImg,minImg,params)
找到所有图片位置
- 参数 : bigImg 大图片
- 参数 : minImg 需要查找的小图片
- 参数 : params 查找参数
- 返回 : 所有的位置集合
findImgAll(bigImg,minImg,options)
找到所有图片位置
- 参数 : bigImg 大图片
- 参数 : minImg 需要查找的小图片
- 参数 : options 查找参数
- 返回 : 所有的位置集合
findImgAll(bigImg,minImg)
找到所有图片位置
- 参数 : bigImg 大图片
- 参数 : minImg 需要查找的小图片
- 返回 : 所有的位置集合
featureMatch(bigImg,smallImg,params)
特征匹配
- 参数 : bigImg 大图
- 参数 : smallImg 小图
- 参数 : params 特征匹配参数
- 返回 : 找到的图片中心点
featureMatch(bigImg,smallImg)
特征匹配
- 参数 : bigImg 大图
- 参数 : smallImg 小图
- 返回 : 找到的图片中心点
show(img)
显示图片
- 参数 : img 需要显示的图片
show(image)
显示图片
- 参数 : image 需要显示的图片
show(path)
显示图片
- 参数 : path {string} 图片路径
//把图片显示在屏幕上
let imgPath = "sdcard/Pictures/t01.png";
$img.show(imgPath);