被问到有没有内核开发经验_一个人就是一个开发团队!成电硬核毕业生自制迷你电脑走红!...

ee4ec1ac1c903368f743beceace5bd48.png

△小视频

近日,一段长3分多钟的小视频在B站突然爆红,不仅登上首页,获得超过200万的播放量,还被众多观众“膜拜”。有网友在评论区说:“其实这些东西吧,外行看起来很牛,但我这种内行看起来,还是很牛!”

打造这个AI小电视的超硬核UP主“稚晖君”本名彭志辉,是本硕均就读于电子科大的2018届毕业生,现为一名AI算法工程师。

932cfed7b2d47b5c19c64c8b8e38dc1d.png从草图到成品,全都自己做!这台AI小电视事实上是一台迷你小电脑。它不仅可以当语音助手,还能处理实时图像,甚至能当Web服务器……彭志辉自称“野生钢铁侠”,这台迷你电脑就像Tony Stark在山洞里打造钢铁侠战衣原型一样,从草图到成品,都是彭志辉自己动手完成的。“当小电脑成功开机的时候,真有一种钢铁侠冲出山洞的感觉。”彭志辉笑着告诉小编。在这个3分多钟的视频里,彭志辉快速展示了他历时3个月,打造这个迷你电脑的大致过程。先在纸上画草图。有了草图,第一步是制作电路板:用Altium Designer绘制PCB板,而是非常复杂的6层DDR高速板!设计完找厂家打样PCB和制造钢网,然后给PCB刷上焊锡膏,把芯片、电阻、电容等器件一个个贴上去,热风枪加热完成回流焊,电路板就大功告成啦!79c1dad18a79267415612e71f9cffb1e.png至于外壳,彭志辉用Rhinoceros绘制迷你电脑外壳的3D模型,再用自己的3D打印机打印出来,然后利用雕刻机用亚克力制作面板。加上买到的小巧液晶屏幕,迷你电脑的硬件部分制作完成啦!硬件部分的制作仅仅只是一个开始,接下来才是让人感到“头秃”的软件开发环节。由于这是一块自己独立开发的电脑主板,彭志辉需要从底层开发软件,包括uboot/kernel配置、设备驱动、应用层App开发、算法模型部署等,都是他用C/C++/Python/JAVA/Shell一行行敲出的代码。336a838423dcefc518430b569acf0c13.png最终,内核剪裁移植完成,彭志辉给迷你电脑装上了Linux的Xfce桌面环境,如果不介意屏幕太小,连接鼠标操作是没有问题的,当然也能在远程电脑主机上通过VNC、RDP远程访问控制迷你电脑。有了Linux,再把TensorFlow装上去,接上USB-Type C扩展的摄像头实现图像识别,又或是利用内置的麦克风实现语音识别,还能把迷你电脑当成自己博客的web服务器。d38cc1209eb7ba4b5b7bef43481658ef.png03496da138d9fa2a50431eaf6947677b.png去隔壁学院蹭工具,还“蹭”到了女朋友!彭志辉本科和研究生分别就读于生命科学与技术学院和信息与通信工程学院。读书时,他参加了各类比赛,获得从校级到国际级大大小小将近40个奖项,且大部分是一等奖。回忆起在成电的学习时光,彭志辉表示:“7年的大学时光,我在母校还是有很多难忘的事情。比如我在学校的时候是著名的‘电赛狂魔’,本科期间基本上只要有比赛我就会参加(当然啦那时候我还很菜)。由于本科的时候咱们生命学院还没有成立科协,当时的微固学院跟我们很近,所以那时候经常‘厚脸皮’去那边的科协蹭工具,后来‘蹭’到一个女朋友。”在成电七年的时间里,让彭志辉的知识、能力、视野得到了很大提升。以这次的迷你为例,据彭志辉自己不完全统计,用到了电子基础、电子元器件选型、电路原理图设计、高速电路PCB设计、电子元器件焊接技术、电路板调试、启动程序UBOOT裁剪移植、linux内核裁剪移植、文件系统、底层驱动程序(C语言,ARM架构汇编,linux内核架构)、上层应用程序(C++、Qt、JAVA、Python等,深度学习,机器学习,OpenCV,神经网络,自然语言处理)、静态博客服务器搭建、高等数学、线性代数、概率论、离散数学、3D建模、3D打印、雕刻机、视频拍摄后期制作、防脱发技术(划重点!!)等几十种技能。63d5a3069ee0b1ac0ac7a645b6dce6b1.png“在母校的几年学习经历成就了现在的我”,彭志辉说道,“我觉得最大的收获就是学会了自我管理,不论是学习方面还是生活方面。知识的积累当然很重要,但是我觉得相比于学校授之以我们的‘鱼’,能够系统、高效地学习更多知识的能力才是大学里更应该学习掌握的。另外,成电给了我们一个很好的环境,在这里只要你有想法、够努力,都能获取到你想要的资源和平台。”不断学习:热爱与方法都很重要问到兴趣爱好方面,彭志辉表示他兴趣点非常多,喜欢弹吉他喜欢摄影,喜欢打乒乓球(甚至为此造了一个陪他打球的机器人);而且虽然目前主业是做深度学习算法方向偏软件,但是他业余时间最大的乐趣就是宅在家里折腾硬件。△短视频:彭志辉制作的独轮机器人△短视频:彭志辉制作的智能语音助手对于迷你电脑这个项目的起因,彭志辉表示也是由于不满意于目前市面上能买到的小型个人服务器,所以就自己动手DIY了一个。另外一个原因是,他个人比较喜欢在积累了一定程度的新知识和技能之后,构思一个项目把这些知识都用上并呈现出来。“一方面通过这种方式可以及时巩固学习效果,另一方面‘学以致用’才是个人技术进步的永恒归宿。”参加工作后,彭志辉也坚持学习新的知识,丰富自身知识体系。他说:“未来是终身学习的时代,不存在大学毕业之后就不学习了。做技术一定不要只关注自己眼前的一亩三分地,否则很难有好果子吃,比如拿嵌入式开发来说,除了传统的嵌入式软件技术,还可以去学RTOS,去学RISC-V,去学异构……”彭志辉也在提升自我的过程中探索适合自己的学习方法,“有一种学习方法叫Problem-Based learning”,他解释说,“就是以问题为导向的学习,通过自学寻找解决问题的方法和问题的答案,这种方法属于自顶向下的路线;而我们在学校的基础和专业课程中逐渐构建知识体系则是属于自底向上。两种方式可以同时尝试,找到适合你的汇合点。”当工作就是自己的兴趣爱好时,彭志辉认为自己是幸运的:“我心中的理想工作状态就是:工作是源于自己的意愿,每天做自己喜欢的事情并不断积累经验,在适当的压力下积极创新,收获自身成长的同时收获报酬。简单来说,就是当个人爱好、公司价值、与时代趋势相统一。我认为目前正在朝着这个方向努力,虽然还有很多东西要学习。”59ac98a3b2f33783070d5424321ad6c7.png作为一名从硬件转到算法的工程师,其中的缘由彭志辉解释说:“当工程能力达到一定程度,就会为了解决工程问题去学习算法。写代码是将先进生产力落地于现实应用的最快捷的方式之一。而算法,就是代码的灵魂。”彭志辉自诩“野生钢铁侠”,但他憧憬的并非是电影里的钢铁侠,而是钢铁侠在现实世界的原型Elon Mask。“我希望能成为像他一样的怀揣着冒险精神做自己认为正确的事情的人,既争朝夕,也争未来。”1035e80b301bce8ec2db5d83e247f2dc.pnge42278a2a9c5a8f8ca9a3226c348c754.png

