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

网站IcP在哪查教你如何在wordpress中设置cookie

网站IcP在哪查,教你如何在wordpress中设置cookie,建设工程信息服务平台新网站,海盐网站建设1.前言 在我们进行实际的应用开发时,都会随着对一款产品或者AI芯片的了解加深,大家都会想到有什么可以加速预处理啊或者后处理的手段?常见的不同厂家对于应用开发的时候,都会提供一个硬件解码和硬件编码的能力,这也是抛…

1.前言

        在我们进行实际的应用开发时,都会随着对一款产品或者AI芯片的了解加深,大家都会想到有什么可以加速预处理啊或者后处理的手段?常见的不同厂家对于应用开发的时候,都会提供一个硬件解码和硬件编码的能力,这也是抛弃了传统的opencv或者pl等在cpu上话费多的时间进行视频解码和编码,而对于昇腾产品,310一系列产品来说,他也会有自己的数据媒体处理单元,如下图所示:参考学习链接:

昇腾社区-官网丨昇腾万里 让智能无所不及

        

硬件产品结构示意图,内置的有dvpp模块用于数据预处理,AI core用于矩阵、向量等计算;不会占用cpu的资源,刚了解昇腾框架的伙伴可能会用下面的开发顺序进行编写代码:

(1)首先输入视频源的选择:rtsp流、视频、图片等

(2)直接使用opencv的api进行读取,也就是解码,其实opencv读取视频还是蛮快的,读取rtsp确实有一些慢,而且还占用cpu的资源,

(3)使用opencv解码出来之后的图片是,bgr,uint8,NHWC格式的图片,对于不同的模型输入,需要进行转换为模型需要的输入,比如resize缩放图片指定大小,数据格式转换从uint8 到float32 16\以及通道的变换,这一步也是大家的预处理。

(4)送入模型进行推理,大家可以做int8量化之类的操作

(5)模型后处理,对输出的数据进行筛选,获取最终的目标。

(6)opencv直接显示或者数据编码使用ffmpeg或者其他工具进行推流

以下是使用ACL我在整个端到端应用开发时总结的比较优选方案:

(1)使用dvpp进行rtsp和视频的解码,dvpp解码之后的数据为yuv420sp,是在device中的数据,无需内存拷贝,这个过程是将h264/h265的码流解码为yuv的数据,这一过程会在npu硬件执行,但是底层的实现是先通过ffmpeg进行解封装,再进行dvpp解码,内部实现了多线程:参考样例如下:

cplusplus/level2_simple_inference/2_object_detection/YOLOV3_coco_detection_video_DVPP_with_AIPP/src/sample_process.cpp · Ascend/samples - Gitee.com

g_cap_ = new AclLiteVideoProc(g_streamName_);stream是视频路径或者rtsp
ImageData testPic;
AclLiteError ret = g_cap_->Read(testPic);

将解码数据传送到testpic结构体中:

这个ImageDATA 结构体如下:

struct ImageData {acldvppPixelFormat format;uint32_t width = 0;uint32_t height = 0;uint32_t alignWidth = 0;uint32_t alignHeight = 0;uint32_t size = 0;std::shared_ptr<uint8_t> data = nullptr;
};

(2)解码之后通过VPC进行图像缩放,由于dvpp解码之后的数据为YUV格式,所以模型转换的时候需要配合aipp,将模型的输入改为yuv输入与模型对齐。

        ImageData resizedImage;ret = g_dvpp_.Resize(resizedImage, testPic, g_modelInputWidth, g_modelInputHeight);

(3)将数据直接存入模型中进行推理:

(4)模型的后处理,怎么和原图进行画框,可以将原始的yuv图片转换为opencv的图片进行画框,或者使用frretype直接在yuv上进行画框,参考案例如下:

方法一:将device的原图拷贝到cpu测转换为cv::mat类型进行画框:

        ImageData yuvImage;ret = CopyImageToLocal(yuvImage, testPic, g_runMode_);if (ret == ACLLITE_ERROR) {ACLLITE_LOG_ERROR("Copy image to host failed");return ACLLITE_ERROR;}cv::Mat yuvimg(yuvImage.height * 3 / 2, yuvImage.width, CV_8UC1, yuvImage.data.get());cv::Mat origImage;cv::cvtColor(yuvimg, origImage, CV_YUV2BGR_NV12);

方法二;直接在yuv上进行绘制目标框图:参考案例如下:

samples: CANN Samples - Gitee.com

(5)将画框后的数据硬件编码为h264文件用于ffmpeg进行推流,编码代码流程参考案例:

samples: CANN Samples - Gitee.com

由于ACL仅支持编码yuv的图片到h264/265所以建议大家可以使用第二种方法进行编码,不需要再次使用ffmpeg进行软件编码,大大可以节约时间。

整个流程可以在原来的软件编码情况下快1.5倍左右。关于ffmpeg推流可以加我学习群或者网上找一些简单的源码推流工具,如果大家有兴趣可以加入a群:855986726

下一章我们继续讲解如何进行多模型串联推理,

http://www.yayakq.cn/news/600267/

相关文章:

  • 网站建设hengfengera英文网站设计
  • 西红门做网站描述网站建设的基本流程图
  • 杭州做外贸网站西安seo优化公司
  • 浙江网站seo珠海网站建设找哪家好
  • 芜湖做网站优化dw网站模板下载
  • 电商网站h5模板下载网站开发需要哪些基础技术
  • 太谷县建设局网站刷关键词要刷大词吗
  • 国家重大建设项目库网站做网站是比特币的
  • 网站网站制作价格建站网站网站分析百度 代码
  • 啥是东莞网站优化推广合肥那个公司做网站优化好
  • 百度站长平台清退竞价推广怎么做
  • 高校支付网站建设费需要入无形资产与建设通相关的网站
  • 做网站需要向客户了解什么pc端软件开发
  • 高校网站建设需求分析报告中国制造网一级类目
  • 双域名网站沈阳祥云医院看男科怎么样
  • 深圳做网站比较好天涯沈阳网站制作招聘网
  • 如何建设公司网站 需要注意什么腾讯云如何建设网站
  • 国外建设网站首页微网站开发流程图
  • 网站建设需要什么条件网络销售怎么做才能有业务
  • 网站后台管理系统素材手机在线网页制作
  • 贸易公司网站建设要多少钱沧浪手机网站建设方案
  • 网站 固定ip如何建电子商务网站
  • 怎么做卖辅助网站网络营销推广的渠道是什么
  • 东莞网站优化专家怎么查一个网站的外链
  • 网站主机和空间浙江网站搭建
  • 让人做网站需要准备什么软件小学学校网站
  • 东莞市建设监督网站网上注册公司的章程怎么下载出来
  • 网站平台建设目标网站关键词可以修改吗
  • 四川细胞库网站建设WordPress 发表文章api
  • 什么样的网站好优化制作公司网站