计算机视觉任务一直是GPU的天下,由于GPU超强的算力,也把计算机视觉任务提高了很多水平。但是在移动终端平台,如何来运行大型的模型,一直是大家关注的话题。Mediapipe是Google开源的可以直接运行在移动终端设备上的多任务模型,不仅在计算机视觉任务上,还是NLP自然语言处理任务上,都取得的较好的成绩。本期我们来看看使用Mediapipe如何进行对象分类任务。
Mediapipe对象分类任务,输入可以是以下数据类型之一:
图像分类器输出一个类别列表,其中包含:
图像分类器需要下载图像分类模型,Mediapipe提供了2种尺寸的模型供用户下载。
EfficientNet-Lite0模型
EfficientNet-Lite0 模型使用 EfficientNet 架构,并使用ImageNet进行训练以识别 1,000个类别,例如树木、动物、食物、车辆、人等。EfficientNet-Lite0 可用作 int8 和 float 32 模型。
EfficientNet-Lite2模型
EfficientNet-Lite2 模型使用 EfficientNet 架构,并使用ImageNet进行训练以识别 1,000 个类别,例如树木、动物、食物、车辆、人等。EfficientNet-Lite2 可用作 int8 和 float 32 模型。该模型通常比 EfficientNet-Lite0 更准确,但速度也更慢且占用更多内存。该模型适用于精度比速度更重要的任务。
在移动终端设备上面,其EfficientNet-Lite0模型最快才只有10ms的延时,这对一个计算机视觉任务来说已经是很快的结果,这么低的延时,完全可以直接使用在实时视频与直播任务上。
若要运行Mediapipe的对象分类任务,首先需要安装Mediapipe库,并下载相关的模型。
当安装完成Mediapipe库与预训练模型后,就可以进行图片的分类任务了,当然这里你可以下载不同的预训练模型。
领取专属 10元无门槛券
私享最新 技术干货