文:校新闻中心 卿晗

学生记者团 张羽扬

部分内容来源于微信公众号“量子位”

推荐阅读


◇@贵州大学,我们都是收信人!好青年,共担当!

◇电子科技大学2020年硕士研究生招生复试基本分数线公布!

◇重要!2020年研考国家线和复试安排公布!

◇想念成电,就把家里的春天寄给TA!

◇静待再相逢|这里有我们寒假离校前的成电记忆

◇这门漂洋过海的网课,让留学生们刷爆“玫瑰”!

d4042f7b3698246d00f540ffb7d0ca8c.png

c9770c34162dbdbe415a2b74d9e443b1.png你点的每个赞,我都认真当成了喜欢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/365623.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab2010a连接mysql_MATLAB2010a+OpenCV2.3.1+VS2010运行TLD

出现matlab不显示C编译器的原因主要还是当前Matlab版本相对于VS来说不够新,比如14版的肯定支持10的VS。 本文引用地址: http://blog.csdn.net/shanpohe/article/details/7596401 http://blog.sina.com.cn/s/blog_adfd55190101ejvr.html TLD(Tracking Lea…

更改span标签样式_CSS 内嵌样式

前面一节我们讲了行内样式,但是行内样式的缺点就是样式不能重用。例如当有好多个 标签,我们希望所有的 标签的样式都一致,那么需要在每个标签中都写一遍,这么会很麻烦,也会增加很多代码。那么为了解决这个问题&#…

mysql 6安装当前密码_MySQL8.0 安装踩坑指南

就在昨天上午,刚为云服务器安装好Apache2.4.33和PHP7.2.4环境,准备再来一个最新的MySQL5.7.22。寻找5.7版本的rpm包时下到mysql80xxx.rpm,看人家的教程是mysql57,难道80是MySQL出出…出了8版,一搜新闻2个小时前MySQL发…

Elasticsearch环境搭建和介绍(Windows)

一、Elasticsearch介绍和安装 1.1 介绍 Elastic Elastic官网:https://www.elastic.co/cn/ Elastic有一条完整的产品线:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。 Elasticsearch Elasticsearch官网&#xff1…

Jar Hell变得轻松–用jHades揭秘classpath

