当前位置: 首页 > news >正文

做音乐头像网站wordpress邮箱如何解析

做音乐头像网站,wordpress邮箱如何解析,yy大杂烩,搞一个网站多少钱【lite.ai.toolkit】【深度学习】【Ubuntu 20.04】C 轻量级AI模型工具箱的编译、安装、使用教程 C算法库: 【】编译、安装、使用极简教程 文章目录【lite.ai.toolkit】【深度学习】【Ubuntu 20.04】C 轻量级AI模型工具箱的编译、安装、使用教程前言依赖环境搭建安装必要的依赖…

【lite.ai.toolkit】【深度学习】【Ubuntu 20.04】C++ 轻量级AI模型工具箱的编译、安装、使用教程

C++算法库: 【】编译、安装、使用极简教程

文章目录

  • 【lite.ai.toolkit】【深度学习】【Ubuntu 20.04】C++ 轻量级AI模型工具箱的编译、安装、使用教程
  • 前言
  • 依赖环境搭建
    • 安装必要的依赖库
    • 安装 CUDA Toolkit
  • lite.ai.toolkit工具箱下载编译安装(onnxruntime)
  • lite.ai.toolkit 工具箱案例说明(onnxruntime)
    • age_googlenet 年龄预测
    • yolov8face 人脸检测
  • 总结


前言

lite.ai.toolkit【源码】 是一个轻量级的 C++ AI 模型工具箱,它旨在让开发者能够更方便地在各种环境中快速部署和运行流行的 AI 模型。

优势说明
加粗样式核心定位
模型支持提供了大量(超过100种)预先集成好的流行 AI 模型,涵盖了目标检测、人脸检测与识别、图像分割、抠图等多个领域。
推理引擎支持支持多种高性能的推理引擎作为后端,包括 ONNXRuntime、MNN、NCNN 和 TNN。
跨平台性支持在 Linux、Windows、macOS 以及 Android 等主流操作系统上运行。

依赖环境搭建

环境 Ubuntu 20.04
Windows系统的读者,博主建议安装docker而不是双系统。
【Windows11系统下安装docker】
【Windows11创建Ubuntu20.04 docker容器】

# 查看系统版本
lsb_release -a

安装必要的依赖库

sudo apt update # 安装 CMake
sudo apt install cmake -y# 安装 build-essential
sudo apt install -y build-essential

安装 CUDA Toolkit

【Ubuntu 环境配置详细教程】

1.安装合适的CUDA 【CUDA官网地址】

下载CUDA Toolkit 11.8
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

安装过程:Continue–>accept–>取消Driver选项([x]-选择,[]-不选择)
配置环境变量

# 打开.bashrc文件,添加信息
vim ~/.bashrc# 需要在.bashrc文件末尾添加的信息
export CUDA_HOME=/usr/local/cuda${CUDA_HOME:+:${CUDA_HOME}}
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}# 加载修改后的设置使之生效
source ~/.bashrc
# 查看CUDA版本
nvcc -V


2.安装对应的CUDNN【CUDNN官方地址】
推荐选择"Local Installer for Linux x86_64 (Tar)"。

# 解压
tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xz 
# 将下载好的.h文件和lib文件放到cuda文件夹目录下
sudo cp cudnn-linux-x86_64-8.9.7.29_cuda11-archive/include/cudnn*.h /usr/local/cuda/include 
sudo cp -p cudnn-linux-x86_64-8.9.7.29_cuda11-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
# 查看cuDNN版本
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2


lite.ai.toolkit工具箱下载编译安装(onnxruntime)

暂时只关注onnxruntime版本工具箱的编译和安装。

从官网下来源码 https://github.com/xlite-dev/lite.ai.toolkit

# 下载到合适的路径下
git clone --depth=1 https://github.com/xlite-dev/lite.ai.toolkit.git
# 编译按照
cd lite.ai.toolkit && sh ./build.sh

1.可能出现的问题: fatal error: cuda_runtime.h: 没有那个文件或目录。

解决方式:找到 “lite.ai.toolkit/examples/lite/cv/test_lite_face_restoration.cpp” 文件,修改部分内容:

# 原始代码
#include "lite/trt/cv/trt_face_restoration_mt.h"# 修改为
#ifdef ENABLE_TENSORRT
#include "lite/trt/cv/trt_face_restoration_mt.h"
#endif

