Welcome to Archie Meng's Blog

Do you pine for the days when men were men and wrote their own device drivers?

announcement of the posting of Linux version 0.02

Waifu2x android,这才是我的“本科毕业设计” - 前言+SWIG篇

category: Waifu2x ncnn Vulkan Python SWIG C cmake binding FFI

archiemeng | Dec. 22, 2021, 1:05 p.m. | viewed: 805

Waifu2x android,这才是我的“本科毕业设计” - 前言+SWIG篇

Changelog

2021/12/27 对指针binding部分添加了C++部分的源码,更正了buffer interface带来的性能提升的说法,补充说明了Mat对应的Wrapper。

前言 (发牢骚,不想看的话可以跳过去

一切的开始

就是忽然觉得必须要写点什么。

一是因为今年初,成功将nihui的waifu2x-ncnn-vulkan的Python Binding做出来,积攒了一堆还未整理的笔记。(SWIG Binding里面的 要点还挺多的)然后,一直没整理发出来;

二是最近Waifu2x ncnn Android终于公开发布了,还是有些内容想要公开的,比如毕竟很多人不是很清楚怎么将ncnn部署到Android上,而且也没对应的demo(毕竟不能只是白嫖nihui的项目)也因此,想起我的Waifu2x Android企划其实早就在本科时候就有了,只不过过去了有些年头,一时间就忘记了。 早在2016年的时候,Waifu2x刚出来一会就听说了它。那时候使用的还是Waifu2x-caffe。所幸,当时我用的游戏本就是N卡的,可以用CUDA来算,所以体验还不错,同时也被结果惊到了。那是我第一次和Waifu2x接触。也因此,对机器学习产生了兴趣,去学了Coursera上面Andrew Ng的Machine Learning课,并期待之后能自研算法。

第一次尝试

回想起来,那个时候刚开始并没有部署到移动端的打算。只是因为有了跟着Gustav做数据分析的经验(实际并没有做啥深度的),想着复现校验SRCNN的内容,并自己训练一个模型出来玩玩。同时,因为我也快要毕业设计选题了,当时就想和导师提能不能让我做这个。结果被打了回去,说这种项目给读研的人做,你就做个什么水印管理系统就得了。(艹)于是,直到现在我还是对此非常怨念的。

......

Read More →