OrangePi Kunpeng Pro深度评测:性能与体验的完美融合

文章目录

  • 一、引言
  • 二、硬件开箱与介绍
      • 1.硬件清单
      • 2.硬件介绍
  • 三、软件介绍
  • 四、性能测试
      • 1. 功率测试
      • 2. cpu测试
        • 2.1 单线程cpu测试
        • 2.2 多线程cpu测试
  • 五、实际开发体验
      • 1. 搭建API服务器
      • 2. ONNX推理测试
      • 3. 在线推理平台
  • 五、测评总结
      • 1. 能与硬件配置
      • 2. 系统与软件
      • 3. 实际开发体验
      • 个人总结

一、引言

近期,香橙派(Orange Pi) 联合华为再次发布力作—OrangePi Kunpeng Pro。这是两家公司合作发布OrangePi AI pro之后的又一力作。OrangePi Kunpeng Pro是一块基于鲲鹏面向开发者的开发板,具有鲲鹏主板的完整能力,内置 openEuler 开源操作系统、openGauss 开源数据库和鲲鹏开发套件 DevKit。这意味着香橙派将成为面向通用计算的鲲鹏和面向人工智能计算的昇腾两大计算产业的参与者。通过搭载华为的“鲲鹏+昇腾”双引擎,国产开发板将在通用计算和人工智能计算方面迈上新的高度。

此次非常荣幸能够测评OrangePi Kunpeng Pro,下面给出官方的配置介绍:

  1. OrangePi Kunpeng Pro采用4核64位处理器+AI处理器,集成图形处理器,支持8TOPS AI算力,拥有8GB/16GB LPDDR4X,可以外接32GB/64GB/128GB/256GB eMMC模块,支持双4K高清输出。
  2. OrangePi Kunpeng Pro引用了相当丰富的接口,包括两个HDMI输出、GPIO接口、Type-C电源接口、支持SATA/NVMe SSD 2280的M.2插槽、TF插槽、千兆网口、两个USB3.0、一个USB Type-C 3.0、一个Micro USB(串口打印调试功能)、两个MIPI摄像头、一个MIPI屏等,预留电池接口等。
  3. OrangePi Kunpeng Pro支持openEuler操作系统,满足大多数AI算法原型验证、推理应用开发的需求,同时可以为各种应用场景提供更高效的算力,如云计算、大数据、分布式存储、高性能计算等。

二、硬件开箱与介绍

1.硬件清单

在这里插入图片描述

图2.1 硬件清单

附带清单:开发板1,电源65W头1,C口数据线1,32G内存卡1(附带openEuler系统)(这里值得提一下的是,香橙派官方提供的Type-c 快速充电器,支持65W快充,非常nice!!👍)
开发板正面

图2.2 开发板正面

首次看到OrangePi Kunpeng Pro开发板子,我的第一感觉就是做工极为扎实。深黑色的PCB板散发着一种高端而专业的气质。仔细观察之下,我发现OrangePi Kunpeng Pro设计既合理又规整,配备了一个大型散热器,能有效地为板子散热,确保CPU性能得以充分发挥。但是,我发现天线是一片金属箔,在使用时,我们确实需要特别留意,不要将这片金属箔置于PCB板下方,因为这可能会导致短路的风险。

2.硬件介绍

  • 处理器和存储方面:
    OrangePi Kunpeng Pro搭载了强大的4核64位处理器集成AI处理器,提供了高达8 TOPS的AI算力,能够应对复杂的计算任务。其内存采用LPDDR4X,容量可选8GB或16GB,速率高达3200 Mbps。存储方面,支持多种存储选项,包括32MB的SPI FLASH、可扩展的SATA/NVME SSD(M.2接口2280)以及32GB至256GB的eMMC 5.1 HS400,还配备了TF卡插槽,确保存储灵活性。
    开发板背面
图2.3 开发板背面

开发板详细介绍

