跳到主要内容

Image 图像

获取​

bitmapToRGBArr 获取图片rgb数据​

参数名必选类型说明
bitmap是bitmap图片bitmap数据
startX否int起始x,可空,默认0
startY否int起始y,可空,默认0
endX否int结束x,可空,默认0
endY否int结束x,可空,默认0
//1.通过截图函数限制范围
let bit1 = image.captureScreenBitmap("png", 100, 100, 200, 200, 100)
let arr = ll.img.bitmapToRGBArr(bit1)
logd(arr)
for (let i = 0; i < arr.length; i++) {
logd(JSON.stringify(arr[i]))
}


//2.通过函数本身限制范围
let bit1 = image.captureScreenBitmap("png", 0, 0, 0, 0, 100)
//查找单色数量
let arr = ll.img.bitmapToRGBArr(bit1, 100, 100, 200, 200)
logd(arr)
for (let i = 0; i < arr.length; i++) {
logd(JSON.stringify(arr[i]))
}
返回值类型说明
[22,33,44],[22,33,44]][[],[],[]]二维数组

getColorCount 获取范围内颜色个数​

参数名必选类型说明
bitmap是Bitmap图片bitmap数据
color是string字符串值,可通过findColor生成
startX否int起始x,可空,默认0
startY否int起始y,可空,默认0
endX否int结束x,可空,默认0
endY否int结束x,可空,默认0
//1.通过截图函数限制范围
let bit1 = image.captureScreenBitmap("png", 100, 100, 200, 200, 100)
//查找单色数量
let count = ll.img.getColorCount(bit1, "#1296DB")
//查找单色数量,带偏色
count = ll.img.getColorCount(bit1, "#1296DB-#101010")
//查找组合色数量,带偏色,
count = ll.img.getColorCount(bit1, "#1296DB-#101010,#556688-#101010")
logd(count)
//10086

//2.通过函数本身限制范围
let bit1 = image.captureScreenBitmap("png", 0, 0, 0, 0, 100)
//查找单色数量
let count = ll.img.getColorCount(bit1, "#1296DB", 100, 100, 200, 200)
logd(count)
返回值类型说明
5number颜色数量

二值化​

binaryzationBitmapByColor 通过颜色值二值化​

提示
  • java原生方法,不需要opencv
参数名必选类型说明
bitmap是ImageBitmapbitmap格式图片数据
color是string字符串值,可通过findColor生成
mode否int二值化模式,默认1,2则为反转
//颜色值支持
//格式1: #ffffff
//格式2: #ffffff-#101010
//格式3: #ffffff-#101010,#ffffff-#101010
//格式4: #ffffff,#ffffff-#101010

//初始化图色功能,不需要opencv
laoleng.EC.initImage()

//读图或者截图bitmap格式
let bit = image.captureScreenBitmap("png", 0, 0, 0, 0, 100)

//全格式二值化,默认1模式
bit = ll.img.binaryzationBitmapByColor(bit, "#ffffff-#101010,#ffffff-#101010")

//全格式二值化
bit = ll.img.binaryzationBitmapByColor(bit, "#ffffff-#101010,#ffffff-#101010", 1)

//全格式二值化,反转二值化,结果黑白颠倒
bit = ll.img.binaryzationBitmapByColor(bit, "#ffffff-#101010,#ffffff-#101010", 2)

//结果保存到本地,方便查看效果,或者做其他处理
image.saveBitmap(bit, "png", 100, "/sdcard/Pictures/2.png")
返回值类型说明
ImageBitmap@44af652ImageBitmap二值化后的bitmap图

binaryzationBitmapByRange 通过阈值范围二值化​

参数名必选类型说明
bitmap是Bitmapbitmap格式图片数据
start是number起始阈值
end否number结束阈值,可空,默认255
mode否number二值化模式,默认1,2则为反转
let bit = image.readBitmap("/sdcard/1.png")
//默认30-255,模式1
bit = ll.img.binaryzationBitmapByRange(bit, 30)
//默认模式1
bit = ll.img.binaryzationBitmapByRange(bit, 30, 150)
//全参数
bit = ll.img.binaryzationBitmapByRange(bit, 30, 150, 2)
image.saveBitmap(bit, "png", 100, "/sdcard/2.png")
返回值类型说明
BitmapBitmap二值化后数据

合并​

mergeBitmap 合并图片,支持方向​

参数名必选类型说明
firstBitmap是ImageBitmap第一张Bitmap图
secondBitmap是ImageBitmap第二张Bitmap图
direction否number方向,横向0/纵向1,默认0
//读取两张图
let bit1 = image.readBitmap("/sdcard/Pictures/1.png")
let bit2 = image.readBitmap("/sdcard/Pictures/2.png")
//默认横向
let bit = ll.img.mergeBitmap(bit1, bit2)
//指定纵向
bit = ll.img.mergeBitmap(bit1, bit2, 1)
//保存结果图
image.saveBitmap(bit, "png", 100, "/sdcard/Pictures/3.png")
//养成释放图片的好习惯
image.recycle(bit1)
image.recycle(bit2)
image.recycle(bit)
返回值类型说明
android.graphics.Bitmap@64947acImageBitmap合并后的Bitmap图

旋转​

rotateBitmap 旋转图片​

参数名必选类型说明
image是ImageBitmapBitmap图片对象
angel是number角度,如旋转90度
let bit = image.readBitmap("/sdcard/Pictures/1.png")
ll.img.rotateBitmap(bit, 90)
//养成释放图片的好习惯
bit.recycle()
返回值类型说明
android.graphics.Bitmap@9dfb377null/ImageBitmapBitmap图片对象

缩放​

scaleBitmapByWH 通过宽高缩放Bitmap​

参数名必选类型说明
image是ImageBitmapBitmap图片对象
newWidth是number新宽度
newHeight是number新高度
let bit = image.readBitmap("/sdcard/Pictures/1.png")
let bit2 = ll.img.scaleBitmapByWH(bit, 50, 50)
image.saveBitmap(bit2, "png", 100, "/sdcard/Pictures/2.png")
//养成回收图片的好习惯
bit.recycle()
bit2.recycle()
返回值类型说明
android.graphics.Bitmap@9dfb377null/ImageBitmapBitmap图片对象

scaleBitmapByRatio 通过百分比缩放Bitmap​

参数名必选类型说明
image是ImageBitmapBitmap图片对象
ratioW是number宽百分比
ratioH是number高百分比,可不填,默认跟宽一样
let bit = image.readBitmap("/sdcard/Pictures/1.png")
//高百分比,可不填,默认跟宽一样
//let bit2 = ll.img.scaleBitmapByRatio(bit, 50)
let bit2 = ll.img.scaleBitmapByRatio(bit, 50, 50)
image.saveBitmap(bit2, "png", 100, "/sdcard/Pictures/2.png")
//养成回收图片的好习惯
bit.recycle()
bit2.recycle()
返回值类型说明
android.graphics.Bitmap@9dfb377null/ImageBitmapBitmap图片对象