cheetah

这个up主花三个月自制硬核“机器人心脏”,可承载机械战甲

戏子无情 提交于 2020-10-25 10:36:33
      大数据文摘出品    作者:牛婉杨   还记得今年3月火遍b站的技术宅稚晖君吗?他的一则自制迷你电视的视频在b站有着397万的播放量,更是超越众多二次元视频荣登全站排行榜第5名。   为什么这则视频这么火?因为这个电视相当“硬核”,内行外行看了都觉得厉害的那种。   其实这是个 长成电视模样的迷你Linux电脑 ,连个鼠标就能用!而且它还集人脸识别、语音助手等AI技术于一体,可以检测到人脸,还能用语音唤醒,充当一个迷你的语音助手。   稚晖君,一位自称野生钢铁侠的AI算法工程师,他自己也做过不少机器人项目。前不久,他带着新的作品来了,他自制了一款FOC(Field-Oriented Control)驱动器。   这块驱动器的厉害之处就在于,是 稚晖君独自一人耗时三个月制成,软硬件通通由他一人开发 。而且这块驱动器有“机器人心脏”之称,就连业界在制作机器人的时候也常会用到此方法来做驱动,比如 MIT Mini Cheetah四足机器人的驱动单元中就用到了FOC制作的基础部件。      不仅如此,这块驱动器还被稚晖君称为“全能开发板”, 除了应用在机器人领域,还能用来模拟各种物理效果!   话不多说,一起来看看。    驱动器变身全功能开发板,理论上能承载“机械外骨骼”   稚晖君表示,这个驱动器可以驱动市面上几乎所有类型的无刷电机,而且可以添加很多自定义功能。  

python网站开发哪些框架比较好用?

萝らか妹 提交于 2020-09-24 13:52:40
  提及python语言想必大家对它都不是很陌生,尤其是对于一些零基础转行的小白来说,python是首选的编程语言深受大家的喜欢,那么python网站开发哪些框架比较好用?今天这篇文章跟大家一起来分享一下。   Django:因为有了它的存在,很多网站项目才可以成功,从而导致python成为网站开发最常用的编程语言之一。现在国内外有很多知名的网站都是通过python来开发的,Django有强大的XML/JSON处理功能,直观的管理界面、安全可靠的用户权限等优势。   CherryPy:可以同时运行好几个web服务,是比较亮眼的特性之一。CherryPy虽然没有diango多么多模板,而是提供可以导入的库,让程序员可以自由的选择使用或者禁用各种模板、用户权限和数据库。同时它具有强大的插件系统,在平时编程过程中,要形成一套专属自己的工具集合,对自己是很有帮助的。   TurboGears:具有widgets控件,可以很方便的生成一些特定功能,是一种MVC架构的网站开发框架,基于SQLAlchemy,、Ming、 Repoze等一些WSGI组件、 Genshi、Kajiki、 Cheetah、 Myghty等模板引擎和大量的库以及middleware这样的中间件。   Flask:轻量级的框架,拥有众多的扩展工具,可以用来创建基于网站的应用,初学者可以多使用,它代码简单明了

腿式机器人激光SLAM系统

我是研究僧i 提交于 2020-08-13 08:42:19
点击上方“ 3D视觉工坊 ”,选择“星标” 干货第一时间送达 作者:robot L | 来源: 知乎 https://zhuanlan.zhihu.com/p/148855755 本文仅做学术分享,如有侵权,请联系删除。 主要内容 基于点云分割和CNN的LiDAR点云回环检测方法。 改进的点云配准失效检测方法,效率更高。 基于运动惯性里程计,AICP,回环的因子图LiDAR-SLAM系统,可以在腿式机器人上运行。 不足 处理频率只有1Hz,远低于激光频率10Hz。 没有和SOTA LiDAR-SLAM算法对比。 M. Ramezani, G. Tinchev, E. Iuganov, M. Fallon. Online LiDAR-SLAM for Legged Robots with Robust Registration and Deep-Learned Loop Closure. IEEE International Conference on Robotics and Automation , 2020. 摘要 在本文中,我们提出了一种基于因子图的3D LiDAR SLAM系统,组合了SOTA深度学习的基于特征的回环检测子,使得腿式机器人能够在工业环境中定位和建图。点云先通过惯性运动学状态估计器对齐,然后再使用ICP配准对齐。为了闭环,我们使用使用一种回环策略

Serverless 实战:用 20 行 Python 代码轻松搞定图像分类和预测

帅比萌擦擦* 提交于 2020-05-08 16:30:39
图像分类是人工智能领域的一个热门话题,通俗来讲,就是根据各自在图像信息中反映的不同特征,把不同类别的目标区分开。图像分类利用计算机对图像进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,代替人的视觉判读。 在实际生活中,我们也会遇到图像分类的应用场景,例如我们常用的通过拍照花朵来识别花朵信息,通过人脸匹对人物信息等。通常,图像识别或分类工具都是在客户端进行数据采集,在服务端进行运算获得结果。因此,一般都会有专门的 API 来实现图像识别,云厂商也会有偿提供类似的能力: 华为云图像标签 腾讯云图像分析 本文将尝试通过一个有趣的 Python 库,快速将图像分类的功能搭建在云函数上,并且和 API 网关结合,对外提供 API 功能,实现一个 Serverless 架构的 " 图像分类 API"。 入门 ImageAI 首先,我们需要一个依赖库: ImageAI 。 什么是 ImageAI 呢?其官方文档是这样描述的: ImageAI 是一个 python 库,旨在使开发人员能够使用简单的几行代码构建具有包含深度学习和计算机视觉功能的应用程序和系统。 ImageAI 本着简洁的原则,支持最先进的机器学习算法,用于图像预测、自定义图像预测、物体检测、视频检测、视频对象跟踪和图像预测训练。ImageAI 目前支持使用在 ImageNet-1000 数据集上训练的 4

