抠图
功能介绍
对输入的图像进行抠图操作,输出到Image对象中。
接口调用流程
使用抠图接口前,用户需准备好被抠图的图片对象。
图1 图像处理(抠图)接口调用流程
关键步骤说明如下:
- 调用mx_init()接口进行全局初始化。
- ImageProcessor初始化。
- 使用图片解码接口对输入图片进行解码。
根据业务对图片进行解码,生成可抠图的Image对象。后续可以通过图像处理接口对图片进行处理,生成最终需要抠图的Image对象。
- 构造抠图Rect以及输出Image。
- 将输入图片及其他参数传入crop接口,获取抠图结果。
- 调用mx_deinit()接口进行去初始化。
示例代码
以下为功能特性关键步骤的代码示例,不可以直接拷贝运行,仅供参考。
from mindx.sdk import base from mindx.sdk.base import ImageProcessor, Rect, Image def prcoess(): # 图像解码 # 初始化ImageProcessor对象 imageProcessor = ImageProcessor(device_id) image_path = "image_data/test_image.jpg" # 读取图片路径进行解码,解码格式为nv12(YUV_SP_420) decoded_image = imageProcessor.decode(image_path, base.nv12) # 图像处理操作(抠图) crop_para = [Rect(300, 100, 550, 350)] croped_images = imageProcessor.crop(decoded_image, crop_para) if __name__ == "__main__": base.mx_init() # 资源初始化 process() base.mx_deinit() # 资源去初始化
父主题: 媒体数据处理