diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml new file mode 100644 index 0000000..31e91a1 --- /dev/null +++ b/.github/workflows/jekyll.yml @@ -0,0 +1,64 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +# Sample workflow for building and deploying a Jekyll site to GitHub Pages +name: Deploy Jekyll site to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["master"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Ruby + uses: ruby/setup-ruby@8575951200e472d5f2d95c625da0c7bec8217c42 # v1.161.0 + with: + ruby-version: '3.1' # Not needed with a .ruby-version file + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + cache-version: 0 # Increment this number if you need to re-download cached gems + - name: Setup Pages + id: pages + uses: actions/configure-pages@v5 + - name: Build with Jekyll + # Outputs to the './_site' directory by default + run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}" + env: + JEKYLL_ENV: production + - name: Upload artifact + # Automatically uploads an artifact from the './_site' directory by default + uses: actions/upload-pages-artifact@v3 + + # Deployment job + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/_config.yml b/_config.yml index 35aa76a..7609441 100644 --- a/_config.yml +++ b/_config.yml @@ -21,9 +21,7 @@ title: YF Robotics Lab email: yfrobotics@gmail.com description: >- # this means to ignore newlines until "baseurl:" - Write an awesome description for your new site here. You can edit this - line in _config.yml. It will appear in your document head meta (for - Google search results) and in your feed.xml site description. + YF Robotics Lab baseurl: "" # the subpath of your site, e.g. /blog url: "" # the base hostname & protocol for your site, e.g. http://example.com twitter_username: yfrobotics diff --git a/_posts/2020-10-18_community-campaign.md b/_posts/2020-10-18-community-campaign.md similarity index 94% rename from _posts/2020-10-18_community-campaign.md rename to _posts/2020-10-18-community-campaign.md index aceb6b0..3a90edc 100644 --- a/_posts/2020-10-18_community-campaign.md +++ b/_posts/2020-10-18-community-campaign.md @@ -1,10 +1,9 @@ --- layout: post -title: "Welcome to Jekyll21212" -date: 2024-11-12 03:51:06 +0000 -categories: jekyll update3 +title: "写在云飞机器人实验室改版之际" +date: 2020-10-18 03:51:06 +0000 +categories: jekyll update --- -# 写在云飞机器人实验室改版之际 云飞实验室自2010年成立至今,风风雨雨已十载。 diff --git a/_posts/2020-11-29_nvidia-jetson-nano-intro-and-guidance.md b/_posts/2020-11-29-nvidia-jetson-nano-intro-and-guidance.md similarity index 90% rename from _posts/2020-11-29_nvidia-jetson-nano-intro-and-guidance.md rename to _posts/2020-11-29-nvidia-jetson-nano-intro-and-guidance.md index 8a201f0..6fdebfd 100644 --- a/_posts/2020-11-29_nvidia-jetson-nano-intro-and-guidance.md +++ b/_posts/2020-11-29-nvidia-jetson-nano-intro-and-guidance.md @@ -1,14 +1,13 @@ --- layout: post -title: "Welcome to Jekyll!" -date: 2024-11-12 03:51:06 +0000 -categories: jekyll update2 +title: "Nvidia Jetson Nano介绍与使用指南" +date: 2020-11-29 03:51:06 +0000 +categories: jekyll update --- -# Nvidia Jetson Nano介绍与使用指南 [toc] -![jetson-outofbox.JPG](assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG) +![jetson-outofbox.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG) > 本文介绍了Nvidia Jetson Nano的硬件参数、性能、使用方法及个人主观的使用体验。 @@ -16,7 +15,7 @@ categories: jekyll update2 Jetson Nano是Nvidia在TX2和Xavier获得成功后推出的低配版GPU运算平台。我在Jetson Nano 2019年3月刚上市的时候就入手了一块开发套件(英国Pimoroni购入,110磅)。这次乘着短暂的假期,来补一下对它的评测。谈一个硬件平台,首先绕不开的就是它的纸面参数。在官方的资料上,Jetson Nano公布的参数如下: -![5ea1fa3fce538f099800009c](assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png) +![5ea1fa3fce538f099800009c](/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png) Nano最大的特色就是包含了一块128核Maxwell架构的GPU,虽然已经是几代前的架构,不过因为用于嵌入式设备,从功耗、体积、价格上也算一个平衡。Nano的计算能力不高,勉强可以使用一些小规模、并且优化过的网络进行推理,训练的话还是不够用的。A53的CPU中规中矩,隔壁的树莓派4已经升级为A72。4GB的内存并不能完全使用,因为其中有一部分(1GB左右)是和显存共享的。Jetson Nano的最大优势还是在体积上,它采用核心板可拆的设计,核心板的大小只有70 x 45 mm,可以很方便的集成在各种嵌入式应用中。同时它的功耗也非常低,有两种模式: @@ -27,29 +26,29 @@ Nano最大的特色就是包含了一块128核Maxwell架构的GPU,虽然已经 Jetson Nano Developer Kit的整体做工十分好,符合Nvidia的一贯质量,这里分享几个图片: -![DSC00697.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG) +![DSC00697.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG) ▲ Jetson Nano开发套件的背面,可见做工十分精良 ▲ -![DSC00704.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG) +![DSC00704.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG) ▲ Jetson Nano套件的核心板为可拆卸设计,将主板拆卸后会露出一路M.2接口的单路PCIE,可接无线网卡 ▲ -![DSC00703.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG) +![DSC00703.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG) ▲ Jetson Nano核心板的背面,也是安装SD卡的位置 ▲ Jetson Nano的硬件布局如下 (对应A02版本; B01版本除了电源按钮接口和额外一路CSI外,其他布局基本相同): -![5ea1fa3fce538f099800009c](assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png) +![5ea1fa3fce538f099800009c](/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png) 值得注意的是,Jetson Nano除了之前提到的核心板分离式设计(J2),还包括了一个M.2接口,可以用来外接无线网卡。除此之外,Jetson Nano有与树莓派兼容的外设接口(J41);风扇接口(J15);摄像头接口(J13);以及USB和HDMI。另外J40是按键接口,类似PC主板上的接口,各个接口的说明如下,不用的话直接悬空: -![5ea1fa3fce538f099800009c](assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png) +![5ea1fa3fce538f099800009c](/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png) -![DSC00698.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG) +![DSC00698.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG) ▲ Jetson Nano的外设接口,从左至右分别为:电源接口、HDMI、DisplayPort、USB、以太网接口及USB供电接口 ▲ @@ -79,7 +78,7 @@ Jetson整个系列型号的对比如下: 官方给出了常见CNN模型在使用TensorRT下得出的帧率(FP16, batch size = 1): -![fdc5b8d044de7024501e0f3bcf67da88.png](assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png) +![fdc5b8d044de7024501e0f3bcf67da88.png](/assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png) 可见大部分模型为可用状态(FPS > 10),其中ResNet、Mobilenet和Tiny Yolo性能优异,可以达到30帧,已经可以用于移动场景了。注意这里使用的是Nvidia自己优化的TensorRT,而不是标准的Tensor库。Nvidia没有公布太多具体的细节,但是提到使用了kernel auto-tuning、dynamic tensor memory、layer fusion和quantization (FP16/INT8) 等方法来加速网络的执行效率,这点还是非常优秀的。 @@ -95,7 +94,7 @@ Jetson整个系列型号的对比如下: Jetson Nano在使用的时候**一定要用一个风扇压一下**,不然会因为被动散热能力不够而频繁死机。我用的是Noctua NF-A4x20 5V PWM。散热片的上方有四个安装风扇的固定孔,需要用自攻螺丝固定。我这里为了不造成破坏,用了四个捆扎带固定风扇。 -![DSC00696.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG) +![DSC00696.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG) ▲ Jetson Nano安装Noctua 5v风扇 ▲ @@ -106,11 +105,11 @@ Jetson Nano在使用的时候**一定要用一个风扇压一下**,不然会 Jetson机身只有Ethernet有线网络,不包括无线网卡,使用的时候有时候不是很方便。官方推荐使用的AC8265这款2.4G/5G双模网卡,同时支持蓝牙4.2。我这里使用的是微雪AC8265网卡 + 天线套件: -![ac8265.jpg](assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg) +![ac8265.jpg](/assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg) 安装过程非常简单,将核心板拆卸开,露出M2接口,然后将网卡插入,用一个螺丝固定即可: -![DSC00705.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG) +![DSC00705.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG) ▲ 为Jetson Nano安装无线网卡 ▲ @@ -121,7 +120,7 @@ Jetson机身只有Ethernet有线网络,不包括无线网卡,使用的时候 Jetson包含CSI相机接口(A01有一路;B02版本有两路),可以接树莓派摄像头(基于MX219),相机接口在如下位置(安装时注意接口的正反,信号触点面朝里): -![DSC00699.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG) +![DSC00699.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG) ▲ Jetson Nano CSI相机接口及电源按钮接口 ▲ @@ -138,7 +137,7 @@ gst-launch-1.0 nvarguscamerasrc ! 'video/x-raw(memory:NVMM),width=3820, height=2 这么贵重的电路板还是建议使用一个外壳保护一下的。虽然有些外壳的安装步骤较为繁琐,但是可以有效的防止电路板受到损坏,还是值得的。淘宝上有很多选择,但英国这里可选的余地有限(也很贵),最后买了以下这款全金属外壳: -![DSC00711.JPG](assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG) +![DSC00711.JPG](/assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG) ▲ Jetson Nano安装好后外壳后的样子。我选的这款金属外壳含电源按钮、天线固定口和相机支架 ▲ @@ -214,13 +213,13 @@ gsettings set org.gnome.Vino require-encryption false 相关的示例可以在以下文件夹里找到: -![5ea1fa3fce538f099800009c](assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png) +![5ea1fa3fce538f099800009c](/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png) 关于JetPack的更多内容可见: [https://www.developer.nvidia.com/embedded/jetpack](https://www.developer.nvidia.com/embedded/jetpack) 除了JetPack,Nvidia还提供了以下开发工具: -![5ea1fa3fce538f099800009c](assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png) +![5ea1fa3fce538f099800009c](/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png) 除此之外,官网上还能找到很多Jetson的相关资源: @@ -257,17 +256,17 @@ $ sudo ldconfig Inference Example 1. [Classifying Images with ImageNet](https://github.com/dusty-nv/jetson-inference/blob/master/docs/imagenet-console-2.md) -![b5ccc214a6798454da0d1a84bc8408a6.png](assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png) +![b5ccc214a6798454da0d1a84bc8408a6.png](/assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png) Inference Example 2. [Locating Objects with DetectNet](https://github.com/dusty-nv/jetson-inference/blob/master/docs/detectnet-console-2.md) -![cfb588fb34b575ba582b064b728d4385.png](assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png) +![cfb588fb34b575ba582b064b728d4385.png](/assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png) Inference Example 3. [Semantic Segmentation with SegNet](https://github.com/dusty-nv/jetson-inference/blob/master/docs/segnet-console-2.md) -![86d69d1696ddfbe9de08c52f609f1b1b.png](assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png) +![86d69d1696ddfbe9de08c52f609f1b1b.png](/assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png) 除此之外还包含了若干如何Training的教学,感兴趣的朋友自行前往阅读。 diff --git a/_posts/2020-12-23_how-far-is-cyberpunk.md b/_posts/2020-12-23-how-far-is-cyberpunk.md similarity index 90% rename from _posts/2020-12-23_how-far-is-cyberpunk.md rename to _posts/2020-12-23-how-far-is-cyberpunk.md index 106a986..7789239 100644 --- a/_posts/2020-12-23_how-far-is-cyberpunk.md +++ b/_posts/2020-12-23-how-far-is-cyberpunk.md @@ -1,14 +1,15 @@ --- layout: post -title: "Welcome to Jekyll!" -date: 2024-11-13 03:51:06 +0000 -categories: jekyll update2 +title: "赛博朋克的生活离我们多远" +date: 2020-12-23 03:51:06 +0000 +categories: jekyll update --- -![d0b2202e8be6b8d9155d56b0b844f6d4.png](assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png) + +![d0b2202e8be6b8d9155d56b0b844f6d4.png](/assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png) 最近最火热的话题莫过于游戏《赛博朋克2077》了,我本身是一个游戏迷,对于这款充满未来元素与机器科技的游戏就更加期待了。这两天,我不断收到知友们关于“赛博朋克中的科技到底离我们还有多远?”问题的邀请,借由此机会我想对赛博朋克世界中的内容 --- 主要是科技元素的可行性 --- 进行一些讨论。赛博朋克世界中的主要科技元素基本相似,以下就围绕在《赛博朋克2077》游戏中出现的元素进行讨论。 -![cyperpunk-outline.png](assets/how-far-is-cyberpunk/赛博朋克.png) +![cyperpunk-outline.png](/assets/how-far-is-cyberpunk/赛博朋克.png) @@ -36,15 +37,15 @@ categories: jekyll update2 义肢的核心技术并不是机械,而是机械如何与人进行结合,成为“仿生人 (Cyborg)”。仿生人具有异于常人的能力,可以通过义眼获得更好的视觉系统,义腿获得更好的速度和弹跳力,甚至可以扩充记忆能力以及获得连接互联网数据的能力。 义肢的核心技术就是如何使人和大脑相连接,这点需要依赖大脑科学和认知神经科学。目前state-of-the-art已经可以“读取”大脑的基本指令,实现义手的控制,并且已经可以达到非常可观的精度: -![5cec22d6c6ddd8e4074009bd5fed2ada.png](assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png) +![5cec22d6c6ddd8e4074009bd5fed2ada.png](/assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png) ▲ Open Biotics研发的机械手义肢 ▲ 在军工领域,也已经有了体外骨骼,为士兵提供更强的能力。当然他们的原理并非阅读大脑信号,而是将操作者的行为进行了放大: -![9b9a0482c2a4212c16be896420fa98f2.png](assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png) +![9b9a0482c2a4212c16be896420fa98f2.png](/assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png) ▲ 体外骨骼 ▲ 然而真正做的赛博朋克中的仿生人,我们不仅需要读取大脑的信息,还需要可以“写入”。比如义眼需要可以修改人的视觉信号,刺激相应的神经,“仿真”出和人眼一样的信号从而“欺骗”大脑。在这个领域,Elon Musk的脑机接口Neruallink (https://neuralink.com/) 被视为这个方向的代表。 -![7d5a3a0ad2e56c7953b86428560a90e2.png](assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png) +![7d5a3a0ad2e56c7953b86428560a90e2.png](/assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png) ▲ Neruallink脑机接口概念图 ▲ 目前在脑机接口领域的研究很有限,主要还是以在鼠类/猴类上进行简单行为为主。因为“写入”可能会反向损伤大脑,研究的难度比“读取”大很多,所以进展缓慢。期待这方面在未来的十年会有小突破。然而要完全实现脑机交互,十年是不够的,可能需要20-50年,离我们现在的生活还比较远。 @@ -53,7 +54,7 @@ categories: jekyll update2 ### 2.2. 机器人 在《赛博朋克2077》中出现的机器人以传统的机器人形象为主,依然是冰冷的机器,而没有刻意像《底特律:变人》中一样强调机器也有可能有情感。我想这是因为赛博朋克世界中更想强调“人越来越像机器”而不是“机器越来越像人”。在赛博朋克游戏中出现的最先进的机器人应该是主线任务中Militech的这款Spider Bot: -![13656aa6ba06b18ed7c96991d705a9ff.png](assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png) +![13656aa6ba06b18ed7c96991d705a9ff.png](/assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png) ▲ Spider Bot by Militech in Cyberpunk 2077 ▲ 游戏中主要展现了它全地形攀爬以及具有光学隐形能力。对于全地形攀爬(包括附着在天花板上),应该可以通过磁力吸附,相关技术我在2014年的时候研究过,但是这里的难点是它的吸附着力点面积很小。解决方法是:增大磁场生成功率的同时要减轻自重。这点只能通过提高能量密度实现,即需要更好的动力系统。 @@ -66,12 +67,12 @@ categories: jekyll update2 ### 2.3. AR与VR 赛博朋克中的另一个元素就是AR和VR。AR的场景即是V可以通过义眼的扫描增强功能,读取周围物体和人物的信息。这一点结合图像识别和5G网络,在现如今已经可以小规模实现。然而想要大规模实现,需要有完善的数据库、图像语义识别能力、高速的移动网络,其中也涉及了一些隐私数据的保护等伦理问题。 -![676c17fc7ae7de07c3e4201536d886b4.png](assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png) +![676c17fc7ae7de07c3e4201536d886b4.png](/assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png) ▲ 2077中的扫描功能 ▲ 游戏中的另一个元素是VR,这一点就是很多人沉迷于一种叫“超梦/BD”的技术。超梦是一种将别人的经历(包括感官上的)录制下来,之后播放者可以复现的一种技术。严格意义上来说,超梦并不是VR,而是一种5D电影,在传统3D的基础上,增加了视觉和感官。它既是一种类似电影的沉浸式体验,也因为体验者有“我即是电影中主角的错觉”从而产生了与传统电影完全不同的体验。这一点上,实现的主要技术依然是人脑接口技术,因为要将人的感官复现,必须要能读取到人诸如嗅觉、视觉、触觉等感官的信号。以此为基础的话,录制和播放本身就和我们现在录短片、看短片一样。 -![7239fccc40500cad4539071749171a60.png](assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png) +![7239fccc40500cad4539071749171a60.png](/assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png) ▲ 使用超梦需要使用专用的接入设备 ▲ AR与VR技术在推广中受到了很大的阻挠,其原因还是因为设备无法小型化/技术不成熟/使用场景模糊。然而比起目前的实现方式来说,它们之后更多的会隐藏在我们每一个设备中,无处不在,你却不再感受得到它们。比如在你的汽车挡风玻璃上,在你的镜子里。虽然我们现在总是把这两个技术放在一起来说,但对比两个技术,AR有更多的“实用”因素,它强调扩展信息,而VR更强调的是“体验”,这也决定了它们之后会有截然不同的技术道路。 @@ -80,7 +81,7 @@ AR与VR技术在推广中受到了很大的阻挠,其原因还是因为设备 ### 2.4. 强大的AI与计算机网络 以上几乎所以技术都依赖于强大的AI辅助以及有复杂的计算机网路作为支撑。游戏中一个很重要的元素就是你可以进入Cyber-space. 在赛博朋克的世界里,cyber-space是一个比物理世界更宏大的存在。黑客们在其中找到生活的空间,人也可以逃避现实生活的无情,而沉浸在虚拟的网络世界中。这一点在很多科幻电影中已经都有体现,如Ready Player One/头号玩家。AI一定程度上帮助了我们工作和生活,另一个程度上又让我们产生了过强的依赖性,以至于离开它们我们就无法继续生活下去了。在赛博朋克的世界中,就出现了逃离这种生活的反抗者,他们寻求自我,摆脱高科技的奴役。 -![79b8e70ec47d2d8ff31474d5538e5971.png](assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png) +![79b8e70ec47d2d8ff31474d5538e5971.png](/assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png) ▲ 2077中的Cyber-space ▲ 然而,游戏中表现的这种场景离我们甚远,是科技发展到一定阶段所会带来的社会问题。目前我们的阶段还处在非常初期的阶段,我们看见了深度学习在一些领域上崭露头角,尤其是DeepMind、OpenAI、Tesla和国内的腾讯、阿里、百度等公司的成果。但是想要让AI更加渗入进生活的方方面面,还需要研究和开发人员的不懈努力。AI的发展(以及一切科技)都是螺旋中上升的,我们需要静观其变,给予它们充分的时间去发展。同时,我们也要谨记科技不是用来作恶的。我们在技术发展的过程中,一定要把握好这把双刃剑,需要约法三章,避免科技得到滥用(如智能摄像头、匿名身份识别、点对点武器打击)。 diff --git a/_posts/2021-03-15_hokuyo-lidar-ros2.md b/_posts/2021-03-15-hokuyo-lidar-ros2.md similarity index 94% rename from _posts/2021-03-15_hokuyo-lidar-ros2.md rename to _posts/2021-03-15-hokuyo-lidar-ros2.md index 93febbf..a759e8f 100644 --- a/_posts/2021-03-15_hokuyo-lidar-ros2.md +++ b/_posts/2021-03-15-hokuyo-lidar-ros2.md @@ -1,10 +1,9 @@ --- layout: post -title: "Welcome to Jekyll!" -date: 2024-11-12 03:51:06 +0000 -categories: jekyll update2 +title: "在ROS 2中使用单线激光雷达 (HOKUYO UST-10LX)" +date: 2021-03-15 03:51:06 +0000 +categories: jekyll update --- -# 在ROS 2中使用单线激光雷达 (HOKUYO UST-10LX) ## 1. 单线激光雷达简介 @@ -29,11 +28,11 @@ HOKUYO UST-10LX是基于网口的单线激光雷达 (HOKUYO是日本本土最大 看一个激光雷达的参数,主要看扫描频率(40Hz),扫描范围(270度),最大测距距离(10m)以及单圈点数(1081)。机器人运动速度越快,需要对应的扫描频率就越高;而需要的精度越高,障碍物的体积越小,也就需要越高的单圈点数。一般来说还会考量抗光线干扰的能力,不过一般没有具体的量化指标,只能在实际场地测试。 -![DSC07332.JPG](assets/hokuyo-lidar-ros2/DSC07332.JPG) +![DSC07332.JPG](/assets/hokuyo-lidar-ros2/DSC07332.JPG) ▲ 图1. UST-10LX激光雷达正面 -![DSC07334.JPG](assets/hokuyo-lidar-ros2/DSC07334.JPG) +![DSC07334.JPG](/assets/hokuyo-lidar-ros2/DSC07334.JPG) ▲ 图2. UST-10LX激光雷达侧面 @@ -126,7 +125,7 @@ ros2 run rviz2 rviz2 ``` -![hokuyo-rviz.png](assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png) +![hokuyo-rviz.png](/assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png) ▲ 图3. 在rviz中查看激光雷达数据 diff --git a/_posts/2021-04-03_using-servo-in-robots.md b/_posts/2021-04-03-using-servo-in-robots.md similarity index 98% rename from _posts/2021-04-03_using-servo-in-robots.md rename to _posts/2021-04-03-using-servo-in-robots.md index 0a69442..5c8a4aa 100644 --- a/_posts/2021-04-03_using-servo-in-robots.md +++ b/_posts/2021-04-03-using-servo-in-robots.md @@ -1,10 +1,9 @@ --- layout: post -title: "Welcome to Jekyll!" -date: 2024-11-12 03:51:06 +0000 -categories: jekyll update2 +title: "在机器人系统中使用舵机" +date: 2021-04-03 03:51:06 +0000 +categories: jekyll update --- -# 在机器人系统中使用舵机 ## 背景 diff --git a/_posts/2024-11-12-welcome-to-jekyll.markdown b/_posts/2024-11-12-welcome-to-jekyll.markdown deleted file mode 100644 index 825b771..0000000 --- a/_posts/2024-11-12-welcome-to-jekyll.markdown +++ /dev/null @@ -1,29 +0,0 @@ ---- -layout: post -title: "Welcome to Jekyll!" -date: 2024-11-12 03:51:06 +0000 -categories: jekyll update ---- -You’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated. - -Jekyll requires blog post files to be named according to the following format: - -`YEAR-MONTH-DAY-title.MARKUP` - -Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works. - -Jekyll also offers powerful support for code snippets: - -{% highlight ruby %} -def print_hi(name) - puts "Hi, #{name}" -end -print_hi('Tom') -#=> prints 'Hi, Tom' to STDOUT. -{% endhighlight %} - -Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk]. - -[jekyll-docs]: https://jekyllrb.com/docs/home -[jekyll-gh]: https://github.com/jekyll/jekyll -[jekyll-talk]: https://talk.jekyllrb.com/ diff --git a/about.markdown b/about.md similarity index 100% rename from about.markdown rename to about.md diff --git a/_posts/assets/hokuyo-lidar-ros2/DSC07332.JPG b/assets/hokuyo-lidar-ros2/DSC07332.JPG similarity index 100% rename from _posts/assets/hokuyo-lidar-ros2/DSC07332.JPG rename to assets/hokuyo-lidar-ros2/DSC07332.JPG diff --git a/_posts/assets/hokuyo-lidar-ros2/DSC07334.JPG b/assets/hokuyo-lidar-ros2/DSC07334.JPG similarity index 100% rename from _posts/assets/hokuyo-lidar-ros2/DSC07334.JPG rename to assets/hokuyo-lidar-ros2/DSC07334.JPG diff --git a/_posts/assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png b/assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png similarity index 100% rename from _posts/assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png rename to assets/hokuyo-lidar-ros2/Screenshot from 2020-03-01 11-07-16.png diff --git a/_posts/assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png b/assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png rename to assets/how-far-is-cyberpunk/13656aa6ba06b18ed7c96991d705a9ff.png diff --git a/_posts/assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png b/assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png rename to assets/how-far-is-cyberpunk/5cec22d6c6ddd8e4074009bd5fed2ada.png diff --git a/_posts/assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png b/assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png rename to assets/how-far-is-cyberpunk/676c17fc7ae7de07c3e4201536d886b4.png diff --git a/_posts/assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png b/assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png rename to assets/how-far-is-cyberpunk/7239fccc40500cad4539071749171a60.png diff --git a/_posts/assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png b/assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png rename to assets/how-far-is-cyberpunk/79b8e70ec47d2d8ff31474d5538e5971.png diff --git a/_posts/assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png b/assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png rename to assets/how-far-is-cyberpunk/7d5a3a0ad2e56c7953b86428560a90e2.png diff --git a/_posts/assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png b/assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png rename to assets/how-far-is-cyberpunk/9b9a0482c2a4212c16be896420fa98f2.png diff --git a/_posts/assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png b/assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png similarity index 100% rename from _posts/assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png rename to assets/how-far-is-cyberpunk/d0b2202e8be6b8d9155d56b0b844f6d4.png diff --git "a/_posts/assets/how-far-is-cyberpunk/\350\265\233\345\215\232\346\234\213\345\205\213.png" "b/assets/how-far-is-cyberpunk/\350\265\233\345\215\232\346\234\213\345\205\213.png" similarity index 100% rename from "_posts/assets/how-far-is-cyberpunk/\350\265\233\345\215\232\346\234\213\345\205\213.png" rename to "assets/how-far-is-cyberpunk/\350\265\233\345\215\232\346\234\213\345\205\213.png" diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png b/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png rename to assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f0998000099.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png b/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png rename to assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009a.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png b/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png rename to assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009b.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png b/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png rename to assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009c.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png b/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png rename to assets/nvidia-jetson-nano-intro-and-guidance/5ea1fa3fce538f099800009d.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png b/assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png rename to assets/nvidia-jetson-nano-intro-and-guidance/86d69d1696ddfbe9de08c52f609f1b1b.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00696.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00697.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00698.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00699.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00703.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00704.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00705.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/DSC00711.JPG diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg b/assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg rename to assets/nvidia-jetson-nano-intro-and-guidance/ac8265.jpg diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png b/assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png rename to assets/nvidia-jetson-nano-intro-and-guidance/b5ccc214a6798454da0d1a84bc8408a6.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png b/assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png rename to assets/nvidia-jetson-nano-intro-and-guidance/cfb588fb34b575ba582b064b728d4385.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png b/assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png rename to assets/nvidia-jetson-nano-intro-and-guidance/fdc5b8d044de7024501e0f3bcf67da88.png diff --git a/_posts/assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG b/assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG similarity index 100% rename from _posts/assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG rename to assets/nvidia-jetson-nano-intro-and-guidance/jetson-outofbox.JPG diff --git a/index.markdown b/index.md similarity index 100% rename from index.markdown rename to index.md