Mac OSX Lion Sneak Peek

与世无争的帅哥 提交于 2020-04-05 19:25:35
老乔没有停止MacOSX的步伐,决定2011年夏季继续操作系统的升级。加入了ipod touch,iphone亦或ipad等的滑屏等IOs样式,先来看看历来的MacOS的命名好了: Mac OS X 10.0 - Cheetah Mac OS X 10.1 - Puma Mac OS X 10.2 - Jaguar Mac OS X 10.3 - Panther Mac OS X 10.4 - Tiger Mac OS X 10.5 - Leopard Mac OS X 10.6 - Snow Leopard We took our best thinking from Mac OS X and brought it to the iPhone. Then we took our best thinking from the iPhone and brought it to iPad. And now we’re bringing it all back to the Mac with our eighth major release of the world’s most advanced operating system. Mac OS X Lion arrives in summer 2011. Here’s a sneak peek at just a few of its

20 行代码:Serverless 架构下用 Python 轻松搞定图像分类

柔情痞子 提交于 2020-03-12 18:42:20
「图像分类」是人工智能领域的一个热门话题,我们在实际生活中甚至业务的生产环境里,也经常遇到图像分类相似的需求,如何能快速搭建一个图像分类或者内容识别的 API 呢? 我们考虑使用 Serverless Framework 将图像识别模块部署到腾讯云云函数 SCF 上。 这里我们会用到一个图像相关的库: ImageAI ,官方给了一个简单的 demo: from imageai.Prediction import ImagePrediction import os execution_path = os.getcwd() prediction = ImagePrediction() prediction.setModelTypeAsResNet() prediction.setModelPath(os.path.join(execution_path, "resnet50_weights_tf_dim_ordering_tf_kernels.h5")) prediction.loadModel() predictions, probabilities = prediction.predictImage(os.path.join(execution_path, "1.jpg"), result_count=5 ) for eachPrediction, eachProbability

Python web开发:几个模板系统的性能对比

和自甴很熟 提交于 2020-01-08 18:28:21
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 对比目标,jinja2,cheetah,mako,webpy,bottle,tornado,django的性能。 方法,随机生成一个二维数组,第一列是自增数据,第二列是长度为100的随机字符串,然后生成html,比较一次生成的时间。 说明,如果模板有编译缓存,打开。有其他方法加速,打开。生成缓存,关闭。不计算随机数据生成时间,一次生成后一直使用。 以下是文件有效内容,没用的都略去了。最后的顺序是因为我根据结果整理了一下调用次序。 —–testcheetah.tmpl—– #for $i in $l #end for $i[0] $i[1] —–testdjango.html—– {% for i in l %} {% endfor %} {{ i.0 }} {{ i.1 }} —–testjinja2.html—– {% for i in l %} {% endfor %} {{ i[0] }} {{ i[1] }} —–testmako.html—– % for i in l: % endfor ${i[0]} ${i[1]} —–testwebpy.html—– $def with(l) $for i in l: $i[0] $i[1] —–tmpl.py—– #!/usr/bin/python # -﹡-

Python中zip()函数的解释和可视化

|▌冷眼眸甩不掉的悲伤 提交于 2020-01-07 00:24:26
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> zip()的作用 先看一下语法: zip(iter1 [,iter2 [...]]) —> zip object Python的内置help()模块提供了一个简短但又有些令人困惑的解释: 返回一个元组迭代器,其中第i个元组包含每个参数序列或可迭代对象中的第i个元素。当最短的可迭代输入耗尽时,迭代器将停止。使用单个可迭代参数,它将返回1元组的迭代器。没有参数,它将返回一个空的迭代器。 与往常一样,当您精通更一般的计算机科学和Python概念时,此模块非常有用。但是,对于初学者来说,这段话只会引发更多问题。让我们尝试通过示例,代码片段和可视化来解释zip()功能: 从许多迭代中获取元素,然后…… 放在一起 我们可以通过几个列表来演示zip()的功能: uppercase = ['A', 'B', 'C'] lowercase = ['a', 'b', 'c'] for x, y in zip(uppercase, lowercase): print(x, y) 输出: A a B b C c 但是,不限于两个可迭代对象作为参数传递-我们可以添加任意多个: uppercase = ['A', 'B', 'C'] lowercase = ['a', 'b', 'c'] numbers = [1, 2, 3] for x

CherryPy with Cheetah as plugin + tool - blank pages

半腔热情 提交于 2019-11-28 14:21:53
CherryPy keeps returning blank pages or with the values I return in the controllers. I rewrote a django and jinja2 version that did work, apparently this one doesn't which is almost identical to the previous mentioned. I did some pprint's in the tool bit which does fill the request.body with parsed html but doesn't output it when pass is set in the controller. If I return a {'user':True} in the controller that is shown in the form of a simple "User". with a few examples online and the code of SickBeard I came to the following: controller: class RootController(object): @cherrypy.expose

CherryPy with Cheetah as plugin + tool - blank pages

烂漫一生 提交于 2019-11-27 08:30:18
问题 CherryPy keeps returning blank pages or with the values I return in the controllers. I rewrote a django and jinja2 version that did work, apparently this one doesn't which is almost identical to the previous mentioned. I did some pprint's in the tool bit which does fill the request.body with parsed html but doesn't output it when pass is set in the controller. If I return a {'user':True} in the controller that is shown in the form of a simple "User". with a few examples online and the code of