图2.4 开发板详细介绍
  • 网络连接与串口通信方面:
    网络连接通信方面,设备支持Wi-Fi 5双频(2.4G和5G)蓝牙4.2/BLE,提供了千兆以太网接口,保证高速稳定的网络传输。显示接口丰富,包括2个支持4K@60帧的HDMI 2.0接口和1个MIPI DSI接口,满足高分辨率显示需求。摄像头接口兼容树莓派摄像头,提供2个2-lane MIPI CSI接口。USB接口齐全,包括2个USB 3.0 HOST接口、1个USB Type-C 3.0 HOST接口和1个用于串口打印的Micro USB接口。音频方面,配备3.5mm耳机孔,支持音频输入输出。设备还配有多种按键和扩展接口,包括关机键、RESET键、启动方式拨动键、烧录按键,以及40PIN功能扩展接口,支持GPIO、UART、I2C、SPI、I2S、PWM等多种外设连接。

开发板接口

图2.5 开发板接口

开发板硬件详细规格参数

图2.6 开发板硬件详细规格参数

经过上述的介绍,我们不难发现OrangePi Kunpeng Pro的配置相当高端,接口设计极为丰富。与树莓派系列相比,OrangePi Kunpeng Pro无需额外购买转换器,为用户实际开发提供了极大的便利。而最让我兴奋的是,OrangePi Kunpeng Pro竟然配备了M.2接口,这一接口不仅兼容SATA/NVME SSD协议,还支持eMMC存储方案,这无疑大大拓宽了其存储应用的可能性。

三、软件介绍

在介绍软件之前先开机进入系统,当插入电源后板子就自动开机(接电自动开机,在实际开发过程中这个是非常方便的👍), 此时会听到风扇正在高速运转,大概半分钟左右,风扇恢复正常转速,几乎没有噪声(除非耳朵贴近)。然后,使用HDMI线连接显器,可以发现已经进入系统的登录界面,如图3.1。原厂已经预先烧录了openEuler系统,这一点无疑让我赞赏。对于初学者来说,这种即插即用的体验十分友好,省去了许多自行安装系统的繁琐步骤,让学习变得更加轻松和高效。
系统登录界面

图3.1 系统登录界面

开机这里在我测试的过程中遇到了一个小麻烦,当我先连接HDMI视频线到显示器后再插电源开机,发现显示器并没有正常显示而是无信号连接,后来经过多次尝试,发现先接通电源线开机,等风扇转速稳定后再连接HDMI线就可以正常显示了。这个问题不知道是缺陷还是还是我的板子问题。
如图3.1所示,出厂已经烧录了openEuler系统,默认的账号和密码均为openEuler

输入密码进入系统发现和常见的Linux桌面差不多。

openEuler桌面

图3.2 openEuler桌面

简单的打开软件和浏览网页,非常的流畅丝滑,这无疑证明了软件与硬件之间的协同优化达到了极高水平。这种出色的表现,不仅彰显了系统的高效运行能力,也体现了制造商在软硬件结合方面的精湛技艺。简而言之,这款产品的流畅体验,正是软硬件优化完美结合的最好诠释。

打开终端,输入cat /etc/os-release查看系统版本信息。

查看系统版本信息

图3.3 查看系统版本信息

我拿到的是22.03(LTS-SP3)版本。

仔细观察发现系统的时间不正确,我们先连接网络,打开设置,找到Wi-Fi,选择WIFI进行连接。

连接Wi-Fi

图3.4 连接Wi-Fi

连接后打开设置,找到日期和时间,点击解锁

设置时间

图3.5 设置时间

设置这里需要输入admin密码依然是openEuler

获取权限后,选择自动设置日期和时间和正确的时区

设置自动日期和时间

图3.6 设置自动日期和时间

观察发现,系统还预装了vs code。👍

