0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙开发图形图像——@ohos.effectKit (图像效果)

王程 来源:jf_75796907 作者:jf_75796907 2024-02-22 16:08 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

图像效果提供处理图像的一些基础能力,包括对当前图像的亮度调节、模糊化、灰度调节、智能取色等。

该模块提供以下图像效果相关的常用功能:

Filter:效果类,用于添加指定效果到图像源。

Color:颜色类,用于保存取色的结果。

ColorPicker:智能取色器。

NOTE
本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import effectKit from '@ohos.effectKit';

effectKit.createEffect

createEffect(source: image.PixelMap): Filter

通过传入的PixelMap创建Filter实例。

系统能力: SystemCapability.Multimedia.Image.Core

参数:

wKgaomXXAFaAOpt3AABKf7HO3l8081.png

返回值:

wKgaomXXAF6AW9kDAAAi2tF7JIc005.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } } image.createPixelMap(color, opts).then((pixelMap) => { let headFilter = effectKit.createEffect(pixelMap); })

effectKit.createColorPicker

createColorPicker(source: image.PixelMap): Promise

通过传入的PixelMap创建ColorPicker实例,使用Promise异步回调。

系统能力: SystemCapability.Multimedia.Image.Core

参数:

wKgZomXXAGqAaSBZAABKVm7Szk0230.png

返回值:

wKgaomXXAHGAFYcIAAAh_Uneufw939.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } } image.createPixelMap(color, opts).then((pixelMap) => { effectKit.createColorPicker(pixelMap).then(colorPicker => { console.info("color picker=" + colorPicker); }).catch(ex => console.error(".error=" + ex.toString())) })

effectKit.createColorPicker

createColorPicker(source: image.PixelMap, callback: AsyncCallback): void

通过传入的PixelMap创建ColorPicker实例,使用callback异步回调。

系统能力: SystemCapability.Multimedia.Image.Core

参数:

wKgaomXXAHeAdEJzAABvX5BTDkI118.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } } image.createPixelMap(color, opts).then((pixelMap) => { effectKit.createColorPicker(pixelMap, (error, colorPicker) => { if (error) { console.error('Failed to create color picker.'); } else { console.info('Succeeded in creating color picker.'); } }) })

Color

颜色类,用于保存取色的结果。

系统能力: SystemCapability.Multimedia.Image.Core

wKgZomXXAH-AdpnMAABoyrVHSIY275.png

ColorPicker

取色类,用于从一张图像数据中获取它的主要颜色。在调用ColorPicker的方法前,需要先通过createColorPicker创建一个ColorPicker实例。

getMainColor

getMainColor(): Promise

读取图像主色的颜色值,结果写入Color里,使用Promise异步回调。

系统能力: SystemCapability.Multimedia.Image.Core

返回值:

wKgZomXXAIaAbKIxAAAoNc-NRHE316.png

示例:

colorPicker.getMainColor().then(color => { console.info('Succeeded in getting main color.'); console.info(`color[ARGB]=${color.alpha},${color.red},${color.green},${color.blue}`); }).catch(error => { console.error('Failed to get main color.'); })

getMainColorSync

getMainColorSync(): Color

读取图像主色的颜色值,结果写入Color里,使用同步方式返回。

系统能力: SystemCapability.Multimedia.Image.Core

返回值:

wKgZomXXAI6AC_z4AAAjrfyt3mo504.png

示例:

let color = colorPicker.getMainColorSync();
console.info(‘get main color =’ + color);

wKgaomXXAOeALbKrAAI9Ul3CpWM699.png

wKgaomXXAJeAIOinAAI9Ul3CpWM376.png

Filter

图像效果类,用于将指定的效果添加到输入图像中。在调用Filter的方法前,需要先通过createEffect创建一个Filter实例。

blur

blur(radius: number): Filter

将模糊效果添加到效果链表中,结果返回效果链表的头节点。

系统能力: SystemCapability.Multimedia.Image.Core

参数:

wKgZomXXAOiAM9MMAAA6ZgjZzlw545.png

wKgaomXXAJ6ASNjGAAA6ZgjZzlw318.png

返回值:

wKgaomXXAOiAaD4cAAAX_c9iadI439.png

wKgaomXXAKOAQwDdAAAX_c9iadI237.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } }; image.createPixelMap(color, opts).then((pixelMap) => { let radius = 5; let headFilter = effectKit.createEffect(pixelMap); if (headFilter != null) { headFilter.blur(radius); } })

