HarmonyOS鸿蒙Next中AI识图功能可以直接返回一个物品类型吗?比如说糖果、蛋糕、米饭等?
HarmonyOS鸿蒙Next中AI识图功能可以直接返回一个物品类型吗?比如说糖果、蛋糕、米饭等? AI识图功能可以直接返回一个物品类型吗?比如说糖果、蛋糕、米饭等?
AI识图是通过聚合OCR(Optical Character Recognition)、主体分割、实体识别、多目标识别等AI能力,提供场景化的文本识别、主体分割、识图搜索功能。AI识图功能主开关入口在基础控件API列表中,如果您接受AI识图默认的交互和功能,仅需使用基础控件提供的相关使能接口打开功能开关即可。
AI识图控件API可参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/vision-image-analyzer
更多关于HarmonyOS鸿蒙Next中AI识图功能可以直接返回一个物品类型吗?比如说糖果、蛋糕、米饭等?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
通过 VisionImageAnalyzerController 组件获取识别结果类型:
import { visionImageAnalyzer } from '@kit.VisionKit';
import { BusinessError } from '@kit.BasicServicesKit'
@Entry
@Component
struct ImageDemo {
private visionImageAnalyzerController: visionImageAnalyzer.VisionImageAnalyzerController = new visionImageAnalyzer.VisionImageAnalyzerController()
aboutToAppear(): void {
this.visionImageAnalyzerController.on('imageAnalyzerVisibilityChange', (visibility: visionImageAnalyzer.ImageAnalyzerVisibility) => {
console.info("DEMO_TAG", `imageAnalyzerVisibilityChange result: ${JSON.stringify(visibility)}`)
})
this.visionImageAnalyzerController.on('textAnalysis', (text: string) => {
console.info("DEMO_TAG", `textAnalysis result: ${JSON.stringify(text)}`)
})
this.visionImageAnalyzerController.on('selectedTextChange', (selectedText: string) => {
console.info("DEMO_TAG", `selectedTextChange result: ${JSON.stringify(selectedText)}`)
})
this.visionImageAnalyzerController.on('subjectAnalysis', (subjects: visionImageAnalyzer.Subject[]) => {
console.info("DEMO_TAG", `subjectAnalysis result: ${JSON.stringify(subjects)}`)
})
this.visionImageAnalyzerController.on('selectedSubjectsChange', (subjects: visionImageAnalyzer.Subject[]) => {
console.info("DEMO_TAG", `selectedSubjectsChange result: ${JSON.stringify(subjects)}`)
})
this.visionImageAnalyzerController.on('analyzerFailed', (error: BusinessError) => {
console.error("DEMO_TAG", `analyzerFailed result: ${JSON.stringify(error)}`)
})
}
build() {
Stack() {
Image($r('app.media.img'), {
types: [ImageAnalyzerType.TEXT, ImageAnalyzerType.SUBJECT, ImageAnalyzerType.OBJECT_LOOKUP],
aiController: this.visionImageAnalyzerController
})
.width('100%')
.height('100%')
.enableAnalyzer(true)
.objectFit(ImageFit.Contain)
}.width('100%').height('100%')
}
aboutToDisappear(): void {
this.visionImageAnalyzerController.off('imageAnalyzerVisibilityChange')
this.visionImageAnalyzerController.off('textAnalysis')
this.visionImageAnalyzerController.off('selectedTextChange')
this.visionImageAnalyzerController.off('subjectAnalysis')
this.visionImageAnalyzerController.off('selectedSubjectsChange')
this.visionImageAnalyzerController.off('analyzerFailed')
}
}
参考地址
AI识图控件文档地址
https://developer.huawei.com/consumer/cn/doc/harmonyos-references/vision-image-analyzer
自带的只有识图搜索功能:
用户抠图后可基于抠出的主体进行识图搜索,开发者也可以主动触发目标标识,触发后会识别图中的动物、植物、建筑物等目标并用相应的ICON标识,用户点击ICON也可以进行识图搜索,搜索结果会以模态窗的方式为用户呈现。
如果要实现直接识别出一个物品的类型,可以在小艺开放平台里接入识别图像的插件,做成工作流或者智能体实现,也可以接入第三方AI图片识别平台,例如扣子平台,不过需要收费。
目前AI识图是处于不能返回和控制物品识别的API,开发者可以主动开发触发识别图中的物品,以识别图中物品的类型的相关内容
AI识图目前没有直接返回一个物品类型的API;可以通过AI识图搜索获取相关信息
- 识图搜索。
用户抠图后可基于抠出的主体进行识图搜索,开发者也可以主动触发目标标识,触发后会识别图中的动物、植物、建筑物等目标并用相应的ICON标识,用户点击ICON也可以进行识图搜索,搜索结果会以模态窗的方式为用户呈现。
约束与限制
- 支持图片最小规格100*100分辨率。
- 分析图像要求是静态非矢量图,即svg、gif等图像类型不支持分析,支持传入PixelMap进行分析,目前仅支持RGBA_8888类型。
- 支持翻译的图片宽高最小比例为1:3(高度小于宽度的3倍),支持文本识别的图片宽高最小比例为1:7(高度小于宽度的7倍)。
- 当前设备支持本能力可以通过getImageAnalyzerSupportTypes进行判断。
日志返回格式为“SupportTypes: [主体识别功能枚举值,文字识别功能枚举值,对象查找功能枚举值]”,具体枚举值可参见ImageAnalyzerType。
若返回“SupportTypes: []”,则说明当前设备不支持AI识图能力;若返回其他值,则说明当前设备支持AI识图能力。
支持:
目前支持的基础控件范围包括Image、Video、XComponent。其中,配合Image控件可完成静态图片上的识图功能,配合Video控件可完成视频播放暂停帧的识图功能,配合XComponent可完成自定义渲染等场景下的图像的识图功能。
在HarmonyOS Next中,AI识图功能通过图像识别模型分析图片内容,可返回识别出的物品类型。系统内置的物体分类模型能够识别包括糖果、蛋糕、米饭在内的常见物品类别,并直接返回对应的类型标签。该功能基于设备端AI计算实现,无需依赖外部服务即可完成分类识别。
是的,HarmonyOS Next的AI识图功能可以返回物品类型,如糖果、蛋糕、米饭等。该功能基于设备端AI模型进行实时图像识别,无需联网即可快速识别常见物体,并返回分类标签。开发者可通过HarmonyOS的AI框架接口调用该能力,获取识别结果的物品类别信息。