软件方面总结来说分为以下几点:

  • 系统预装了openEuleropenGaussDevKit。内置的openEuler操作系统和openGauss数据库提供了高效、稳定和安全的体验,支持多种硬件架构和虚拟化技术,适用于各种企业级边缘计算应用场景。内置的DevKit开发工具集成了编辑、编译、调试、测试和优化工具,满足端到端开发需求。
  • 这款设备还助力高校计算机系统能力的教学,支持设计计算机系统能力课程,适用于服务器课程创新、云计算课题创新、边缘计算课程创新以及嵌入式课程创新。一块OrangePi Kunpeng Pro即可满足从本科到研究生的系统化学习需求。
  • 设备提供类似PC的桌面环境,支持图形化桌面(如gnome)、浏览器(如firefox)、文本编辑器(如gedit)、中文输入法和shell终端,简化了上手难度。
  • 设备还支持鲲鹏全栈原生开发,适用于开发各种创新应用场景,包括教育教学、无人机、小车、智能家居、机械手臂和物联网等。

四、性能测试

在测试开始前,我首先尝试了一下远程SSH连接。由于我当前的环境并不具备直接连接局域网的条件,我便利用了笔记本电脑的网络共享功能。我将OrangePi Kunpeng Pro设备连接到笔记本所共享的网络上,这样简单地构建了一个临时局域网环境,为接下来的测试工作做好了准备。
笔记本端

图4.1 笔记本端

成功建立连接后,在笔记本上能发现OrangePi Kunpeng Pro的IP地址。随后,我使用xshell进行尝试远程连接。板子默认安装和开启了ssh,只需在xshell中输入正确的IP地址、账号以及密码,即可迅速与板子建立连接,这一流程简洁而高效。如图4.2所示,连接成功后,我们可以清晰地看到一些简单的连接信息和系统状态。这些信息不仅帮助我们确认连接已建立,还为我们提供了关于系统当前状态的直观了解。

在这里插入图片描述

图4.2 连接信息

1. 功率测试

我这里正好有一个充电器电压测试模块,关机------连接开发板进行测试。

OrangePi Kunpeng Pro开机功率测试

通过上方视频可以发现,在刚开始风扇处于高转速模式,实际功率在12w左右,风扇变为正常转速时实际功率在9w左右。

OrangePi Kunpeng Pro轻度负载功率测试

通过浏览器播放视频,功率在10w左右。

2. cpu测试

  • 系统更新
    更新yum包管理器,使用下方命令:
    sudo yum update -y
    结果:
    yum更新
图4.3 yum更新

安装测试工具

使用以下命令:

sudo yum install sysbench

安装结果:

安装测试工具

图4.4 安装测试工具
2.1 单线程cpu测试

使用 sysbench 进行单线程 CPU 测试的命令如下:

sysbench --test=cpu --cpu-max-prime=20000 --num-threads=1 run

参数说明:

  • --test=cpu:指定测试类型为 CPU。
  • --cpu-max-prime=20000:设定一个较大的素数上限,增加计算量。
  • --num-threads=1:设置线程数量为 1,也就是单线程测试。

结果:

单线程cpu测试

图4.5 单线程cpu测试

sysbench 单线程 CPU 测试中,CPU 以每秒 814.75 个事件的速度处理任务,总共处理了 8152 个事件。平均每个事件的延迟为 1.23 毫秒,延迟非常稳定,最大延迟仅为 1.83 毫秒。测试运行了 10 秒,显示出 CPU 在单线程任务中的高效和稳定性能。

2.2 多线程cpu测试

使用 sysbench 进行多线程 CPU 测试的命令如下:

sysbench --test=cpu --cpu-max-prime=20000 --num-threads=4 run

参数说明:

  • --test=cpu:指定测试类型为 CPU。

  • --cpu-max-prime=20000:设定一个较大的素数上限,增加计算量。

  • --num-threads=4:设置线程数量为 4,表示进行多线程测试。

结果:

多线程cpu测试

图4.5 多线程cpu测试

