TensorFlow 深度神经网络图像识别入门
作者 牟晓东
发表于 2023年7月

通过对摄像头所捕获的画面内容进行处理和分析的图像识别,通常又称为“图像分类”任务。TensorFlow Lite 是深度神经网络图像识别解决方案中的一种,它提供了经过优化计算的若干预训练模型数据和标签文件,下载保存至本地后通过Python 编程调用即可实现画面内容的快速图像识别。

1.准备工作:安装TensorFlow及下载模型和标签文件

以Python 3.8 为例, 在本地安装对应版本的TensorFlow, 通过在WindowsPowerShell 窗口中执行“pipinstall tensorflow==2.3.1 -i https://pypi.tuna.tsinghua.edu.cn/simple” 命令来实现;然后下载预训练模型(mobilenet_v1_1.0_224_quant.tflite)和中英文标签文件(labels_mobilenet_quant_v1_224.txt、labels_mobilenet_quant_v1_224_cn_baidu.txt),两个txt 标签文件内容是一一对应的,分别保存了包括“背景”在内的1001 种常见的动植物和生活办公类物品,比如金鱼(goldfish)、鸵鸟(ostrich)和酒瓶(wine bottle)等等,每种物品名称均占单独的一行(如图1)。

2.Python代码编程

(1)库模块的导入与标签文件的读取

首先,导入OpenCV、Numpy、tflite和PIL 库模块:“import cv2”“importnumpy as np”“import tflite_runtime.interpreter as tflite”“from PIL importImage,ImageFont,ImageDraw”; 接着, 建立变量file_model 和file_label,赋值为“mobilenet_v1_1.0_224_quant.t f lite”“la be ls_mobile n e t _qua n t _v1_224_cn_baidu.txt”, 分别对应分类模型和中文标签(如果想加载英文标签文件则将变量file_label 赋值为“labels_mobilenet_quant_v1_224.txt”);再进行标签文件的读取操作:“with open(file_label, 'r',encoding='utf-8') as f:labels =[line.strip() for line in f.readlines()]”。

本文刊登于《电脑报》2023年25期
龙源期刊网正版版权
更多文章来自
订阅