wKgZomXXAOqAZohDAAPKaPnGr8g418.png

wKgaomXXAK2AJA7PAAPKaPnGr8g852.png

brightness

brightness(bright: number): Filter

将高亮效果添加到效果链表中,结果返回效果链表的头节点。

系统能力: SystemCapability.Multimedia.Image.Core

参数:

wKgaomXXAOqATV42AAA0mHwuR8o840.png

wKgaomXXALaAMqKHAAA0mHwuR8o766.png

返回值:

wKgZomXXAOuAHEb0AAAX2Za5ei4904.png

wKgZomXXALuATsyWAAAX2Za5ei4093.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } }; image.createPixelMap(color, opts).then((pixelMap) => { let bright = 0.5; let headFilter = effectKit.createEffect(pixelMap); if (headFilter != null) { headFilter.brightness(bright); } })

wKgZomXXAOyALaTEAAQeLWEU5uM119.png

wKgaomXXAMGALbopAAQeLWEU5uM869.png

grayscale

grayscale(): Filter

将灰度效果添加到效果链表中,结果返回效果链表的头节点。

系统能力: SystemCapability.Multimedia.Image.Core

返回值:

wKgaomXXAOyAcQ4_AAAX4yfe2RY331.png

wKgZomXXAMaAUHisAAAX4yfe2RY044.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } }; image.createPixelMap(color, opts).then((pixelMap) => { let headFilter = effectKit.createEffect(pixelMap); if (headFilter != null) { headFilter.grayscale(); } })

wKgZomXXAO2ARYdOAANXCUlMAdQ023.png

wKgaomXXAMyAcFYGAANXCUlMAdQ235.png

getPixelMap

getPixelMap(): image.PixelMap

获取已添加链表效果的源图像的image.PixelMap。

系统能力: SystemCapability.Multimedia.Image.Core

返回值:

wKgaomXXAO2AC8HAAAAiYDWOIAg938.png

wKgZomXXANKAZBtzAAAiYDWOIAg457.png

示例:

import image from "@ohos.multimedia.image"; const color = new ArrayBuffer(96); let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } }; image.createPixelMap(color, opts).then((pixelMap) => { let pixel = effectKit.createEffect(pixelMap).grayscale().getPixelMap(); }) 审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RK平台图形加速神器RGA开发实战:避坑+优化全攻略

    在嵌入式开发场景中,图形渲染、图像格式转换、OSD 叠加等需求越来越普遍,而 RGA 作为 RK 平台专属的硬件加速模块,能极大降低 CPU 负载,提升图形处理效率。
    的头像 发表于 02-10 16:57 4200次阅读

    图像采集卡:连接设备与数据的图像枢纽

    在机器视觉与图像传输体系中,图像采集卡是无可替代的重要枢纽——它一端承接相机、内窥镜、摄像机等前端图像设备的信号输出,另一端对接后端数据处理、存储、展示系统,通过信号转换、同步协调、高速传输三大能力
    的头像 发表于 01-22 13:51 435次阅读
    <b class='flag-5'>图像</b>采集卡:连接设备与数据的<b class='flag-5'>图像</b>枢纽

    数字图像采集的核心载体——图像采集卡技术白皮书

    在工业自动化、医疗影像、广电直播、科研成像等领域,图像采集卡作为连接前端图像设备与后端计算系统的核心硬件,是实现物理图像向数字信号转化并高效传输的关键枢纽。它解决了原始图像信号与计算机
    的头像 发表于 01-21 16:18 473次阅读
    数字<b class='flag-5'>图像</b>采集的核心载体——<b class='flag-5'>图像</b>采集卡技术白皮书

    东芝推出缩小图像型CCD线性图像传感器TCD2400DG

    东芝电子元件及存储装置株式会社(“东芝”)宣布,推出一款专为视觉检测中使用的线阵相机[1]开发的缩小图像型[2]CCD[3]线性图像传感器——“TCD2400DG”。该产品于近日起开始支持批量出货。
    的头像 发表于 01-09 16:37 1367次阅读
    东芝推出缩小<b class='flag-5'>图像</b>型CCD线性<b class='flag-5'>图像</b>传感器TCD2400DG

    EspeedGrab图像采集软件介绍(Cameralink转USB采集)

    /14/16; 黑白、彩色、Bayer;可见、红外、紫外;线阵、面阵; 2 图像存储录制 逐帧、跳帧、定时等多模式存储; BMP、JPEG、RAW、AVI等,视频或者图片皆可以。 3 特殊格式支持
    发表于 12-23 17:26

    RK3588采集Cameralink图像快速搭建系统办法

    对于一些特种相机,在进行嵌入式开发的时候,会遇到诸如ARM+Cameralink接口的图像采集架构。下面距离介绍一种嵌入式图像采集方案。代替Dalsa采集卡,xtium等系列。也可以代替
    发表于 12-19 10:07

    图像采集卡:机器视觉时代的图像数据核心枢纽

    一、图像采集卡的技术本质:从信号到数据的“转换器”与“传输通道”图像采集卡(ImageCaptureCard)是机器视觉系统的核心硬件组件,本质是通过专用芯片(如FPGA、ASIC)实现图像信号
    的头像 发表于 11-12 15:15 958次阅读
    <b class='flag-5'>图像</b>采集卡:机器视觉时代的<b class='flag-5'>图像</b>数据核心枢纽

    迅为iTOP-RK3568人工智能开发板mobilenet图像分类模型推理测试

    想快速验证MobileNet图像分类模型的实际运行效果?迅为iTOP-RK3568人工智能开发板,让模型推理测试高效又省心。
    的头像 发表于 08-28 15:53 1621次阅读
    迅为iTOP-RK3568人工智能<b class='flag-5'>开发</b>板mobilenet<b class='flag-5'>图像</b>分类模型推理测试

    【EASY EAI Orin Nano开发板试用体验】使用Linux posix文件读取接口和LVGL的animimg(图像动画)控件实现动画播放以及

    【EASY EAI Orin Nano开发板试用体验】使用Linux posix文件读取接口和LVGL的animimg(图像动画)控件实现动画播放以及使用LVGL定时器实现摄像头图像显示 想要实现
    发表于 07-22 00:34

    国产化板卡设计资料:2270-VC709E 基于FMC接口的JFM7VX690T36 PCIeX8 接口卡

    JFM7K325T板卡, 国产化板卡, 软件无线电处理平台, 图形图像硬件加速器, JFM7VX690T板卡
    的头像 发表于 07-17 09:25 684次阅读
    国产化板卡设计资料:2270-VC709E 基于FMC接口的JFM7VX690T36 PCIeX8 接口卡

    国产化板卡设计原理图:2330-基于FMC接口的JFM7K325T PCIeX4 3U PXIe接口卡

    3U PXIe, FMQL45T900I, K7图形图像硬件加速器, PXIe接口卡, JFM7K325T 芯片
    的头像 发表于 07-03 14:13 926次阅读
    国产化板卡设计原理图:2330-基于FMC接口的JFM7K325T PCIeX4 3U PXIe接口卡

    【正点原子STM32MP257开发板试用】基于 DeepLab 模型的图像分割

    【正点原子STM32MP257开发板试用】图像分割 本文介绍了正点原子 STM32MP257 开发板基于 DeepLab 模型实现图像分割的项目设计。 DeepLab 模型 DeepL
    发表于 06-21 21:11

    HarmonyOS应用图像stride处理方案

    图像存储在内存中时,内存缓冲区可能在每行像素之后包含额外的填充字节。填充字节会影响图像在内存中的存储方式,但不会影响图像的显示方式。stride是内存中一行像素到内存中下一行像素的字节数;如果存在填充字节,则步幅比
    的头像 发表于 06-10 14:17 1415次阅读
    HarmonyOS应用<b class='flag-5'>图像</b>stride处理方案

    开源鸿蒙图形与游戏分论坛圆满举办

    近日,开源鸿蒙开发者大会2025(OHDC.2025)图形与游戏分论坛在深圳圆满举办。本次分论坛由开源鸿蒙图形SIG & 游戏SIG组组长、
    的头像 发表于 06-05 15:30 1460次阅读

    itop-3568开发板机器视觉opencv开发手册-图像绘制-画线

    本小节代码在配套资料“iTOP-3568 开发板\\\\03_【iTOP-RK3568 开发板】指南教程 \\\\04_OpenCV 开发配套资料\\\\11”目录下,如下图所示: cv2.line
    发表于 06-04 10:38