sysbench 多线程 CPU 测试中,使用 4 个线程运行。结果显示 CPU 每秒处理 2424.78 个事件,总共处理了 24262 个事件。平均每个事件的延迟为 1.65 毫秒,最小延迟为 1.22 毫秒,最大延迟为 26.24 毫秒,95 百分位延迟为 1.32 毫秒。每个线程平均处理 6065.5 个事件,标准偏差为 1434.94,表明线程间的负载分布略有不均。测试总时间为 10 秒,显示了 CPU 在多线程任务下的性能和延迟情况。

五、实际开发体验

1. 搭建API服务器

这里我尝试搭建一个简单的API微型服务器,选择python的Django后端框架开发API接口,接下来上传代码进行简单的测试。

先在主目录下创建一个www文件夹用于存放网站文件。

创建目录

图5.1 创建目录

这里我通过FileZilla是同SFTP进行连接上传代码文件,上传完成后对代码进行解压。

输入python命令时,发现系统已经自带了Python 3.9的环境,这一点非常便利和值得称赞。这意味着我们无需额外安装Python,就可以直接开始编写和运行Python代码了。这种预安装的环境将极大地提高我们的开发效率,让我们能够更快地投入到实际的编程工作中。

python测试

图5.2 python测试

使用pip install -r requirements.txt安装环境。

环境安装

图5.3 环境安装

安装完成后,使用命令 python manage.py runserver 0.0.0.0:8080启动项目发现速度非常的快。

启动项目

图5.4 启动项目

启动成功后,系统默认没有启用防火墙,我们可以在局域网内直接进行访问。

项目启动结果

图5.5 项目启动结果

访问成功而且速度非常的快

2. ONNX推理测试

这里我使用了PaddleDetection 的 PublicPP-PicoDet超轻量实时目标检测模型,使用官方的demo官方的进行测试。
点击上方的链接,我们下载后上传到服务器并解压。

安装环境包
pip install opencv-python tqdm onnxruntime -i https://pypi.tuna.tsinghua.edu.cn/simple/

结果:

项目启动结果

图5.6 项目启动结果

在刚才的的官方demo页面下载官方提供的ONNX( w/ 后处理)并上传到服务器。

我们进入到demo的文件目录,使用命令python main.py --modelpath picodet_xs_320_lcnet_postprocessed.onnx(注意替换模型路径)
运行结果

图5.6 运行结果

可以看到运行成功,速度非常的快。

3. 在线推理平台

我们结合前小节,简单的搭建一个在线检测平台。

  • 配置 URL 路由。在 image_processor/urls.py 中添加 process 的路由:
from django.contrib import admin
from django.urls import path, includeurlpatterns = [path('admin/', admin.site.urls),path('process/', include('process.urls')),
]
  • 创建 process/urls.py 文件并添加路由:
from django.urls import path
from . import viewsurlpatterns = [path('', views.process_image, name='process_image'),
]
  • 编写视图来处理图像上传和处理。在 process/views.py 中添加以下代码:

    from django.http import HttpResponse
    import cv2
    import numpy as np
    import iofrom apiai.det_api import PicoDetdef process_image(request):if request.method == 'POST':if 'image' not in request.FILES:return HttpResponse('No image uploaded', status=400)image_file = request.FILES['image']image = cv2.imdecode(np.fromstring(image_file.read(), np.uint8), cv2.IMREAD_COLOR)net = PicoDet("./apiai/picodet_xs_320_lcnet_postprocessed.onnx", "./apiai/coco_label.txt")srcimg = net.detect(image)# 将处理后的图像保存到字节流_, img_encoded = cv2.imencode('.jpg', srcimg)img_io = io.BytesIO(img_encoded)return HttpResponse(img_io.getvalue(), content_type='image/jpeg')return HttpResponse('Invalid request method', status=405)
  • 将前端的 index.html 文件放在Django项目的静态文件目录中,并确保 settings.py 中配置了静态文件目录:

    python复制代码STATICFILES_DIRS = [BASE_DIR / "static",
    ]
    
  • 运行Django开发服务器:

    python manage.py runserver 0.0.0.0:8080

    结果:

平台运行结果

