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

广州建设网站的公司网站注册了域名然后怎么做

广州建设网站的公司,网站注册了域名然后怎么做,手机版网站制作模板,做公司网站的南宁公司1. 简要回顾首先简单复述一下FFmpeg中对深度学习的支持情况#xff0c;如上图所示#xff0c;FFmpeg在libavfilter中支持基于深度学习的filter#xff0c;目前已经支持sr, derain和dnn_processing等filter#xff0c;其中#xff0c;dnn_processing是一个通用的filter如上图所示FFmpeg在libavfilter中支持基于深度学习的filter目前已经支持sr, derain和dnn_processing等filter其中dnn_processing是一个通用的filter涵盖了sr和derain的功能本文将要介绍的超分辨率(Super Resolution)功能也将使用dnn_processing来完成。为了实现模型推理功能FFmpeg提供了三种不同的方式(被称为后端backend)分别是native 后端、tensorflow后端和openvino后端。native后端的所有代码实现都在FFmpeg代码树中目前以C语言的形式存在可以跑在各种host端CPU上。tensorflow后端是指FFmpeg调用动态库libtensorflow.so进行模型加载和推理可以跑在x86 cpu、NV GPU等各类计算设备上。openvino后端是指FFmpeg调用动态库libinference_engine_c_api.so进行模型加载和推理可以跑在x86 cpu、Intel GPU等各类计算设备上。顺便提一下由于FFmpeg的要求不能调用C接口所以这些动态库都是提供C语言接口的库文件。另外在filter和后端之间设计了一个用来解耦的接口层DNN interface这样filter可以很方便的从这个后端切换到另外一个后端方便FFmpeg的开发者和用户无需修改代码只需简单修改参数即可无缝切换到不同的计算设备上。接下来将介绍如何使用tensorflow后端在NV GPU上加速Super Resolution以及如何使用OpenVINO后端在Intel GPU上加速Super Resolution。2. 资料准备Super Resolution最本质上就是对视频图片的放大在深度学习技术的加持下效果更好。我们采用ESPCN模型(Efficient Sub-Pixel Convolutional Neural Network model)这是论文地址https://arxiv.org/abs/1609.05158。这个模型的实现非常简洁用了4层依次是64个5x5的卷积层32个3x3的卷积层4个3x3的卷积层卷积层的参数都是same维持feature map尺寸不变最后一层是depth2space层将最后的4个feature map转换为长宽都乘以2的一张图片。所有的模型文件和测试码流都已经放在了https://github.com/guoyejun/dnn_processing/tree/master/sr1080p 可以直接下载。其中onemin960x540.mp4是时长1分钟960x540分辨率的一段码流用于输入测试espcn.pb是tensorflow格式的模型文件我们通过OpenVINO提供的格式转换工具将espcn.pb文件转换成OpenVINO的格式由于一些限制OpenVINO格式文件对输入图片的大小有具体的数值要求(这个限制可以在OpenVINO后端中解决但是尚未完成)所以我们将使用espcn1080p.bin和espcn1080p.xml模型文件来实现将输入的960x540分辨率的码流转换成1080p(1920x1080分辨率)的码流。要使用TensorFlow后端只需要下载onemin960x540.mp4和espcn.pb要使用OpenVINO后端则需要下载onemin960x540.mp4、espcn1080p.bin和espcn1080p.xml。3. 用NV GPU加速SR功能要用NV GPU软件库的调用关系是FFmpeg - TensorFlow - cuDNN - CUDA。其中的TensorFlow必须是提供C语言接口的库文件而通过pip install tensorflow命令安装的软件包里面并不包含c接口的库。为了得到c接口的库文件一种方法是我们从TensorFlow源代码开始编译出c接口库文件但是往往涉及到各种选项并不是一件容易的事情。另外就是使用TensorFlow的预编译好的c库文件下载其中的Linux(支持 GPU)版本。很不幸的是目前预编译的最新2.3 GPU版本存在问题而预编译中的上一版本则是1.15所以我们只能选择TensorFlow 1.15 GPU的c库文件 。选定TensorFlow 1.15后根据TensorFlow文档还需要在系统中安装配套的cuDNN7.4和CUDA10.0在原生系统中配置起来太麻烦我们就用docker image来完成使用NV给出的官方image。根据NV的release notes我们找到nvcr.io/nvidia/tensorflow:18.10-py2 是我们需要的image。所以后续操作如下所示。// 下载docker image$ docker pull nvcr.io/nvidia/tensorflow:18.10-py2// 进入container用了--rm选项退出的时候container会被自动删除$ nvidia-docker run --rm -it --shm-size1g --ulimit memlock-1 --ulimit stack67108864 nvcr.io/nvidia/tensorflow:18.10-py2// 以下操作都在container中进行// 在这个container中已经支持从python调用tensorflow但是没有c库所以还需要下载。# mkdir tfclib# cd tfclib/// 下载gpu版本压缩包。如果这里下载的是cpu版本的压缩包那么后续tensorflow会使用cpu进行推理。# wget https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz# tar zxvf libtensorflow-gpu-linux-x86_64-1.15.0.tar.gz# export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/workspace/tfclib/lib/// FFmpeg默认不支持TensorFlow后端必须从源代码重新编译# cd /workspace# git clone --depth1 https://git.ffmpeg.org/ffmpeg.git# cd ffmpeg/# mkdir build# cd build/// 准备依赖库# apt-get update# apt install nasm# ../configure --enable-libtensorflow --extra-cflags-I/workspace/tfclib/include --extra-ldflags-L/workspace/tfclib/lib# make// 下载测试资料# wget https://github.com/guoyejun/dnn_processing/raw/master/sr1080p/onemin960x540.mp4# wget https://github.com/guoyejun/dnn_processing/raw/master/sr1080p/espcn.pb// 运行测试// 这个时候我们在host端运行nvidia-smi会观察一些奇怪现象不知道最新版本是否已经修复。// 比如这么轻量级的模型竟然花了90%以上的显存我换成python直接运行也是如此。// 还有这么轻量级的模型第一次推理竟然花了十多分钟乃至数十分钟。第二次运行的一开始也等待了好久。// 运行结束后用ffplay等工具检查一下输出结果(即视频文件espcn.tf.gpu.mp4)是否符合预期# ./ffmpeg -i onemin960x540.mp4 -vf formatyuv420p,dnn_processingdnn_backendtensorflow:modelespcn.pb:inputx:outputy -y espcn.tf.gpu.mp4 -benchmark在有些系统中可能会插有多块NV显卡我们可以用下面的方法来指定使用其中的一块或者若干块显卡。首先要用下面的python脚本生成一串字符串import tensorflow as tf// 这里的参数0表示指定使用gpu0如果是1,2就表示使用gpu1和gpu2。// 需要说明的是这里的数字可能和nvidia-smi显示的序号不一致。gpu_options tf.GPUOptions(visible_device_list0)config tf.ConfigProto(gpu_optionsgpu_options)s config.SerializeToString()b .join(%02x % int(ord(b)) for b in s[::-1])print(0x%s % b)假如上述python脚本的输出是0x30012a0332那么指定使用gpu0的FFmpeg命令行如下所示将这个字符串作为dnn_procesing的参数传递进去。# ./ffmpeg -i onemin960x540.mp4 -vf formatyuv420p,dnn_processingdnn_backendtensorflow:modelespcn.pb:inputx:outputy:optionssess_config0x30012a0332 -y espcn.tf.gpu.mp4 -benchmark4. 用Intel GPU加速SR功能要用Intel GPU目前的软件库的调用关系是FFmpeg - OpenVINO - clDNN - OpenCL。在host系统中这些软件库都用最新版本是可以从源代码编译出来的而且默认情况下OpenVINO的c库也会被编译出来。但是我们还是使用更加简洁的docker image方案。在https://hub.docker.com/r/openvino/ 可以看到OpenVINO官方给出的image。由于dev image中没有安装git所以在docker run的时候要加上-u root以获得apt-get install git的权限。在container中从FFmpeg源代码开始的过程和上一小节非常类似只需要将TensorFlow相关的设置修改为OpenVINO相关的设置即可。所以我们在这里换一种方法将这些过程写到Docker文件中。首先创建一个文件文件名为DockerFile内容如下所示主要是在openvino/ubuntu18_dev:2021.1的基础上增加FFmpeg软件包。From openvino/ubuntu18_dev:2021.1USER 0RUN apt-get updateRUN apt-get install -y git nasm wgetWORKDIR /workspaceENV LD_LIBRARY_PATH$LD_LIBRARY_PATH:/opt/intel/openvino/inference_engine/lib/intel64:/opt/intel/openvino/inference_engine/external/tbb/lib:/opt/intel/openvino/deployment_tools/ngraph/libRUN git clone --depth1 https://github.com/FFmpeg/FFmpeg ffmpeg \ cd ffmpeg \ ./configure \ --extra-cflags-I/opt/intel/openvino_2021/inference_engine/include/ \ --extra-ldflags-L/opt/intel/openvino_2021/inference_engine/lib/intel64 \ --enable-libopenvino \ make -j $(nproc) \ make installRUN wget https://github.com/guoyejun/dnn_processing/raw/master/sr1080p/onemin960x540.mp4 \ wget https://github.com/guoyejun/dnn_processing/raw/master/sr1080p/espcn1080p.bin \ wget https://github.com/guoyejun/dnn_processing/raw/master/sr1080p/espcn1080p.xml然后运行以下命令// 在DockerFile所在的目录创建image$ docker build --networkhost $(env | grep -E _(proxy|REPO|VER) | sed s/^/--build-arg /) -t openvino_ffmpeg .// 上一步得到的image支持CPU、GPU等多个计算设备下面的命令参数使得container只支持GPU,// 为什么需要device参数这是为了OpenCL驱动在container中使用的。$ docker run -it --rm --device /dev/dri:/dev/dri openvino_ffmpeg:latest// 下条命令在container中进行// 运行结束后用ffplay等工具检查一下输出结果(即视频文件espcn.ov.gpu.mp4)是否符合预期rootb31ec026f1dc:/workspace# ffmpeg -i onemin960x540.mp4 -vf formatyuv420p,dnn_processingdnn_backendopenvino:modelespcn1080p.xml:inputx:outputespcn/prediction:optionsdeviceGPU -y espcn.ov.gpu.mp4 -benchmark以上内容是本人业余时间兴趣之作限于水平差错难免仅代表个人观点和本人任职公司无关。
http://www.zqtcl.cn/news/758960/

