在OpenHarmony上,使用tensorflow lite推理Yamnet实现语音分类

4 篇文章 2 订阅
1 篇文章 0 订阅

TensorFlow Lite C++ minimal example

This example shows how you can build a simple TensorFlow Lite application.

Step 1. Install CMake tool

It requires CMake 3.16 or higher. On Ubuntu, you can simply run the following
command.

sudo apt-get install cmake

Or you can follow
the official cmake installation guide

Step 2. Clone TensorFlow repository
git clone https://github.com/tensorflow/tensorflow.git tensorflow
git checkout origin/r2.10
Step 3. Create CMake build directory and run CMake tool
# move current directory to tensorflow_root/tensorflow/lite/examples

mkdir build_yamnet
cd build_yamnet
cmake -DCMAKE_TOOLCHAIN_FILE=/home/yons/data/ohos-sdk/linux/native/build/cmake/ohos.toolchain.cmake -DTFLITE_ENABLE_XNNPACK=OFF ../tensorflow/lite/examples/yamnet

# enter tensorflow root path, patch different
cd ../
patch -p0 build_yamnet/flatbuffers/include/flatbuffers/util.h flatbuffers_util_h.diff
patch -p0 build_yamnet/flatbuffers/src/util.cpp flatbuffers_util_cpp.diff
patch -p0 build_yamnet/cpuinfo/CMakeLists.txt  cpuinfo.diff

# re cmake configuration and build

cd build_yamnet
cmake -DCMAKE_TOOLCHAIN_FILE=/home/yons/data/ohos-sdk/linux/native/build/cmake/ohos.toolchain.cmake -DTFLITE_ENABLE_XNNPACK=OFF ../tensorflow/lite/examples/yamnet
cmake --build ./ -j20

Step 4. copy binary file and related file to OpenHarmony device through device
  • make sure that connect to device.
hdc list targets
hdc shell
# In the build_yamnet directory
hdc file send yamnet /data
hdc file send yamnet_class_map.txt /data
hdc file send miaow_16k.wav /data
hdc file send golden_whistle.wav  /data
hdc file send speech_whistling2.wav /data
# copy libc++_shared.so from ohos-sdk cross compile toolchain
hdc file send libc++_shared.so /data

Step 5. execute binary programation in OHOS
hdc shell
cd data
export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH
./yamnet wav_filepath

# 从上面三个文件选一
golden_whistle.wav
miaow_16k.wav
speech_whistling2.wav
Step 5. result

请添加图片描述

more detail

  • 打包完的文件下载地址
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,关于在树莓派上使用tensorflowlite实现表情识别,您可以按照以下步骤进行操作: 1.在树莓派上安装tensorflowlite库。 2.使用训练好的模型,将其转换为tensorflowlite格式。您可以在PC上训练一个表情识别模型,然后将其转换为tensorflowlite格式,再将转换后的模型复制到树莓派上。 3.在树莓派上使用python编写识别程序,读取摄像头捕获的实时视频流,对每一帧图像进行预处理,并将其输入到tensorflowlite模型中进行推理,最终输出表情识别结果。 需要注意的是,表情识别模型的准确度与训练数据集的质量和数量有很大关系,因此您需要选择一个合适的数据集来训练模型。同时,树莓派的硬件资源相对有限,需要选择适合树莓派的模型进行推理。 ### 回答2: 要在树莓派上使用TensorFlow Lite实现表情识别,可以按照以下步骤进行: 1. 准备树莓派:首先,确保你的树莓派已经连接了摄像头,并且已经安装了Raspbian操作系统。 2. 安装TensorFlow Lite:在树莓派上安装TensorFlow Lite库。可以通过在终端中运行以下命令来安装: ``` pip install tensorflow ``` 3. 准备训练数据:使用已有的表情数据集或者自己创建一个表情数据集。数据集应包含不同表情的图像样本,并为每个图像样本标注正确的表情类别。 4. 训练模型:使用TensorFlow来训练一个表情识别模型。可以选择一种适合的深度学习架构(如卷积神经网络)来构建模型,并使用数据集进行训练。可以使用Python编写训练脚本,并在树莓派上运行。 5. 转换模型为TensorFlow Lite格式:将训练好的TensorFlow模型转换为TensorFlow Lite格式,以便在树莓派上进行推断。可以使用TensorFlow提供的工具来进行模型转换。 6. 在树莓派上运行推断:将转换后的模型部署到树莓派上,使用树莓派的摄像头捕捉实时图像,并将图像传输到模型中进行表情识别。你可以使用Python编写一个程序,通过TensorFlow Lite库来实现图像的预处理和模型推断,从而实现表情识别的功能。 通过以上步骤,就可以在树莓派上使用TensorFlow Lite实现表情识别。树莓派具有较低的功耗和便携性,非常适合用于嵌入式和物联网设备中的表情识别应用。 ### 回答3: 在树莓派上使用TensorFlow Lite实现表情识别可以按照以下步骤进行: 1. 准备数据集:收集一些包含各种表情的图片作为训练数据,可以使用人脸表情数据集如FER2013等。 2. 安装TensorFlow Lite:在树莓派上安装TensorFlow Lite库,可以使用pip或者从源代码编译安装。 3. 模型训练:使用收集的数据集进行模型训练。可以选择使用预训练的模型(如MobileNet)并进行微调,或自行设计卷积神经网络结构。利用TensorFlow的模型训练工具,如Keras等,训练一个适用于表情识别的模型。 4. 模型转换:使用TensorFlow Lite的转换工具将训练好的模型转换为TensorFlow Lite模型,以优化在嵌入式设备上的运行。 5. 集成模型到树莓派:将转换好的TensorFlow Lite模型加载到树莓派上,可以使用TensorFlow Lite的Python API来加载模型,并且在摄像头捕获的图像上运行表情识别。 6. 图像处理和预测:获取树莓派摄像头捕获的实时图像,并进行图像预处理,例如人脸检测和裁剪。 7. 运行模型进行预测:将预处理后的人脸图像输入到TensorFlow Lite模型中,进行表情识别预测。根据模型输出的概率分布或类别标签,判断出当前图像的表情。 8. 可视化或输出结果:将表情识别的结果进行可视化展示,可以在树莓派本地显示或通过网络传输至其他设备。 总结:以上是在树莓派上使用TensorFlow Lite实现表情识别的基本步骤,主要包括数据准备、模型训练、模型转换、模型集成、图像处理和预测等过程。通过这些步骤可以在树莓派上实现实时的表情识别功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值