8557 位酷友已加入
计算机圈子中包含常用的技术文档、源代码、模型、数据集、学习教程、技术报告等干货资料,加入圈子可以上传、下载资料,也可以使用提问来寻求资料或分享你认为有价值的站外链接~
内容 本报告首先对AMR技术进行了概述,并区分了AMR和AGV之间的区别,随后介绍了AMR有哪些适用的场景,并且介绍了AMR在全球范围内和在国内的市场概况,并讲述了AMR的技术发展、选型、成本预算等,在报告的最后还给出了一些案例,并预测了AMR未来的发展。 目录 第一章 AMR概述 第一节 认识AMR 第二节 区分AMR和AGV 第二章 AMR适用场景 第一节 行业应用 第二节 企业管理 第三章 AMR市场概况 第一节 市场规模 第二节 市场增速 第三节 市场格局 第四章 AMR技术发展 第一节 核心技术 第二节 5G+AMR 第五章 AMR选型 第一节 单机 第二节 调度 第三节 业务系统 第六章 项目交付 第一节 最佳交付流程 第二节 交付时效 第三节 交付经验 第七章 成本预算 第一节 运维成本 第二节 售后成本 第三节 投资回报预算 第四节 RAAS 第八章 案例 第一节 3C行业 第二节 汽配行业 第三节 半导体行业 第四节 鞋服行业 第九章 未来 发布单位:中国移动机器人产业联盟与新战略机器人产业研究所 发布单位:2020
决策模块 目录 功能介绍 效果展示 配置及环境要求 编译及安装方式 软硬件系统框图 原理介绍与理论支持分析 软件架构与层级图 开源协议 设计模式 鸣谢 功能介绍 决策模块是完成RoboMaster AI Challenge任务的重要智能控制单元。其主要负责从感知层获取的原始场上信息,经过预处理后,得到敌我双方机器人状态、血量、位置等信息,并通过处理后的信息作出合适的决策行为。 在感知系统完成的基础上,决策组的工作重点集中在决策层系统部署以及仿真训练环境搭建。针对RoboMaster AI Challenge中典型的2v2自主机器人对战方式,本项目将2v2对战视为零和博弈问题,并使用多智能体深度强化学习和行为决策树两种方式设计决策器。同时,为了结合规则型决策和学习型决策两种方式的优劣,并将大量的环境交互数据网络优化的结果运用于实车决策,本项目构造了三种仿真环境实现对算法的验证开发。分别是用于模型验证的Gazebo环境,策略训练的星际环境以及端到端控制训练的PyGame环境。 效果展示 真平台场景 实车场景 配置及环境要求 操作系统配置 所有步兵机器人均配备NVIDIA JETSON XAVIER嵌入式高性能计算单元作为车载电脑。 CPU框架:ARMv8 GPU计算能力:32TFLOPS 操作系统:JETPACK 4.2.2 (ARM框架下Ubuntu18.04以及GPU所需的软件包) 软件环境要求 Ubuntu 18.04 / 16.04 CUDA 10.0 + cuDNN 7.3.1 TensorRT 5.0.3 OpenCV 3.3.1 Pytorch c++ 1.1.0 + Torchvision 0.3.0 ROS Kinetic(Ubuntu 16.04)及其依赖包 编译/安装/运行方式 配置及安装Pytorch C++ 为了提升决策模块在实体步兵机器人上的实时性能,学习型策略得到的模型需要在pytorch c++环境中部署,因此需要在车载计算单元上手动编译安装pytorch。 编译决策模块 运行编译完成模块指令 多车仿真运行效果 文件目录说明 roborts_decision ├── behavior_tree #决策行为树 │ ├── behavior_node.h #行为树节点类定义 │ ├── behavior_state.h #行为树状态定义 │ └── behavior_tree.h #行为树运行类定义 ├── blackboard │ ├── blackboard.h #黑板定义(决策框架的输入) │ └── communication.h #通信定义(用于友军间通讯) ├── blue_master.cpp ├── blue_wing.cpp ├── cmake-build-debug ├── CMakeLists.txt ├── cmake_module ├── config #四辆车单独配置文件 │ ├── blue_master.prototxt │ ├── blue_wing.prototxt │ ├── decision.prototxt │ ├── red_master.prototxt │ └── red_wing.prototxt ├── decision_node.cpp ├── example_behavior #行为模板 │ ├── ambush_behavior.h #埋伏,站桩输出 │ ├── attack_behavior.h #支援,前往攻击 │ ├── back_boot_area_behavior.h #返回基地 │ ├── chase_behavior.h #追击 │ ├── escape_behavior.h #撤退 │ ├── goal_behavior.h #指定目标导航 │ ├── nn_behavior.h #神经网络决策 │ ├── line_iterator.h #直线路径判断迭代器 │ ├── patrol_behavior.h #内环巡逻 │ ├── reload_behavior.h #外环巡逻 │ ├── search_behavior.h #在敌方消失区域进行搜索 │ ├── shield_behavior.h #前往装甲buff区 │ └── test_behavior.h #测试,用于新功能开发 ├── executor │ ├── chassis_executor.cpp │ ├── chassis_executor.h #底盘任务调度类定义 │ ├── gimbal_executor.cpp │ └── gimbal_executor.h #任务调度类定义 ├── package.xml ├── proto │ ├── decision.pb.cc │ ├── decision.pb.h │ └── decision.proto #策略层参数配置 ├── red_master.cpp ├── red_wing.cpp └── sel_behavior_node.cpp 系统框图 硬件部分 步兵机器人的硬件系统除了自带的底盘和云盘系统以外,为了实现机器人的定位,检测和自主移动等功能,需要在机器人主题上加装各种外围传感器。在传感器选型时需要注意传感器的尺寸,重量,合适的安装位置,开发难度等。在当前版本的机器人系统中,我们配备了工业相机,激光雷达,后置USB相机,为步兵机器人提供合理有效的视野范围。传感器选型及硬件部署如下 传感器型号 传感器部署图 软件部分 整车的软件架构如下图所示,决策模块接受底层驱动/感知/规划/控制层信息,通过规则型(决策树)和学习型(多智能体深度强化学习)两种策略方式决定步兵机器人下一步动作。除决策系统部署外,决策组还承担仿真训练环境的搭建任务。 软件系统框图 仿真平台部分 对于学习型决策算法,通常需要大量的数据资源作为训练基础,同时需要反复迭代优化神经网络性能,因此需要构建仿真模拟器实现复杂的对抗场景,并基于复现场景优化决策模块。同时,在实车测试之前,决策系统的输出结果需要在仿真系统中进行测试并验证。我们构造了三种仿真环境以满足不同的实验需求,分别是用于模型验证的Gazebo环境,策略训练的星际环境以及端到端控制训练的PyGame环境。仿真平台及关系如下图所示。 原理介绍与理论支持分析 多智能体深度强化学习 学习型策略采用多智能体深度强化学习方法。采取与系统内置AI作战的对抗训练方式,经过混合迭代中心反事实评估网络和中心评估混合Q网络方法,对全局态势进行估计,根据胜负奖赏与血量差等奖赏信号,优化多智能体网络,优化策略决策,使策略系统自适应RoboMaster对抗环境。 行为决策树 行为树作为典型的规则型决策算法,已在游戏领域得到广泛应用。这里我们通过定义选择节点、序列节点、并行节点和行为节点来实现追踪、射击、补弹、占领buff等作战决策行为。决策逻辑如下: 软件架构与层级图 决策任务 总体而言,规则型决策具有系统可解释性且表现性能较为稳定,但无法作自学习持续优化完善;学习型决策具有自主进化的能力,可自适应系统环境,但一般需要较长的训练优化时间和较多的计算资源,缺乏可解释性且稳定性较弱。为了将规则型和学习型算法有机结合,我们通过学习型算法使机器人在RoboMaster对抗环境下作探索,并与系统内置脚本AI作对抗,找到有效攻击策略。然后通过规则组合的方式,使机器人作出近似决策行为,完善决策系统功能。这样既增强系统的可解释性和稳定性,并强化了多机器人协作表现性能。 开源协议 本项目签署了MIT 授权许可,详情请参阅 LICENSE.txt 转载自:https://github.com/DRL-CASIA/RMAI2020-Decision
内容 《2020-2021 工业制造领域自然导航 AGV/AMR 产业发展研究报告》是新战略机器人产业研究所根据中国移动机器人(AGV)产业联盟统计数据研究的最新成果,报告深度解析了当前我国自然导航 AGV/AMR 产业发展水平,对行业应用及趋势做了研究。 自然导航 AGV/AMR 是指应用在工业制造领域中,不依靠任何标识导引,具备自主导航能力,由车载控制系统控制,以轮式特征为特征,自带动力或动力转换装置的机器人。传统的磁导及二维码导航产品不计入该类别。本报告调研对象主要以自然导航 AGV/AMR企业(专注这一细分领域,自然导航产品占总体业务 90% 以上)为主。 报告统计,2020 年度,中国工业制造领域自然导航 AGV/AMR 出货量约在 2800 台,市场规模约在 5.6 亿,市场增长迅速,头部企业表现出强劲的发展势头。2020 年,伴随着全国性乃至全球性的疫情影响,工业应用移动机器人(AGV/AMR)在经历过短暂阵痛后迎来了新一轮的发展机遇,而更具柔性的自主导航 AGV/AMR 逐渐成为市场增长的主要动力。 本报告以研判 2020 年国内工业制造领域自然导航 AGV/AMR 产业发展水平及特征趋势为目标,采取定性判断与定量分析相结合的方式,深度解析我国自然导航 AGV/AMR 产业发展状况,为国内广大企业提供发展方向、路径及模式的参考依据,为应用端客户提供选型参考依据,推动自然导航 AGV/AMR 应用。 目录 第一章:工业制造领域自然导航 AGV/AMR 市场概念定义 一、 工 业 制 造 物 流 发 展 背 景 1、 关 于 工 业 制 造 物 流 的 界 定 2、 发 展 背 景 3、 发 展 驱 动 因 素 二、工业制造领域自然导航机器人(AGV/AMR) 1、基本介绍与界定 第二章:工业制造领域自然导航 AGV/AMR 产业发展概况 一、产业规模、竞争格局与增长趋势 1、市场空间与产业规模 2、发展现状 3、竞争格局分析 二、典型工业制造领域自然导航 AGV/AMR 企业分析 1、中国移动机器人(AGV)细分品类分析 2、产业生态组成与特点 3、代表企业分析 杭州迦智科技有限公司 快 仓 智 能 科 技 有 限 公 司 未来机器人(深圳)有限公司 山东蓬翔汽车有限公司 浙江国自机器人技术股份有限公司 深圳优艾智合机器人科技有限公司 斯坦德机器人 ( 深圳 ) 有限公司 上海节卡机器人科技有限公司 第三章:中国新经济形势下工业制造领域自然导航 AGV/AMR 市场需求分析 一、新经济形势下的智造工厂物流新需求特点 二、工业物流新需求的驱动因素——数字化工厂,帮助企业进一步降本增效 三、工业物流市场新需求与未来增长趋势 第四章:工业制造领域自然导航 AGV/AMR 应用细分市场分析 一、应用环节划分(产线物流、仓储物流与园区物流 1、产线物流 2、仓储物流 3、园区物流 二、细分行业划分 1、细分市场:半导体及电子行业 2、细分市场:面板行业 3、细分市场:新能源光伏行业 4、细分市场:输配电与控制设备行业 5、细分市场:PCB 行业 6、细分市场:园区级室外重载无人驾驶机器人选型特点与分析 7、细分市场:离散制造业 第五章:工业制造领域自然导航 AGV/AMR 应用案例 一、半导体行业 案例 1:半导体工厂百级无尘车间智能物流升级项目 案例 2:国内知名半导体晶圆生产企业内部智能物流搬运项目 案例 3:半导体工厂 SMT 车间柔性物流 二、电子行业 案例 1:日本著名打印机生产企业柔性物流配送项目 案例 2:电子制造车间快速高频换线项目 案例 3:ODM 专业代工工厂智能物料搬运项目 案例 4:电子行业数字化车间无人搬运项目 三、5G 设备制造业 案例 1:国内大型通信设备公司无线小基站智能工厂项目 四、面板行业 案例 1:柔性屏生产企业智能物流转运和上下料项目 案例 2:知名显示器制造企业内部物流智能化项目 五、输配电与成套设备制造行业 案例 1:智能配电设备绿色数字化生产基地建设项目 案例 2:电气设备行业智能制造数字化工厂项目 六、新能源光伏行业 案例 1:知名光伏电池片生产企业制造物流转型升级项目 七、医药行业 案例 1:世界闻名的药用包装行业龙头企业重型物料柔性化频繁转运项目 案例 2:国内首批非港口园区级室外重载运输项目 案例 3:国内首批医药智能仓储机器人项目正式上线运营 八、汽车汽配行业 案例 1:汽车零部件线边柔性配送及高层货架智能上下架项目 案例 2:为知名汽配企业打造室外重载智能物流机器人项目 案例 3:某知名汽车制造企业室内外车桥智能化转运项目 案例 4:某汽配制造企业室内外轮毂制动鼓智能化转运项目 案例 5:汽车零配件企业无人仓储解决方案 九、食品行业 案例 1:某食品生产企业智能物料配送项目 十、离散制造业 案例 1:纺织服装企业智造升级项目 案例 2:打造全球领先的服装行业智能机器人解决方案 案例 3:某办公文具生产商智慧物流项目 第六章:工业制造领域自然导航 AGV/AMR 技术发展与趋势 一、技术发展历史 二、技术发展现状 三、技术发展趋势 1、更多样的导航方案 2、与 5G 及 AI 等新技术的加速融合 3、更高效的多机协同 第七章:工业领域自然导航 AGV/AMR 产业发展趋势展望 一、自然导航 AGV/AMR 与物流的融合之路 二.产业发展趋势 三、商业模式探讨 第八章:中国移动机器人工业物流方向发展策略与投资建议 一、坚持产品创新的领先战略 二、坚持细分突围战略 三、坚持合作共赢战略 四、坚持品牌建设的引导战略 五、坚持工艺技术创新支持战略 六、坚持市场营销及服务创新的决胜战略 七、实施国际化发展策略 八、对工业应用移动机器人行业发展建议 发布单位:中国移动机器人产业联盟等 发布时间:2020年12月
IFCS Intelligent Face Capture System(智能人脸抓拍系统),本方案是基于CPU实现的,如需更好的性能,需要参考本方案思想改造成GPU的版本。 背景 智能摄像头(抓拍机)将人脸检测功能集成到网络摄像头内部,价格昂贵,智能检测功能与硬件高度集成,不利于后续功能扩展。 大量已有普通网络摄头没有被充分利用 目标 1.构建一种更通用的AI+视频监控的解决方案 2.充分利用现有资源,给普通网络摄像头赋能 建设方案(单节点模式) 在只有数十个摄像头的场景(个人认为30个以下),应用单节点方案就能解决问题。在摄像头更多的场景,应用集群模式是一种更好的解决方案。 架构设计 线程模式 A. 一个线程(生产者)轮询所有的监控摄像头,以固定的频率读取摄像头的实时数据; B. 将这些实时数据放入摄像头对应的分片中(Partition,同步阻塞队列); C. 每个分片都有一个线程(消费者)去消费该分片里面的数据。 因为人脸检查、人脸比对都是CPU密集型操作,每个线程消费一个分片和一个线程消费所有分片效果差不多,通过后面的实验数据也可以证明这一点,即使是多线程 ,响应时间基本也是线性增长的,并不能体现多线程的优势,因为单个人脸检查任务CPU占用率就接近80%。 建设方案(集群模式) 人脸检测&人脸去重 由于,检测对象可能长时间处在视频监控范围之内,因此,该时间段的视频帧充斥着大量重复检测对象。对所有重复对象都去做后续的1:N人脸识别显然不合理,因此需要合理的去重设计。 不同的人脸检测算法,其识别率、资源占用率不尽相同。但总的来说,人脸检测是一种CPU密集型操作,本课题原型采用自OpenCV封装的哈尔级联人脸检测算法。经测试,该算法检测单帧耗时300ms左右,CPU占用率接近80%。 A. 利用openCV人脸检测算法,找出帧里面包含的所有人脸,并保存至临时缓存。(为方便比对,缓存中存放的是经特征提取后的特征值) B. 将第一步的人脸逐一和缓存中的人脸比对,缓存中没有的人脸则保存下来发往下一步业务逻辑 C. 用第一步得到的人脸替换缓存中的人脸 去重原理-1: 去重原理-2: 去重原理-3: 去重原理-4: 性能测试(单节点模式) 实验结果表明,一个消费者(线程)任务耗时300ms、CPU占用率达到80%,随着消费者数目增多,任务耗时延长,CPU占用率进一步增高;当消费者(线程)任务达到8个时,平均任务完成耗时为2000ms,CPU占用率高达95%以上。(英特尔 Core i7-8550U @ 1.80GHz 四核 ,核心数: 4 / 线程数: 8) 抓拍机以海康威视的产品举例,其价格在2000元左右,IFCS节点服务器为一台价格4800元的个人电脑,普通网络摄像头在200元左右。从数据中可以得知,当监控数量等于3时,本方案能节省10%的成本,并且响应时间和抓拍机基本一致;当监控数量等于6时,本方案能节省50%的成本,并且最长响应时间不足2秒;随着监控点数量越多,节省的成本越多,相应的响应时间越长。 环境配置(集群模式) linux Zookeeper配置 Kafka配置 Hadoop配置 windows Zookeeper配置 (https://www.jianshu.com/p/f7037105db46) Kafka配置(https://www.jianshu.com/p/64d25dcf8300) Hadoop配置: 下载Haddop 修改hadoop-x.x.x/etc/hadoop/hadoop-env.cmd中的JAVA_HOME (路径不能空格) 展望 增加GPU图像处理单元,提升图像处理效率,以便单个IFCS节点能负载更多的摄像机。 转载自:https://github.com/xuzhijvn/ifcs
我知道ShuffleNet V1 是用于图像分类的轻量级卷积神经网络模型,但它具体是一个什么样的架构和工作原理呢?蹲蹲蹲答案🤞
由纯python编写的轻量级音乐下载器。 文档 https://musicdl.readthedocs.io/ 说明 支持平台 网站 搜索 下载 中文 QQ ✓ ✓ QQ音乐 Lizhi ✓ ✓ 荔枝FM Yiting ✓ ✓ 一听音乐 Kuwo ✓ ✓ 酷我音乐 Kugou ✓ ✓ 酷狗音乐 Xiami ✓ ✓ 虾米音乐 Qianqian ✓ ✓ 千千音乐 Migu ✓ ✓ 咪咕音乐 JOOX ✓ ✓ JOOX音乐 Fivesing ✓ ✓ 5SING音乐 Netease ✓ ✓ 网易云音乐 baiduFlac ✓ ✓ 百度无损音乐 安装 Pip 安装 源代码下载 (1) 离线 (2) 在线 快速开始 屏幕截图 来源https://github.com/CharlesPikachu/musicdl
深度照片风格转换 论文《Deep Photo Style Transfer》的代码和数据 设置 此代码基于torch,它已经在Ubuntu 14.04 LTS上进行了测试。 依赖: Torch (with matio-ffi and loadcaffe) Matlab or Octave CUDA后端: CUDA cudnn 下载VGG-19: 编译cuda_utils.cu(在makefile中调整PREFIX和NVCC_PREFIX): 用法 快速开始 要使用提供的脚本生成所有结果(在examples/),只需运行: 在Matlab或Octave中输入以下命令: 最终输出结果在examples / final_results /中。 基本用法 给定带有语义分割蒙版的输入图像和样式图像,将它们分别放在examples /中。 它们将具有以下文件名形式:examples / input / in <id> .png,examples / style / tar <id> .png和examples / segmentation / in <id> .png,examples / segmentation / tar <id>.png; 在Matlab中使用gen_laplacian / gen_laplacian.m计算抠图拉普拉斯矩阵,输出矩阵将具有以下文件名形式:gen_laplacian / Input_Laplacian_3x3_1e-7_CSR <id> .mat; 注意:请确保内容图像分辨率与Matlab中的Matting Laplacian计算和Torch中的样式转换一致,否则结果将不正确。 运行以下脚本以生成分段的中间结果: 运行以下脚本以生成最终结果: 你可以将-backend cudnn和-cudnn_autotune传递给两个Lua脚本(步骤3.和4.),从而潜在地提高速度和内存使用率。libcudnn.so必须位于LD_LIBRARY_PATH中,这需要cudnn.torch。 图像分割 注意:在论文中,使用从DilatedNet修改而来的自动场景分割算法生成所有比较结果。手动分段可实现更多不同的任务,因此我们在examples/segmentation/中提供了掩膜(mask)。 我们所使用的掩膜颜色(你可以在两个* .lua文件的ExtractMask函数中添加更多颜色): 颜色 RGB值 十六进制值 blue 0 0 255 0000ff green 0 255 0 00ff00 black 0 0 0 000000 white 255 255 255 ffffff red 255 0 0 ff0000 yellow 255 255 0 ffff00 grey 128 128 128 808080 lightblue 0 255 255 00ffff purple 255 0 255 ff00ff 以下是一些用于为照片图像创建分割mask的自动和手动工具: 自动: MIT Scene Parsing SuperParsing Nonparametric Scene Parsing Berkeley Contour Detection and Image Segmentation Resources CRF-RNN for Semantic Image Segmentation Selective Search DeepLab-TensorFlow 手动: Photoshop Quick Selection Tool GIMP Selection Tool GIMP G'MIC Interactive Foreground Extraction tool 举例 这是算法的一些结果(从左到右是输入,样式和我们的输出): 来源https://github.com/luanfujun/deep-photo-styletransfer
Vue树列表 树结构的Vue组件。支持添加treenode / leafnode,编辑节点名称并拖动。 安装 安装插件,然后就可以全局使用该组件了。 使用 npm install vue-tree-list 工具 Vue树列表的工具 名称 类型 默认值 描述 模型 TreeNode - 可以使用const head = new Tree([])生成TreeNode类型为head的树 默认树节点名称 string New node node 新树节点的默认名称 默认叶子节点名称 string New leaf node 新LeafNode的默认名称 默认扩展 boolean true 树是否展开 TreeNode的工具 属性 方法 事件 自定义操作图标 该组件具有默认的图标addTreeNodeIcon,addLeafNodeIcon,editNodeIcon,delNodeIcon,leafNodeIcon,treeNodeIcon按钮,而且还可以自定义他们,并且可以访问model,root,expanded如下图所示: 转载自:https://github.com/ParadeTo/vue-tree-list
案例分析 互联网某电影评论网站,主要产品包括 电影介绍 电影排行 网友对电影打分 网友影评 影讯&购票 用户在看|想看|看过的电影 猜你喜欢(推荐) 利用用户对电影的打分表来给用户推荐电影,用户打分表包括以下细分 userID--用户ID号 itemID--电影ID号 得分 基于物品的协同过滤算法 建立物品的同现矩阵 建立用户对物品的评分矩阵 矩阵计算推荐结果 MapReduce实现 程序流程图 Java类说明 Recommend.java--主任务启动程序 Step1.java--按用户分组,计算所有物品出现的组合列表,得到用户对物品的评分矩阵 Step2.java--对itemID组合列表进行计数,建立其同现矩阵 Step3.java--对同现矩阵和评分矩阵进行转换,进行后续处理 Step4_Update.java--矩阵相乘乘法部分 Step4_Update2.java--矩阵相乘加法部分 Step5.java--对结果进行过滤和排序 HDFSFile.java--HDFS路径文件操作类 SortHashMap.java--HashMap排序类 程序输出结果 步骤1: 步骤2 : 步骤 3_1用户评分矩阵 转换: 步骤3_2同现矩阵转换: 步骤4: 步骤5: 该项目基于炼制数成金《 Hadoop应用开发实战案例第六期》所提供的案例进行优化 转载自:https://github.com/ParadeTo/Recommend
推荐圈子