相关文章:

  • 贵州做网站怎么推广vs2012 做网站教程
  • 完全菜鸟七天学会建网站网络营销的四大基础理论
  • 东莞网站优化案例网站职业技术培训学校
  • 银川网站建设公司电话公司在百度做网站找谁
  • 交换链接适用于哪些网站网络规划与设计的目的
  • 网站做标签寺院网站模板
  • 高端h5网站柳州建站
  • 百度商桥网站郑州有做网站的公司没
  • 做专业网站济南品牌网站建设低价
  • 网站制作客户寻找数据中台厂商
  • 免费找图片素材的网站西安企业seo
  • 网站建设 名词解释国内网站建设建设
  • 文山州建设局网站域名查询seo
  • php网站模块修改太原小店区最新消息今天
  • 苏州网站优化公司seo服务合同
  • vip影视网站怎么做的辽宁建设厅网站什么时候换的
  • 搭建个网站网站维护合同模板
  • 优盖网logo在线设计南通做网站优化的公司
  • 做百度糯米网站的团队新媒体营销推广公司
  • 个人做网站的时代已经过去大连男科医院排名表
  • 天津餐饮网站建设贵港做网站化司
  • 昆山哪家做网站好猪八戒网站建设
  • 网站的静态资源服务器怎么做河北网站备案
  • php儿童摄影网站源码东莞做网站的公司哪家最好
  • 金融投资网站建设wordpress九宫格主题
  • 玉田县网站建设手机网站建设西安
  • 高质量外链网站请大学生做网站
  • 2021能看的网站不要app贴吧网站以前在百度能搜索不到了
  • 个人做网站时不要做什么样的网站百度网站排名全掉
  • 鹤岗做网站制作企业网站需要注意的事项