图5.6 平台运行结果

笔者在笔记本打开浏览器访问 http://ip:8000/static/index.html 来打开页面。

平台显示结果

图5.6 平台显示结果

访问成功!

我们上传照片测试推理。

在这里插入图片描述

同过上方动图可以发现推理速度非常的快。

五、测评总结

1. 能与硬件配置

OrangePi Kunpeng Pro 在硬件配置上无疑是极其强大的。其搭载的4核64位处理器和集成AI处理器,能够提供高达8 TOPS的AI算力,内存最高可达16GB LPDDR4X,确保了在处理复杂任务时的高效性能。同时,多样化的存储选项(包括支持SATA/NVME SSD的M.2插槽、eMMC模块和TF卡插槽)提供了极大的存储灵活性。丰富的接口设计(如双4K HDMI输出、USB 3.0、USB Type-C等)满足了各种外设连接需求,适用于多种应用场景。

2. 系统与软件

预装的openEuler系统及其流畅的运行表现,展现了硬件与软件的高度协同优化。系统的默认安装和设置友好,特别适合初学者入门。同时,设备支持openGauss数据库和鲲鹏开发套件DevKit,为开发者提供了丰富的工具和资源。这些预装的软件不仅提升了设备的易用性,也使其在教育、研究和开发等多个领域具有广泛的应用前景。

3. 实际开发体验

在实际开发测试中,OrangePi Kunpeng Pro展现出了卓越的性能表现。通过搭建API服务器和进行ONNX模型的推理测试,设备表现出极高的处理速度和稳定性。在搭建在线推理平台时,其出色的处理能力和响应速度进一步证明了其在AI计算和实时任务中的应用潜力。

优势:

  1. 高性能处理器和AI算力:适用于复杂的计算任务和AI推理。
  2. 丰富的接口和扩展性:支持多种外设连接,满足各种开发需求。
  3. 预装系统和开发工具:简化了初学者的上手难度,提供了丰富的开发资源。
  4. 高效的软硬件协同:流畅的系统运行体验,极大提升了开发效率。

优化建议:

  1. 视频输出问题:在测试过程中发现HDMI连接需要在设备启动后进行,否则可能出现无信号的情况。
  2. 初期设置:虽然系统预装了openEuler,但某些初始设置(如时间设置)仍需手动调整。
  3. 电源接口:这个板子有两个Type-c接口,第一次拿到不查询手册,很难确定哪个是电源接口,建议在电源接口做一下区分(比如:印刷一个闪电的标注)。

个人总结

OrangePi Kunpeng Pro是一款性能卓越、配置丰富的开发板,适用于AI计算、边缘计算、物联网等多种应用场景。其强大的处理器和丰富的接口设计,使其在高性能计算和实际开发中具有广泛的应用前景。尽管在某些细节上存在改进空间,但总体而言,这款设备无疑是开发者和学习者的理想选择。通过这次评测,可以看出OrangePi Kunpeng Pro不仅在硬件和软件方面表现出色,更在实际应用中展示了其强大的功能和潜力。

对于笔者个人来说,整体评测下来OrangePi Kunpeng Pro给了我很多的惊喜。首先,它强大的硬件配置和出色的性能表现让我印象深刻。无论是处理复杂的计算任务还是运行大型的应用程序,它都能够轻松应对,展现出卓越的计算能力。

其次,openEuler开源操作系统和openGauss开源数据库的内置,为开发者提供了极大的便利。openEuler以其稳定、可靠和高效的特点,为服务器提供了坚实的基础。而openGauss作为一款高性能的分布式关系型数据库,为数据的存储和查询提供了强大的支持。这两个开源项目的结合,使得OrangePi Kunpeng Pro在软件开发和数据管理方面具备了出色的能力。

再者,DevKit开发套件的配备也让我对这款开发板赞不绝口。它提供了丰富的开发工具和资源,使得开发者能够更加高效地进行开发工作。无论是进行底层驱动的开发,还是进行上层应用的构建,DevKit都能够提供强大的支持,帮助开发者快速实现自己的创意和想法。

