摘要:随着人工智能技术发展,AI已经能够为黑白的老视频 “上色”,重现昔日的情景,让黑白图像变得栩栩如生。

怎么样,是不是看起来题目跟昨天的博客名称差不多?昨天是图片,今天是视频。从道理上说,将视频中的图像一一抓取,上色,合起来就是视频了。。。(我猜原理就是这样的)

所以,让我们把18.04的quick-start的demo折腾完吧。这次是根据 https://gitee.com/lovingascend/quick_start/blob/master/Atlas200DK_separate_MD/video_sample.md ,将视频给上色了。

闲话少说,我们按照说明来,使用”开发环境交叉编译第三方库,再将第三方库导入运行环境,提供运行调用“的方法。

先在虚拟机环境装presentagent:

然后依次照做:

bash configure

make -j8(编译的时间会有点长。。。)

sudo make install

下面编译arm版本的so,为迁移到开发板做准备:

make distclean

./configure --build=x86_64-linux-gnu --host=aarch64-linux-gnu --with-protoc=protoc

make -j8(耐心地等编译结束。。。)

sudo make install

下面到运行环境同步刚才编译好的第三方库:

注意这里手册有个bug:(scp需要加上一层arm目录),否则会找不到文件:scp $HOME/ascend_ddk/arm/lib/libpresenteragent.so HwHiAiUser@192.168.1.2:/home/HwHiAiUser

然后登录开发板,再拷贝so文件:

我们再做最后的一步,获取视频项目:

回到虚拟机的开发环境:

unzip colorization_video.zip 解压

建好目录,下载模型和权重文件:(好像跟上次是一样的)

回到MindStudio.关闭原来的工程并打开新下载的工程:

下面的步骤跟上次图片上色的那个基本是一致的:转换模型,加载模型到项目中,编译,运行。。。

个人感觉模型转换可以省略,因为图片上色的时候已经做过了。这次仅仅选择了加载。

检查下虚拟网卡的地址 192.168.1.223

以及 script/presentserver/display/config/config.conf中的presenter_server_ip 是否对应:

没问题。

再检查 src/colorize_process.cpp 106行地址是否跟前面对应:

也没问题。

