类: Image
更新: 2025/7/20 字数: 0 字 时长: 0 分钟
image.Image
代表图像对象的类,通过opencv的Mat构造。或者通过readImage, decodeImage等函数从图片文件、链接、Base64中解析。
目录
Constructors
属性
方法
- pixel
- clip
- clipSync
- resize
- resizeSync
- scale
- scaleSync
- rotate
- rotateSync
- grayscale
- grayscaleSync
- copy
- copySync
- toBitmap
- detectAndComputeFeatures
- recycle
- ofBitmap
Constructors
constructor
- new Image(
mat
:Mat
)
参数
名称 | 类型 | 描述 |
---|---|---|
mat | Mat |
属性
_mat
- _mat
_c4mat
- _c4mat?
_onRecycledCallbacks
- _onRecycledCallbacks
mat
get
mat():Mat
返回值
c4mat
获取四通道(BGRA格式)的Mat对象。
get
c4mat():Mat
返回值
width
获取图像的宽度。
get
width():number
返回值
number
height
获取图像的高度。
get
height():number
返回值
number
convertToTargetColor
private
convertToTargetColor
of_ARGB_8888_Bitmap
private static
of_ARGB_8888_Bitmap
方法
pixel
获取图像在位置(x, y)处的颜色。若为三通道图像,则假设其为BGR格式;若为四通道图像,则假设其为BGRA格式;若为单通道图像,则假设其为灰度图。
- pixel(x:
number
, y:number
):Color
参数
名称 | 类型 | 描述 |
---|---|---|
x | number | |
y | number |
返回值
示例
js
"nodejs";
const { loadImage } = require("image");
async function main() {
const img = await loadImage("https://picsum.photos/200/300");
console.log(img.pixel(0, 0));
}
main();
clip
用给定的区域剪切图像,异步返回剪切后的图像。
- clip(rect:
cv.Rect
): Promise<Image
>
参数
名称 | 类型 | 描述 |
---|---|---|
rect | cv.Rect | 指定剪切区域 |
返回值
Promise<Image
>
示例
js
"nodejs";
const cv = require("@autojs/opencv");
const { loadImage } = require("image");
async function main() {
const img = await loadImage("https://picsum.photos/200/300");
console.log(await img.clip(new cv.Rect(0, 0, 100, 100)));
}
main();
clipSync
用给定的区域剪切图像,同步返回剪切后的图像。
- clipSync(rect:
cv.Rect
):Image
参数
名称 | 类型 | 描述 |
---|---|---|
rect | cv.Rect | 指定剪切区域 |
返回值
示例
js
"nodejs";
const cv = require("@autojs/opencv");
const { loadImage } = require("image");
async function main() {
const img = await loadImage("https://picsum.photos/200/300");
console.log(img.clipSync(new cv.Rect(0, 0, 100, 100)));
}
main();
resize
缩放图像,异步返回缩放后的新图像。
- resize(width:
number
, height:number
, interpolation?:number
): Promise<Image
>
参数
名称 | 类型 | 描述 |
---|---|---|
width | number | 缩放后的宽度 |
height | number | 缩放后的高度 |
interpolation? | number | 插值方式,默认为{@link cv.INTER_LINEAR}。可以为{@link cv.INTER_AREA}, {@link cv.INTER_CUBIC}, {@link cv.INTER_LANCZOS4}, {@link cv.INTER_LINEAR}, {@link cv.INTER_NEAREST}等。 |
返回值
Promise<Image
>
resizeSync
缩放图像,同步返回缩放后的新图像。
- resizeSync(width:
number
, height:number
, interpolation?:number
):Image
参数
名称 | 类型 | 描述 |
---|---|---|
width | number | 缩放后的宽度 |
height | number | 缩放后的高度 |
interpolation? | number | 插值方式,默认为{@link cv.INTER_LINEAR}。可以为{@link cv.INTER_AREA}, {@link cv.INTER_CUBIC}, {@link cv.INTER_LANCZOS4}, {@link cv.INTER_LINEAR}, {@link cv.INTER_NEAREST}等。 |
返回值
toBitmap
将图像转换为android的Bitmap对象。
- toBitmap():
android.graphics.Bitmap
返回值
android.graphics.Bitmap
detectAndComputeFeatures
回收图像对象。回收后不应对本对象进行任何操作。
- detectAndComputeFeatures(options?:
DetectAndComputeFeaturesOptions
): Promise<ImageFeatures
>
参数
名称 | 类型 | 描述 |
---|---|---|
options? | DetectAndComputeFeaturesOptions |
返回值
Promise<ImageFeatures
>
recycle
回收图像对象。回收后不应对本对象进行任何操作。
- recycle():
void
返回值
void
ofBitmap
将android Bitmap对象转为Image对象。若Bitmap为空或非Bitmap对象,则抛出异常。
- ofBitmap(bitmap:
android.graphics.Bitmap
):Image
参数
名称 | 类型 | 描述 |
---|---|---|
bitmap | android.graphics.Bitmap |
返回值