Java开发人员将不得不面对的最困难的问题是类路径错误: ClassNotFoundException , NoClassDefFoundError ,Jar Hell, Xerces Hell和company。 在本文中,我们将探究这些问题的根本原因,并了解最小的工具&am…

程序控制发送文件到邮箱_Kindle电子邮箱推送

Kindle 推送支持的格式目前 Kindle 推送仅支持以下几种格式。需要注意的是,AZW 和 AZW3 是两种不同的格式,虽然这两种格式 Kindle 设备都支持阅读,但是亚马逊的个人文档服务支持推送 AZW 但是不支持 AZW3。Kindle 格式 (.mobi 或 .azw) * 推荐…

mysql的英文字母_MySQL中查询的有关英文字母大小写问题的分析

mysql数据库在做查询时候,有时候是英文字母大小写敏感的,有时候又不是的,主要是由mysql的字符校验规则的设置决定的,通常默认是不支持的大小写字母敏感的。1. 什么是字符集和校验规则?字符集是一套符号和编码。校对规则…

写接口给别人调用 推送数据到我们_我们写了一个超好用的抖音矩阵数据管理工具...

我最近跑了十来个抖音号,遇到一些问题,然后通过我们NB的程序员解决了。如果你也在做抖音矩阵,那这些问题你肯定也会遇到,所以我把解决问题的方法工具化了,给大家用。我遇到的最大的问题,就是账号数据的同步…

angular 拼接html 事件无效

主要是要引用$compile方法 更多专业前端知识,请上 【猿2048】www.mk2048.com

更好地利用Pmd,Findbugs和CheckStyle的结果。

我们可以列举许多Java静态分析工具,每种工具都专注于特定领域并具有其优势,我们可以列举一下: Pmd是基于静态规则集的Java源代码分析器,它识别潜在的问题,例如: 可能的错误-空的try / catch / finally / s…

Java基础知识(数据类型和集合)

一、数据类型 包装类型 包装类型是对基本数据类型不足之处的补充。 基本数据类型的传递方式是值传递,而包装类型是引用传递,同时提供了很多数据类型间转换的方法。 Java1.5 以后可以自动装箱和拆箱 二、集合 List:有序、可重复。可以通过索引…

mfc使用cef源代码实现_如何获得微信小游戏跳一跳源码以及源代码组合包括哪些...

很多小游戏都是由源代码编写而成的,那大家知道源代码组合包括哪些吗?手机游戏源代码怎么使用的呢?还有,如何获得微信小游戏跳一跳源码?下面就由奇瑰网小编带大家来了解一下相关的内容吧。   源代码组合包括哪些   源代码作为软件的特殊部分&#…

机器学习过程中欠拟合和过拟合的诊断及解决方法

1.Diagnosing bias vs. variance 2.Regularization and bias/variance 3.Learning curves 4.Deciding what to try next 转载于:https://www.cnblogs.com/CoolJayson/p/9704385.html

angularJS解决数据显示闪一下的问题?-解决办法

转自:https://www.cnblogs.com/e0yu/p/7219930.html?utm_sourceitdadao&utm_mediumreferral#undefined 使用 angular JS 的时候,把 angularJS 放到文件底部,在渲染页面的时候,会出现闪一下的情况: 解决办法一&a…

定时运行python脚本并发送邮件_python实现定时发送邮件到指定邮箱

本文实例为大家分享了python实现定时发送邮件到指定邮箱的具体代码,供大家参考,具体内容如下整个链路:传感器采集端采集数据,边缘端上传数据库,从数据库拿到数据。产品端有个自动出报告的需求,并且希望自动…

php异常处理机制

转自:https://www.cnblogs.com/water0729/p/5802476.html php异常我们常接触到的就是error错误码1,warning错误码2,notice错误码8这三类。出现error了系统是挂掉了,但是warning和notice是我们可以捕捉并处理的 php配置项display_e…

IDEA中使用Maven

Maven的安装与使用 安装 1、下载,官网下载。 2、解压,存放路径中不可包含空格和中文。如:"E:\dev\workspace\maven\apache-maven-3.6.0" 3、配置本地仓库,进入 "conf/settings.xml" 中,在 setting…

python用turtle画彩虹_Python利用turtle库绘制彩虹代码示例

语言:PythonIDE:Python.IDE需求做出彩虹效果颜色空间RGB模型:光的三原色,共同决定色相HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相需要将HSB模型转换为RGB模型代码示例:#…

MongoDB事实:商品硬件上每秒插入80000次以上

在尝试一些时间序列集合时,我需要一个大数据集来检查我们的聚合查询在增加数据负载的情况下不会成为瓶颈。 我们解决了5000万份文档,因为超出此数目我们仍然会考虑分片。 每次事件如下所示: {"_id" : ObjectId("5298a5a03b3…

day 17python 面对对象之继承

一:什么面向对象的继承? 比较官方的说法就是: 继承(英语:inheritance)是面向对象软件技术当中的一个概念。如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称…