修改编译参数(每次手册都说要该centos7.6,其实这倒是缺省的。倒是Target Architecture每次都要改成aarch64.手册每次都不说。只好笔者帮你说了。。。

点击Build。。。会生成build和out文件夹:

启动colorization-video应用的Presenter Server主程序:

居然报错了!!

看来这里还不能完全按照手册来,因为前面虽然都是按照手册装的,但是系统内分布了多个python版本,有apt-get安装的python3,也有用源码编译的python3.7.5.那么既然前面用的都是3.7.5.,那么这里的命令就应该改为:

python3.7.5 script/presenterserver/presenter_server.py --app=display & (手工加粗加红)

可以切换到 MindStudio Run一下了:先配置:

apply, ok后,再运行:

好像缺个动态库 libascendcl.so

经 @Jokey 大大的指点,

去开发板后台检查文件:

有这个文件,而且LD_LIBRARY_PATH也指向了这个so所在的目录:

另外,到开发板的工程out目录下,手工执行,好像是可以执行完毕的:

本来想修改下run.sh,在前面增加LD_LIBRARY_PATH变量。

结果发现,每次修改,都会被run程序将后台还原成一行的run.sh

这个就需要专家来回答了。暂时不管。。。(以后管。。。)

那我们看看在运行的时候,presenter_server怎么样?

在虚拟机打开浏览器:http://127.0.0.1:7009

可以看到有一路视频,点击view的名称,会弹出view的窗口,在run.sh执行的过程中,这里会有变化,截几个屏:

从视频效果来看,应该还是较为流畅的。fps=14.

我把原始视频和上色后的视频都传上来了。有兴趣的童鞋可以看下效果。剩下那个运行的问题,就等着专家来解决了。。。

另外,笔者去腾讯视频拍了一段 卓别林《摩登时代》的1分钟视频(参见附件),将其传入开发板的data目录:

然后run的参数再改成这个mp4的名称:

最后看到的效果如下:

转换好的视频(只录了一点点,因为太慢了影响我的感受,就没录完。。。)也上传到附件。

从转换的结果可以看出,fps=8.感觉有点慢。可能是200DK的推理能力还没这么快,也许300i可以快一点。。。

附上历史折腾清单:

华为Atlas 200DK初体验——写在昇腾新品发布的第二天 https://bbs.huaweicloud.com/blogs/193847

Atlas 200DK系统折腾纪实:(1)论图片及18.04.1的诞生 https://bbs.huaweicloud.com/blogs/194291

Atlas 200DK系统折腾纪实:(2)视频的诞生 https://bbs.huaweicloud.com/blogs/194641

Atlas 200DK系统折腾纪实:(3)强大的yolo3物体检测——你想看的内容已被系统提取 https://bbs.huaweicloud.com/blogs/194816

Atlas 200DK系统折腾纪实:(4)18.04.1的软件安装及双系统切换验证 https://bbs.huaweicloud.com/blogs/195227

Atlas 200DK系统折腾纪实:(5)Atlas让黑白照片原彩重现 https://bbs.huaweicloud.com/blogs/195391

(全文完,谢谢阅读,本文中的问题看看下次能不能解决。。)

点击关注,第一时间了解华为云新鲜技术~

超酷! Atlas给黑白视频“上色”的更多相关文章

  1. android实现超酷的腾讯视频首页和垂直水平网格瀑布流一揽子效果

    代码地址如下:http://www.demodashi.com/demo/13381.html 先来一波demo截图 实现ListView.GridView.瀑布流 1.导入RecyclerView的 ...

  2. C#完成超酷的图像效果 (附demo)

    如果您觉得C#制作的艺术字比较好玩, 但是还觉得没看够,不过瘾,那么我今天就让您一饱眼福, 看看C#如何制作的效果超酷的图像. (注: 我之前曾写过类似的文章, 但没有原理说明, 代码注释不够详细, ...

  3. 分享9款最新超酷HTML5/CSS3应用插件

    新的一周开始了,小编继续要为大家分享实用超酷的HTML5应用,今天分享的这9款最新HTML5/CSS3应用你一定会很喜欢,一起来看看. 1.HTML5 Canvas模拟衣服撕扯动画 超级逼真 今天又要 ...

  4. 超酷的实时颜色数据跟踪javascript类库 - Tracking.js

    来源:GBin1.com 今天介绍这款超棒的Javascript类库是 - Tracking.js,它能够独立不依赖第三方类库帮助开发人员动态跟踪摄像头输出相关数据. 这些数据包括了颜色或者是人, 这 ...

  5. jQuery超酷下拉插件6种效果演示

    原始的下拉框很丑啦, 给大家一款jQuery超酷下拉插件6种效果 效果预览 下载地址 实例代码 <div class="container"> <section ...

  6. 超酷HTML5 Canvas图表应用Chart.js自定义提示折线图

    超酷HTML5 Canvas图表应用Chart.js自定义提示折线图 效果预览 实例代码 <div class="htmleaf-container"> <div ...

  7. 10个你必须掌握的超酷VI命令技巧

    摘要:大部分Linux开发者对vi命令相当熟悉,可是遗憾的是,大部分开发者都只能掌握一些最常用的Linux vi命令,下面介绍的10个vi命令虽然很多不为人知,但是在实际应用中又能让你大大提高效率. ...

  8. 使用Javascript来创建一个响应式的超酷360度全景图片查看幻灯效果

    360度的全景图片效果常常可以用到给客户做产品展示,今天这里我们推荐一个非常不错的来自Robert Pataki的360全景幻灯实现教程,这里教程中将使用javascript来打造一个超酷的全景幻灯实 ...

  9. 基于Bootstrap的超酷jQuery开关按钮插件

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAA2CAIAAAC0tsfoAAAB/0lEQVR4nO3bQWrCQBTGcc/mbVz0DD

  10. 8款超酷的HTML5 3D图片动画源码

    1.HTML5移动端图片左右切换动画 今天要给大家分享一款很不错的图片左右切换焦点图动画,并且支持移动端触摸滑动.功能上,这款HTML5图片播放器支持鼠标滑动.手机端触摸滑动以及自动播放.外观上,这款 ...

随机推荐

  1. ApiPost发送请求报错UT000036: Connection terminated parsing multipart data

    发送请求报错Caused by: java.io.IOException: UT000036: Connection terminated parsing multipart data 这个报错是因为 ...

  2. FFMPEG+SDL简单视频播放器——人脸检测

    前言 最近突发奇想,给播放器加上一个人脸检测的功能(事情似乎朝着奇怪的方向发展了,谁家的播放器会需要去检测人脸啊!),主要的目的是为了学习opencv,尝试将ffmpeg和opencv融合在一起使用. ...

  3. Frog 3 题解

    Frog 3 题目大意 题意都这么明确了还要这个干什么. 存在 \(n\) 个点,每个点有一个属性 \(h_i\),\(h_i\) 单增,从点 \(i\) 移动到点 \(j(j>i)\) 的代价 ...

  4. 安信可开发环境构建-基于Ai-WB2系列 和 Ai-M61 或 Ai-M62 (环境上下文切换)

    首先,对于Ai-WB2系列环境的构建官方文档已经讲的非常明白了,这里不做阐述如下链接所示https://blog.csdn.net/Boantong_/article/details/12848091 ...

  5. 用go封装一下临时token

    用go封装一下临时token 本篇为用go设计开发一个自己的轻量级登录库/框架吧的临时token篇,会讲讲临时token的实现,给库/框架增加新的功能. Github:https://github.c ...

  6. 字符串表达式计算(a+b/(a-b))的思路与实践

    前言 为满足业务需要,需要为项目中自定义模板添加一个计算字段的组件,通过设置字符串表达式,使用时在改变表达式其中一个字段的数据时,自动计算另外一个字段的值. 本篇为上篇,介绍原理,简单实现一个工具,输 ...

  7. Redis7新特性简介及十大数据类型

    Redis是基于内存的K-V键值对内存数据库 浅谈Redis7新特性 主要是自身底层性能和资源利用率上的提高和优化. 多AOF文件支持 config命令增强 限制客户端内存使用 listpack紧凑列 ...

  8. 一文讲透DevOps理论体系的演进

    一.前言 当前,我国处于以信息化.数字化.网络化.智能化为特征的科技变革浪潮中,企业数字化转型大势所趋,那么作为支撑企业IT运转的运营体系也在向多元方向发展,比如DevOps(研发运营一体化).AIO ...

  9. Ubuntu 编辑文件、安装、删除软件等常用命令(持续更新)

    一.编辑文件 1. sudo vi 文件名,进入文件页面,如图: 2. 按 i 键或者 o 键,进入编辑,左下角出现---------INSERT---------信息 3. 输入完毕后,按ESC退出 ...

  10. SNN_文献阅读_Text Classification in Memristor-based Spiking Neural Networks

    SNN中局部学习和非局部学习,基于梯度的规则都需要对用于表示单个连续值的脉冲训练窗口上的累积误差进行平均,这种方法在更新权重时考虑了每一个脉冲的影响.在计算速度和空间效率等方面,特别是当代表单个数值的 ...