2.可能出现的问题: 无法找到所需的符号(GLIBCXX_3.4.29和GLIBCXX_3.4.30),使用的预编译 .so 文件(libopencv_core.so, libddim_scheduler_cpp.so)是用高版本 GCC(≥10) 编译的,系统 libstdc++.so.6 太旧,不支持 GLIBCXX_3.4.29 和 3.4.30。

解决方式: “升级 GCC 和 libstdc++” 即可解决,最后在重新编译。
检查当前 GCC 版本和 GLIBCXX 版本:

# 检查当前 GCC 版本
gcc --version
g++ --version
# 检查系统支持的 GLIBCXX 版本
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX | tail -10


升级GCC和GLIBC++:

# 安装 software-properties-common 软件包
sudo apt update
sudo apt install -y software-properties-common
# 添加一个名为 PPA (Personal Package Archive) 的第三方软件源
#  Ubuntu 社区维护的 PPA 专门用于提供更新版本的 GCC、G++、binutils 等开发工具链(toolchain)
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
# 安装更高版本的GCC编译器
sudo apt install -y gcc-10 g++-10
# 将gcc-11/g++-11注册为 gcc/g++ 命令的可选版本之一,并设置优先级。
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100
# 查看所有 gcc/g++ 版本
ls /usr/bin/gcc*
ls /usr/bin/g++*
# 查看 gcc/g++ 的 alternatives 配置,包含优先级
sudo update-alternatives --verbose --display gcc
sudo update-alternatives --verbose --display g++


验证升级成功:

gcc --version
g++ --version
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX | tail -5


lite.ai.toolkit 工具箱案例说明(onnxruntime)

暂时只关注onnxruntime版本工具箱的案例说明。

age_googlenet 年龄预测

1.执行官方案例

# 测试用例的输出路径在bin子目录中
cd lite.ai.toolkit/build/install/bin
# eg:博主的位置
cd ./lite_ag/root/ayu_projects/lite.ai.toolkit/build/install/bin
# 年龄预测命令
./lite_age_googlenet 

出现 “/lite_modnet_dyn: error while loading shared libraries: libopencv_features2d.so.409: cannot open shared object file: No such file or directory” 。说明OpenCV库文件路径没有被正确配置,因此需要指定(临时),而后再次执行命令。

# 将OpenCV库路径添加到环境变量
export LD_LIBRARY_PATH=XXX/lite.ai.toolkit/build/install/third_party/opencv/lib:$LD_LIBRARY_PATH
#eg:博主个人的路径
export LD_LIBRARY_PATH=/root/ayu_projects/lite.ai.toolkit/build/install/third_party/opencv/lib:$LD_LIBRARY_PATH

执行结果:

结果保存到lite.ai.toolkit/examples/logs路径下:

2.检测个人数据集
在lite.ai.toolkit/examples/lite/cv路径下找到原始test_lite_age_googlenet.cpp文件

test_lite_age_googlenet.cpp 源码(onnxruntime相关部分):