此外,OrangePi Kunpeng Pro还具有良好的兼容性和扩展性。它支持国产的openEuler操作系统和开发环境,能够满足不同开发者的需求。同时,它还提供了丰富的接口和扩展槽,方便开发者连接各种外部设备和传感器,实现更加丰富的功能和应用。

总的来说,OrangePi Kunpeng Pro给我带来了很多惊喜。它不仅在硬件性能上表现出色,更在软件生态和扩展性方面具备了强大的能力。我相信这款开发板将会成为未来开发者们进行项目开发的重要工具之一,为各种应用场景提供强大的支持,是一款性价比极高的开发版,非常值得购入!!!

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

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

相关文章

144、二叉树的前序递归遍历

题解: 递归书写三要素: 1)确定递归函数的参数和返回值。要确定每次递归所要用到的参数以及需要返回的值 2)确定终止条件。操作系统也是用栈的方式实现递归,那么如果不写终止条件或者终止条件写的不对,都…

Maven项目的创建

目录 1、Maven简介配置(1)设置本地仓库(2)修改Maven的jdk版本(3)添加国内镜像源添加到idea中 2、常用命令3、IDEA2023创建Maven项目(1)Maven和Maven Archetype区别(1-1&a…

内存管理--3.用幻灯片讲解C++手动内存管理

用幻灯片讲解C手动内存管理 1.栈内存的基本元素 2.栈内存的聚合对象 3.手动分配内存和释放内存 注意:手动分配内存,指的是在堆内存中。 除非实现自己的数据结构,否则永远不要手动分配内存! 即使这样,您也应该通过std::allocator…

rv1126-rv1109-openssh-密码秘钥等功能修改

1.openssh是允许外部登录的工具 2.真的是很复杂的设备 3.移植分布,怎么得到我们想要的openssh 去网上自己寻找安装包下载; 4.怎么预制进arm主板,把编译出来的openssh放进去 其中除了ssh_config和sshd_config;其他都是秘钥,公钥和私钥; root账户走的秘钥的修改,不改是默认的r…

Web 网页性能优化

Web 网页性能及性能优化 一、Web 性能 Web 性能是 Web 开发的一个重要方面,侧重于网页加载速度以及对用户输入的响应速度 通过优化网站来改善性能,可以在为用户提供更好的体验 网页性能既广泛又非常深入 1. 为什么性能这么重要? 1. 性能…

SpringBoot+Vue体育馆管理系统(前后端分离)

技术栈 JavaSpringBootMavenMySQLMyBatisVueShiroElement-UI 角色对应功能 学生管理员 功能截图

SpringBoot: 启动流程和类装载

前面我们学过Spring定制了自己的可执行jar,将真正执行时需要的类和依赖放到BOOT-INF/classes、BOOT-INF/lib来,为了能够识别这些为止的源文件,Spring定制了自己类加载器,本节我们来讲解这个类加载器。本节涉及的内容主要包括: Sp…

网络协议三

数据中心 一、DNS 现在网站的数目非常多,常用的网站就有二三十个,如果全部用 IP 地址进行访问,恐怕很难记住 根 DNS 服务器 :返回顶级域 DNS 服务器的 IP 地址 顶级域 DNS 服务器:返回权威 DNS 服务器的 IP 地址 …

uni-app uni-swipe-action 滑动操作状态恢复

按照uni-app官方文档的写法 当前同一条滑动确认之后 页面列表刷新 但是滑动的状态还在 入下图所示: 我们需要在滑动确认之后 页面刷新 滑动状态恢复 那么我们就来写一下这部分的逻辑: 首先,配置一下:show"isOpened[item.id]" chan…

数据结构(C):二叉树前中后序和层序详解及代码实现及深度刨析

目录 🌞0.前言 🚈1.二叉树链式结构的代码是实现 🚈2.二叉树的遍历及代码实现和深度刨析代码 🚝2.1前序遍历 ✈️2.1.1前序遍历的理解 ✈️2.1.2前序代码的实现 ✈️2.1.3前序代码的深度解剖 🚝2.2中序遍历 ✈…

CentOs7 JDK21 安装

CentOs7 JDK21 安装 准备工作 先检查系统是否之前已经安装了jdk 。如果已经安装的话需要卸载。 方式一:使用压缩包的方式 下载jdk21的压缩包 https://www.oracle.com/java/technologies/downloads/ 将下载的gz压缩包上传到服务器并解压 # 创建文件夹 (你可以自…

【Python】读取文件夹中所有excel文件拼接成一个excel表格 的方法

我们平常会遇到下载了一些Excel文件放在一个文件夹下,而这些Excel文件的格式都一样,这时候需要批量这些文件合并成一个excel 文件里。 在Python中,我们可以使用pandas库来读取文件夹中的所有Excel文件,并将它们拼接成一个Excel表…

yarn保姆级安装和使用

目录 前言 一、yarn简介 主要特性 使用场景 二、yarn的安装 yarn的下载 配置环境变量 三、yarn的常用命令 四、yarn的常用配置项 五、npm与yarn的区别 前言 本文旨在介绍如何安装和使用Yarn,以及它的一些常见用法。我们将从Yarn的基本概念开始,…

卡尔曼滤波器例子

卡尔曼滤波器 卡尔曼滤波器(Kalman Filter)是一种用于线性系统状态估计的递归算法,可以有效地融合传感器数据和系统模型来估计系统的状态。它在机器人学中广泛应用,尤其是位置和速度等状态的估计。通过卡尔曼滤波器,可以有效地估计机器人在二维平面内的真实位置,并减小测…

【JavaEE】Spring IoCDI详解

一.基本概念 1.Ioc基本概念 Ioc: Inversion of Control (控制反转), 也就是说 Spring 是⼀个"控制反转"的容器. 什么是控制反转呢? 也就是控制权反转. 什么的控制权发发了反转? 获得依赖对象的过程被反转了也就是说, 当需要某个对象时, 传统开发模式中需要自己通…

商城项目【尚品汇】08异步编排

文章目录 1.线程的创建方式1.1继承Thread类,重写run方法1.2实现Runnable接口,重写run方法。1.3实现Callable接口,重新call方法1.4以上三种总结1.5使用线程池创建线程1.5.1线程池创建线程的方式1.5.2线程池的七大参数含义1.5.3线程池的工作流程…

视觉SLAM十四讲:从理论到实践(Chapter9:后端1)

前言 学习笔记,仅供学习,不做商用,如有侵权,联系我删除即可 一、目标 1.理解后端的概念。 2.理解以EKF为代表的滤波器后端的工作原理。 3.理解非线性优化的后端,明白稀疏性是如何利用的。 4.使用g2o和Ceres实际操作…

报表或者BI的价值在哪?这是十几年的问题啦!

对,问题已经十几年了,答案也应该普世都懂了吧,但非常遗憾,答案没有问题普及的广。看似简单,但也难说清楚,不同的人,总会有不同的看法。 为什么要解释这个并不新鲜的问题? 因为有人问…

阅读笔记:Multi-threaded Rasterization in the Chromium Compositor

Multi-threaded Rasterization in the Chromium Compositor PPT 原始链接: https://docs.google.com/presentation/d/1nPEC4YRz-V1m_TsGB0pK3mZMRMVvHD1JXsHGr8I3Hvc/edit?uspsharing PPT主要介绍了Chromium浏览器中使用多线程光栅化(Impl-side painting)的机制&a…

基于NodeJs 的Vue安装和创建项目

基于NodeJs 的Vue安装和创建项目 一、Node.js的下载与安装 下载地址: https://nodejs.org/en/download/prebuilt-installer 安装完之后,启动 cmd命令行,验证 Node.js 是否安装成功 二、配置npm的全局模块的存放路径以及缓存的路径 注&…