类: 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 
getmat():Mat
返回值
c4mat 
获取四通道(BGRA格式)的Mat对象。
getc4mat():Mat
返回值
width 
获取图像的宽度。
getwidth():number
返回值
number
height 
获取图像的高度。
getheight():number
返回值
number
convertToTargetColor 
privateconvertToTargetColor
of_ARGB_8888_Bitmap 
private staticof_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 | 
返回值