#include "lite/lite.h"static void test_default()
{std::string onnx_path = "../../../examples/hub/onnx/cv/age_googlenet.onnx";std::string test_img_path = "../../../examples/lite/resources/test_lite_age_googlenet.jpg";std::string save_img_path = "../../../examples/logs/test_lite_age_googlenet.jpg";// 1. Test Default Engine ONNXRuntimelite::cv::face::attr::AgeGoogleNet *age_googlenet = new lite::cv::face::attr::AgeGoogleNet(onnx_path);lite::types::Age age;cv::Mat img_bgr = cv::imread(test_img_path);age_googlenet->detect(img_bgr, age);lite::utils::draw_age_inplace(img_bgr, age);cv::imwrite(save_img_path, img_bgr);if (age.flag)std::cout << "Default Version Detected Age: " << age.age << std::endl;delete age_googlenet;}static void test_onnxruntime()
{
#ifdef ENABLE_ONNXRUNTIMEstd::string onnx_path = "../../../examples/hub/onnx/cv/age_googlenet.onnx";std::string test_img_path = "../../../examples/lite/resources/test_lite_age_googlenet.jpg";std::string save_img_path = "../../../examples/logs/test_lite_age_googlenet.jpg";// 2. Test Specific Engine ONNXRuntimelite::onnxruntime::cv::face::attr::AgeGoogleNet *onnx_age_googlenet =new lite::onnxruntime::cv::face::attr::AgeGoogleNet(onnx_path);lite::types::Age age;cv::Mat img_bgr = cv::imread(test_img_path);onnx_age_googlenet->detect(img_bgr, age);if (age.flag)std::cout << "ONNXRuntime Version Detected Age: " << age.age << std::endl;delete onnx_age_googlenet;
#endif
}

可以看到源码中待检测图像的路径、模型权重文件路径以及输出路径都已经被写死。检测个人数据集最简单的方式有俩种,一个是修改源码中的中的指定文件的路径,然后再重新编译;另一个则是讲你的被检测的个人图像名修改成源码中的指定的图像名。

感觉不是很准确。

yolov8face 人脸检测

1.执行官方案例

# 人脸检测命令
./lite_yolov8face

结果保存到lite.ai.toolkit/examples/logs路径下:

2.检测个人数据集
test_lite_yolov8face.cpp 源码(onnxruntime相关部分):

#include "lite/lite.h"static void test_default()
{std::string onnx_path = "../../../examples/hub/onnx/cv/yoloface_8n.onnx";std::string test_img_path = "../../../examples/lite/resources/test_lite_face_detector_2.jpg";std::string save_img_path = "../../../examples/logs/test_lite_yolov8face.jpg";// 1. Test Default Engine ONNXRuntimelite::cv::face::detect::YOLOV8Face *yolov8_face = new lite::cv::face::detect::YOLOV8Face(onnx_path);std::vector<lite::types::Boxf> detected_boxes;cv::Mat img_bgr = cv::imread(test_img_path);yolov8_face->detect(img_bgr, detected_boxes);lite::utils::draw_boxes_inplace(img_bgr, detected_boxes);cv::imwrite(save_img_path, img_bgr);std::cout<<"face detect done!"<<std::endl;delete yolov8_face;}


总结

尽可能简单、详细的介绍Ubuntu 20.04环境配置lite.ai.toolkit工具箱的教程,以及简单讲解一些使用案例,后续会讲解lite.ai.toolkit工具箱的相关代码。

http://www.dtcms.com/a/498328.html

相关文章:

  • 网站开发与维护工资多少先做网站还是先域名备案
  • 全国企业信息查询网站程序员除了做软件是不是就做网站
  • 博罗网站建设公司怎么查注册公司的名字可不可以用
  • 舟山建站比较酷炫的企业网站
  • 小公司网站建设现状制作公司网站需要购买域名和服务器吗
  • 做外国人的生意哪家网站好哪些网站可以做企业推广
  • 南昌互联网网站开发广西建设官方网站
  • 企业网站建设网站优化设计师网站推荐家装
  • 做平面设计都在那个网站找免费素材广东建设工程执业资格注册中心网站
  • 做精神科网站wordpress 默认上传路径
  • 如何在自己网站做解析api深圳百度开户
  • 无锡高端网站建设咨询大丰市市城乡建设局网站
  • 泰安的网站建设公司哪家好夜月直播app下载视频
  • 江西旅游 网站建设深圳品牌女装排行榜前50名
  • 绍兴seo网站推广flask网站开发
  • 央企做的好的网站有了网站模板 还要怎样做
  • 优秀网页设计作品网站北京冬奥会网页设计
  • 食堂承包技术支持 东莞网站建设微信小程序商店怎么开
  • 做网站用框架么网页打不开但是有网
  • 长丰县重点工程建设管理局网站中国百强城市榜单公布
  • 网站访问速度慢的原因海口企业免费建站
  • 奇网企业网站管理系统手机网站建设网站
  • 企业年报信息公示流程郑州百度seo排名公司
  • 违法网站怎么做安全专业画册设计
  • 国外做化学申报的网站软文范例大全200字
  • iis默认网站停止wordpress 时间线插件
  • 汕头住房和城乡建设厅网站镇江市城市建设投资公司官方网站
  • 做新年公告图片的网站凡客诚品售后服务官方
  • 网站宣传的传统方式有哪些仿淘宝网站模板
  • 工体商城网站建设网页设计实验报告分析