当前位置: 首页 > news >正文

协同探索与导航文献整理


文章目录

  • 1.SOAR:异构无人机协同探索与拍摄以实现快速自主重建
  • 2. RACER: 一种使用分散式无人机群进行快速协同探索的方法
  • 3. 使用协作式纳米无人机在非结构化环境中进行最小感知探索
  • 4.GVP-MREP:通过动态拓扑图上的 Voronoi 分区进行快速且通信高效的多无人机探索
  • 5.森林的快速多无人机分散探索


1.SOAR:异构无人机协同探索与拍摄以实现快速自主重建

代码:代码
原文:原文
摘要:无人机(UAVs)在场景重建领域已获得显著关注。本文介绍了SOAR,一个专为复杂环境快速自主重建设计的LiDAR-视觉异构多无人机系统。我们的系统包括一个配备大视场(FoV)LiDAR的探索者以及配备相机的拍摄者。为确保快速获取场景表面几何信息,我们采用了一种基于表面前沿的探索策略。随着表面的逐步探索,我们识别未覆盖区域并逐步生成视点。这些视点通过解决一致多仓库多旅行商问题(Consistent-MDMTSP)分配给拍摄者,该问题在确保任务一致性的同时优化了扫描效率。最后,拍摄者利用分配的视点确定最佳覆盖路径以获取图像。我们在现实模拟器中进行了广泛的基准测试,验证了SOAR与经典及最新方法相比的性能。更多详情,请访问我们的项目页面sysu-star.github.io/SOAR
主要框架:在这里插入图片描述
在本文中,我们提出了SOAR,一种LiDAR-视觉异构多无人机规划器,能够同时进行探索和拍摄,以实现复杂场景的快速自主重建。我们的方法结合了基于模型和无模型方法的优势。通过利用一组协作无人机,它允许在生成粗略模型的同时并行扫描对象,从而显著提高了重建过程的效率。该系统配备了一个搭载具有大感知范围的LiDAR传感器的探索无人机,能够快速获取表面几何信息。与基于模型方法中的先前模型类似,表面为进行远程视点生成和路径规划提供了丰富的信息。同时,扫描已探索表面的任务被分配给多个配备RGB相机的拍摄者,它们协作工作以实现全面的场景覆盖。随着探索者逐步获取表面信息,我们提出了一种高效的视点生成方法,能够逐步生成覆盖表面所需的最少数量的视点。然后,通过解决一致多仓库多旅行商问题(Consistent-MDMTSP),将这些视点聚类并分配给拍摄者。这个迭代过程优化了拍摄者的扫描效率,同时确保了连续任务分配的一致性。最后,每个拍摄者根据分配的聚类规划最短路径以捕获图像,利用它们作为高效图像采集的全局指导。

主要创新点:
我们在模拟中比较了我们的方法与经典和最先进的方法。结果表明,在基准场景中,我们的方法实现了更高的效率和卓越的重建质量。总之,本文的贡献总结如下:
1.一种新颖的LiDAR-视觉异构多无人机系统,能够快速高效地完成重建任务。
2.一种增量视点生成方法,随着表面信息的逐步获取,生成最少数量的视点以确保全面覆盖。
3.一种任务分配方法,迭代优化扫描效率,同时确保连续任务分配的一致性。
4.所提出的方法已在两个现实模拟环境中得到广泛验证。我们系统的源代码将会发布。

在这里插入图片描述

2. RACER: 一种使用分散式无人机群进行快速协同探索的方法

原文:原文
代码:代码
摘要:尽管多无人机系统(UAVs)在快速自主探索方面具有巨大潜力,但仍未受到足够的关注。在本文中,我们提出了一种基于去中心化无人机队伍的快速协同探索(RACER)方法。为了有效地调度无人机,采用基于在线网格空间分解的配对交互方法,确保所有无人机同时探索不同的区域,仅使用异步和有限的通信。此外,我们优化了未知空间的覆盖路径,并通过车辆路径规划问题将工作负载均衡分配给每个无人机。在任务分配的基础上,每个无人机不断更新覆盖路径并逐步提取关键信息来支持探索规划。分层规划器寻找探索路径,细化局部视点,并生成最短时间的轨迹以顺利安全地探索已知空间。所提出的方法被广泛评估,展现了高效的探索能力、可扩展性和在有限通信下的鲁棒性。此外,首次实现了在真实世界中完全去中心化的多无人机协同探索。我们将发布我们在现实世界中的开源实现。
在这里插入图片描述

在这里插入图片描述
图. 我们的多旋翼自主探索系统概述,包括感知、协调和探索规划模块。

在本文中,我们提出了一种系统的去中心化协调和规划方法,以实现快速协同探索,该方法考虑了上述提到的困难,如图1所示。为了有效地协调四旋翼无人机,整个未知空间不断在线细分为网格,并通过配对交互将其分配给各个四旋翼。该方法仅需要异步和不可靠的通信,仅通过相邻四旋翼之间的通信即可,确保四旋翼同时探索不同的区域而不相互干扰。此外,还提出了一种容量约束的车辆路径规划(CVRP)问题公式,以实现更高效的协作。它最小化了多个全局覆盖路径(CP)的长度,并平衡了分配给每个四旋翼的工作负载,有效防止了重复探索和不公平的工作负载分配。在任务分配的基础上,每个四旋翼不断更新其CP,提供有效的全局路径来探索未知空间。在CP的指导下,分层规划器找到局部路径,细化视点,并生成最短时间轨迹,依次进行快速探索。整个系统计算开销低且具备可扩展性,能够使团队快速响应环境变化,从而持续进行快速探索。本文的贡献总结如下:

  1. 基于在线网格分解的配对交互方法,将未知空间的位置细分,确保四旋翼无人机只通过异步和有限的通信共同探索不同的区域
  2. 一种最小化全局覆盖路径(CP)长度并平衡分配给每个四旋翼的工作负载的CVRP公式。它进一步增强了四旋翼队伍之间的协作。
  3. 从[1]扩展的分层探索规划器,结合全局覆盖路径的引导,从而提高探索效率。规划器中还集成了互相避碰机制。
  4. 我们将所提出的方法与多机器人状态估计结合,实现了完全自主探索,并在具有挑战性的现实环境中进行实验。我们将发布我们的系统源代码。

3. 使用协作式纳米无人机在非结构化环境中进行最小感知探索

原文:原文
代码:代码
摘要:近年来的研究进展显著提升了在受限载荷条件下的自主导航与建图能力,但现有的多机器人检查算法并不适用于纳米无人机,原因在于其需要高性能传感器和高计算资源。为了解决这些问题,我们提出了一种名为 ExploreBug 的混合型前沿追踪算法,该算法专为处理纳米无人机群的受限感知能力而设计。该系统包括三个主要模块:建图子系统、探索子系统和导航子系统。此外,还集成了一个群体内的碰撞避免系统以防止无人机间的碰撞。我们通过广泛的模拟实验和实际环境的探索实验验证了该方法的有效性,实验中最多使用了七架无人机进行模拟,三架无人机在实际环境中进行了测试。实验涵盖了多种障碍物配置,导航速度最高达 0.75 m/s。实验结果证明,该算法能够以最少的感知信息完成探索任务,适用于不同的无人机尺寸和障碍物密度。此外,我们的前沿分配启发式方法确保了群体内探索区域和飞行路径的均匀分布。
我们公开了所提系统的源代码,以促进在基于自主纳米无人机的建图与探索领域的进一步发展。

简介:
在这项工作中,我们提出了 ExploreBug,一种专为纳米无人机设计的协调算法,旨在利用最小感知实现高效的全环境探索。与该领域的最新研究相比,这些研究优先考虑探索时间和速度,而我们的方法则采取了根本不同的方向:我们专注于“更小”,而不是“更复杂”。我们的目标是通过将现有技术改编到更小、更受资源限制的平台上,并严格评估性能与最小传感器输入之间的权衡,推动现有技术的边界。

简而言之,这项工作的主要贡献如下:

  1. 设计了一种新颖的探索算法,该算法能够有效利用最小的感知能力——仅需四个单束距离传感器——专为纳米无人机量身定制。

  2. 通过模拟和真实环境中广泛的实验评估了所提出方法的性能,尽管存在硬件限制,实验结果依然表现出良好的前景。

  3. 最后,我们将所提出系统的代码和框架开源,帮助研究人员进行评估和基于我们的框架开展进一步的研究。

在这里插入图片描述
该系统由三个主要模块组成:建图子系统、探索子系统和导航子系统,每个模块对应任务的特定阶段。如图 2 所示,展示了整个流程的概述。在建图阶段,每个无人机通过群体共享的多传感器读取数据,创建一个公共地图。由于传感器仅能收集环境的二维信息,地图以占据栅格的形式编码。探索阶段包括三个步骤:探索策略、前沿生成和前沿分配。探索策略采用了一种混合型前沿追踪算法。随后,从地图中生成了一组可用的前沿区域,并根据无人机群的状态,按需将最合适的前沿区域分配给每个无人机。最后,导航子系统向控制器发送运动参考,以到达目标点。导航系统的核心组件是一个本地路径规划器,该规划器利用 Aerostack2 [20] 框架开发,用于构建自主飞行机器人系统。Aerostack2 支持高层次机器人行为抽象,例如导航到路径点、悬停或起飞,从而简化无人机的运动控制。为了防止无人机之间的碰撞,还设计了一个群体内的碰撞避免子系统。该子系统通过跟踪每架无人机的位置提供安全保障,当检测到潜在碰撞时,相关无人机的运动会暂时停止,直到安全状态恢复为止。安全状态重新建立后,系统会恢复常规操作。

4.GVP-MREP:通过动态拓扑图上的 Voronoi 分区进行快速且通信高效的多无人机探索

代码:github
原文:原文
摘要:高效的数据传输和合理的任务分配对提高多无人机探索效率至关重要。然而,大多数通信数据类型通常包含冗余信息,这需要传输大量通信数据。此外,探索导向的任务分配并非易事,尤其是在资源受限的小型无人机(UAVs)场景中面临更大挑战。在本文中,我们提出了一种快速且通信高效的多无人机探索方法,用于大规模环境探索。我们首先设计了一个多机器人动态拓扑图(MR-DTG),由表示已探索区域和连接区域的节点与边组成。在 MR-DTG 的支持下,该方法通过仅传输探索规划所需的必要信息实现高效通信。为了进一步提高探索效率,提出了一种分层多无人机探索方法。具体来说,通过 图的 Voronoi 分割 将 MR-DTG 的节点分配给这些无人机,以考虑实际的运动成本,从而实现合理的任务分配。据我们所知,这是首次采用 图的 Voronoi 分割 处理多无人机探索任务。提出的方法在模拟中与当前最先进方法进行了对比,结果表明该方法可以将探索时间和通信量分别减少 38.3%95.5%。最后,我们在真实环境下使用 6 架无人机验证了该方法的有效性。我们将公开该方法的源代码以造福研究社区。
在这里插入图片描述
在这里插入图片描述

图 1. 所提出的多无人机探索方法的一个实例,其中 15 架无人机使用 MR-DTG 探索环境。
(a) 城市场景的模拟环境。
(b) 使用所提出方法的探索结果。
点表示历史节点,立方体表示可探索区域。历史节点的颜色对应于全局分区期间分配给它们的无人机,可探索区域的颜色对应于局部分区期间分配给它们的无人机。

在这里插入图片描述

5.森林的快速多无人机分散探索

代码:github
原文:原文
摘要:高效的探索策略在搜索救援任务和灾害调查等任务中至关重要。无人机(UAVs)在此类应用中变得尤为流行,因其能够以较高速度覆盖大面积区域。然而,随着车载无人机设备能力的不断提高,研究的重点逐渐转向多无人机任务的高级推理。尽管如此,对于以前未知的大空间区域的自主导航和探索仍然是一项开放性挑战,尤其是在环境复杂、障碍物密集且由于高障碍密度导致频繁遮挡的情况下,例如森林场景。此外,在此类场景中,无人机群的长距离无线通信问题可能成为一个限制因素,尤其是在实现无人机群导航自动化时。基于此,本研究提出了一种探索策略,该策略使多个无人机能够以分布式方式快速探索复杂场景。通过为每架无人机提供决策能力以在不同执行模式之间切换,所提出的方法在完全未知区域的谨慎探索与未知空间大规模区域的更激进探索之间实现了良好的平衡。实验结果表明,该方法在多无人机设置下对森林区域的完全覆盖速度比当前最先进方法快 30%
主要创新点:

  • 设计了一种多机器人分布式探索策略,能够在谨慎探索和已探索地图的积极开发之间实现有效平衡;
  • 在模拟中进行了广泛评估,证明了比当前最先进方法更好的性能;
  • 公开了所提出系统的源代码。

在这里插入图片描述图 2: 一个示例图,展示了基于贪婪前沿的探索方法在不同时间点的不足之处,即产生被自由区域包围的未知空间孤岛。机器人视野被表示为由黑色实线限定的浅灰色阴影区域,而障碍物和未探索区域分别用黑色和深灰色表示。机器人向最有信息量的前沿移动(b);然而,由于传感器范围有限,被障碍物遮挡的空间未被清除(c)。因此,由于探索过程倾向于更大的、更有信息量的前沿,初级规划器会忽略较小的未探索空间部分(如深灰色显示的区域 d)。

在这里插入图片描述
图 3: 管道概览,该任务旨在协调一组无人机协同构建感兴趣区域的地图。通过交换里程计和地图信息,以及当前的执行模式和目标位置,以分配感兴趣区域来实现协调。每个机器人通过深度测量和通信范围内的其他机器人传递的地图块生成环境的三维网格地图。在下一步中,前沿被提取和聚类。前沿的路径被识别,并用于为代理选择合适的探索模式。接下来选择下一个目标位置,并使用文献 [24] 生成前往目标的轨迹,同时避免与场景和其他无人机发生碰撞。

相关文章:

协同探索与导航文献整理

文章目录 1.SOAR:异构无人机协同探索与拍摄以实现快速自主重建2. RACER: 一种使用分散式无人机群进行快速协同探索的方法3. 使用协作式纳米无人机在非结构化环境中进行最小感知探索4.GVP-MREP:通过动态拓扑图上的 Voronoi 分区进行快速且通信高效的多无人机探索5.森林的快速多无…...

排序算法--计数排序

唯一种没有比较的排序(指没有前后比较,还是有交换的)。统计每个元素出现的次数,直接计算元素在有序序列中的位置,要求数据是整数且范围有限。适用于数据为小范围整数(如年龄、成绩),数据重复率较高时效率更优。可用于小…...

吴恩达深度学习——对象检测

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。 文章目录 对象定位特征点检测基于滑动窗口的目标检测算法原理将全连接层转化成卷积层通过卷积实现滑动窗口检测算法 YOLOBounding Box预测交并比非极大值抑制Anchor BoxYOLO检测训练集中预…...

BUU19 [BJDCTF2020]Easy MD51

题目 当点进去不知道干啥的时候:1.看源代码 2.抓包 3.看网络请求 F12 用bp抓包,在response消息头中有hint提示: select * from admin where passwordmd5($pass,true) 如果md5($pass,true)后是 or 1 那么整句话就是password or 1&a…...

蓝桥杯刷题DAY2:二维前缀和 一维前缀和 差分数组

闪耀的灯光 📌 题目描述 蓝桥公园是一个适合夜间散步的好地方,公园可以被视为由 n m 个矩形区域构成。每个区域都有一盏灯,初始亮度为 a[i][j]。 小蓝可以选择一个大的矩形区域,并按下开关一次,这将使得该区域内每盏…...

HTB:EscapeTwo[WriteUP]

目录 连接至HTB服务器并启动靶机 信息收集 使用rustscan对靶机TCP端口进行开放扫描 将靶机TCP开放端口号提取并保存 使用nmap对靶机TCP开放端口进行脚本、服务扫描 使用nmap对靶机TCP开放端口进行漏洞、系统扫描 使用nmap对靶机常用UDP端口进行开放扫描 使用nmap对靶机…...

vue 引入百度地图和高德天气 都得获取权限

vue接入百度地图---获取ak https://blog.csdn.net/qq_57144407/article/details/143430661 vue接入高德天气, 需要授权----获取key https://www.jianshu.com/p/09ddd698eebe...

AI大模型:DeepSeek

近期DeepSeek产生了很大的影响力。首先来自于性能,给了业内一个很好的释放,缓解了HPC以及大规模集群被卡的焦虑。通过实验证实了小规模团队(公开资料显示规模约150左右)在资源受限的情况下(2M H100 GPU时),依然可以完成对领先大模型的实现与部署。后续观察该团队是否可以…...

LeetCode - #198 打家劫舍

网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...

从离散傅里叶变换(DFT)到快速傅里叶变换(FFT)

摘要 离散傅里叶变换(DFT)是数字信号处理领域中分析信号频域特性的重要工具,但直接计算DFT的复杂度较高,限制了其在大规模数据处理中的应用。快速傅里叶变换(FFT)的出现显著降低了计算复杂度,极…...

【STM32】HAL库USB虚拟U盘MSC配置及采用自带的Flash作为文件系统

【STM32】HAL库USB虚拟U盘MSC实现配置及采用自带的Flash作为文件系统 本文将自带的Flash作为文件系统 通过配置USB的MSC功能实现虚拟U盘 没有单独建立FATFS文件系统 仅仅是配置USB和Flash读写而已 当然 这里也可以用外部Flash等等 也可以配置文件系统来进行套壳 但总体而言不如…...

Math Reference Notes: 符号函数

1. 符号函数的定义 符号函数(Sign Function) sgn ( x ) \text{sgn}(x) sgn(x) 是一个将实数 ( x ) 映射为其 符号值(即正数、负数或零)的函数。 它的定义如下: sgn ( x ) { 1 如果 x > 0 0 如果 x 0 − 1 如…...

拉格朗日乘数法算法详解Python实现

目录 一、拉格朗日乘数法算法详解1.1 基本思想1.2 数学推导1.3 算法步骤1.4 算法在编程中的实现 二、案例分析案例一:二维最优化问题——求 f ( x , y ) x 2 y 2 f(x,y)x^2y^2 f(x,y)x2y2 在约束 x y 1 xy1 xy1 下的极值2.1.1 问题描述2.1.2 数学模型构建2.1.…...

ip属地是手机号还是手机位置?一文理清

在数字化和网络化的今天,IP属地这一概念逐渐成为了人们关注的焦点。特别是在社交媒体和在线平台上,IP属地的显示往往让人联想到用户的地理位置。然而,关于IP属地到底与手机号还是手机位置有关,却存在着不少误解和混淆。本文将深入…...

C++常用拷贝和替换算法

算法简介: copy // 容器内指定的元素拷贝到另一容器replace // 将容器内指定范围的旧元素改为新元素replace_if // 容器内指定范围满足条件的元素替换为新元素swap //互换两个容器的元素 1. copy 功能描述: 将容器内指定范围的数据拷贝到另一容器中函…...

vue项目搭建

1.准备工作,按照下面的安装一下脚手架vue-cli node16安装vue-cli时报错:需要node>20(但根本就不是版本问题)-CSDN博客文章浏览阅读157次,点赞4次,收藏2次。这种情况我碰到不下5次了&#xff0c…...

Java进阶面试八股文

1、Java SE和Java EE区别? Java SE 是 Java 的基础版本,Java EE 是 Java 的高级版本。Java SE 更适合开发桌面应用程序或简单的服务器应用程序,Java EE 更适合开发复杂的企业级应用程序或 Web 应用程序。 2、JVM和JRE和JDK区别?…...

Python Django 嵌入 Grafana Dashboard(随手记)

作为一名网络工程师/运维工程师,现在都在往DevOps的方向发展。其中大家都不可避免的会往自己开发平台的方向发展。 那么如何将自己制作的 Grafana 面板 引入到自己的平台上? 一般来说,大家都会选择Python来作为自己开发的语言,并会…...

[Android] IKTV专享版

[Android] IKTV专享版 链接:https://pan.xunlei.com/s/VOILXXuEd3ASo93c88UW79sxA1?pwd4tsw# 2025年2月最新免费K歌神器!家庭KTV软件,手机平板电视盒子电脑都可用...

阿里 Java 岗个人面经分享(技术三面 + 技术 HR 面):Java 基础 +Spring+JVM+ 并发编程 + 算法 + 缓存

技术一面 20 分钟 1、自我介绍 说了很多遍了,很流畅捡重点介绍完。 2、问我数据结构算法好不好 挺好的(其实心还是有点虚,不过最近刷了很多题也只能壮着胆子充胖子了) 3、找到单链表的三等分点,如果单链表是有环的…...

C++多线程编程——call_once和单例模式

目录 1. 前言 2. call_once和once_flag 3. 后记 3.1 单例类的析构问题 3.2 饿汉式单例模式的线程安全问题 1. 前言 之前在讲解单例模式时,有提到懒汉式单例模式使用了双重检测Double-Checked Locking Pattern (DCLP)来解决多线程的安全访问问题。但是该方法也…...

vue2-为啥data属性是一个函数而不是对象

vue2-为啥data属性是一个函数而不是对象 1. data在vue实例和组件中的表现差异 vue实例的时候,data既可以是一个对象也可以是一个函数 new Vue({data:{//对象name:tom},data(){//函数return{name:tom}} })而在组件中定义data,只能是函数,如…...

Spark--算子执行原理

一、sortByKey SortByKey是一个transformation算子,但是会触发action,因为在sortByKey方法内部,会对每个分区进行采样,构建分区规则(RangePartitioner)。 内部执行流程 1、创建RangePartitioner part&…...

keil 单步调试

一、常见错误分析 warningerror警告错误 不影响编译过程 能够输出Hex文件 无法完成编译 不输出Hex文件 注意的是,warning的信息是要去关注的。 下面的UNCALLED SEGMENT除外 二、单步调试配置 1、在keil中添加单片机型号 本文不详细介绍,如有需要可查看这篇文章:...

html的字符实体和颜色表示

在HTML中,颜色可以通过以下几种方式表示,以下是具体的示例: 1. 十六进制颜色代码 十六进制颜色代码以#开头,后面跟随6个字符,每两个字符分别表示红色、绿色和蓝色的强度。例如: • #FF0000:纯红…...

[数据结构] 线性表和顺序表

目录 线性表 顺序表的实现 顺序表各个方法的实现 boolean isFull() -- 判断数组是否放满 : void add(int data) -- 在数组末尾插入新元素 : void add(int pos,int data) -- 在指定位置插入元素 : boolean contain(int toFind) -- 判断是否包含某个元素 int indexOf(in…...

第12章:基于TransUnet和SwinUnet网络实现的医学图像语义分割:腹部13器官分割(网页推理)

目录 1. 前言 2. TransUnet 和 SwinUnet 3. 腹部多器官分割 4. 训练 5. 推理 6. 项目下载 1. 前言 TransUNet 是一种用于医学图像分割的混合架构,结合了 Transformer 和 U-Net 的优势。它利用 Transformer 的全局上下文建模能力和 U-Net 的精确定位特性&…...

DS图(下)(19)

文章目录 前言一、最短路径的概念二、单源最短路径-Dijkstra算法三、单源最短路径-Bellman-Ford算法四、多源最短路径-Floyd-Warshall算法总结 前言 加油,今天就是图的最后一篇了,撑住!!   今天我们要学的就是最短路径问题&…...

鸿蒙Harmony-Progress组件概述

鸿蒙Harmony-Progress组件概述 1.1Progress组件概述 作用:显示操作或任务的进度,支持线性,环形,刻度等多种样式适用场景:文件上传/下载、任务完成度、系统状态反馈等 2.1基础属性(参考官方文档&#xff…...

流数据库中的RisingWave和Materialize

流数据库(Streaming Database)是一种专门设计用于处理大量实时流数据的数据库,它能够在数据生成时立即进行处理,从而实现实时洞察和分析。RisingWave和Materialize都是这一领域的代表性技术。RisingWave和Materialize都是强大的流…...

【C++】多态详细讲解

本篇来聊聊C面向对象的第三大特性-多态。 1.多态的概念 多态通俗来说就是多种形态。多态分为编译时多态(静态多态)和运⾏时多态(动态多态)。 编译时多态:主要就是我们前⾯讲的函数重载和函数模板,他们传不同类型的参数就可以调⽤不同的函数,通…...

防火墙的安全策略

1.VLAN 2属于办公区;VLAN 3属于生产区,创建时间段 [FW]ip address-set BG type object [FW-object-address-set-BG]address 192.168.1.0 mask 25 [FW]ip address-set SC type object [FW-object-address-set-SC]address 192.168.1.129 mask 25 [FW]ip address-se…...

Android 进程间通信

什么是IPC? Android 进程间通信(IPC,Inter-Process Communication)是Android操作系统中不同进程间交换数据和资源的一种机制。由于Android是多任务操作系统,每个应用通常运行在自己的进程中,以提高安全性和…...

【优先算法】专题——位运算

在讲解位运算之前我们来总结一下常见的位运算 一、常见的位运算 1.基础为运算 << &&#xff1a;有0就是0 >> |&#xff1a;有1就是1 ~ ^&#xff1a;相同为0&#xff0c;相异位1 /无进位相加 2.给一个数 n&#xff0c;确定它的二进制表示…...

深入理解k8s中的容器存储接口(CSI)

CSI出现的原因 K8s原生支持一些存储类型的PV&#xff0c;像iSCSI、NFS等。但这种方式让K8s代码与三方存储厂商代码紧密相连&#xff0c;带来不少麻烦。比如更改存储代码就得更新K8s组件&#xff0c;成本高&#xff1b;存储代码的bug还会影响K8s稳定性&#xff1b;K8s社区维护和…...

ZZNUOJ(C/C++)基础练习1061——1070(详解版)

目录 1061 : 顺序输出各位数字 C语言版 C版 1062 : 最大公约数 C C 1063 : 最大公约与最小公倍 C C 1064 : 加密字符 C C 1065 : 统计数字字符的个数 C C 1066 : 字符分类统计 C C 1067 : 有问题的里程表 C C 1068 : 进制转换 C C C&#xff08;容器stack…...

ES6 变量解构赋值总结

1. 数组的解构赋值 1.1 基本用法 // 基本数组解构 const [a, b, c] [1, 2, 3]; console.log(a); // 1 console.log(b); // 2 console.log(c); // 3// 跳过某些值 const [x, , y] [1, 2, 3]; console.log(x); // 1 console.log(y); // 3// 解构剩余元素 const [first, ...re…...

机理模型与数据模型融合的方式

机理模型与数据模型的融合旨在结合两者的优势&#xff0c;以提供更准确、可靠的预测和决策支持。以下是几种常见的融合方式及其示例&#xff1a; 1. 特征增强&#xff08;Feature Augmentation&#xff09; 描述&#xff1a;将由机理模型计算得到的结果作为额外特征加入到数据…...

高效 MyBatis SQL 写法一

高效 MyBatis SQL 写法一 前言 MyBatis 作为一款优秀的持久层框架&#xff0c;极大地简化了数据库操作。 然而&#xff0c;在实际开发中&#xff0c;XML 配置的编写仍然可能显得繁琐。 本文将分享一些 MyBatis 动态 SQL 的优质写法&#xff0c;帮助开发者提升效率并减少错误…...

vue3中的ref相关的api及用法

在 Vue 3 中&#xff0c;ref 相关的 API 主要用于管理响应式数据。以下是 ref 相关的 API 及其用法&#xff1a; 1. ref ref 用于创建响应式的基本数据类型或对象。 用法示例&#xff1a; <script setup> import { ref } from vue;const count ref(0);const incremen…...

3 卷积神经网络CNN

1 Image Classification (Neuron Version) – 1.1 Observation 1 1.2 Observation 2 如果不同的receptive field需要相同功能的neuron&#xff0c;可以使这些neuron共享参数 1.3 Benefit of Convolutional Layer 2 Image Classification (Filter Version) 不用担心filter大小…...

CSV数据分析智能工具(基于OpenAI API和streamlit)

utils.py&#xff1a; from langchain_openai import ChatOpenAI from langchain_experimental.agents.agent_toolkits import create_csv_agent import jsonPROMPT_TEMPLATE """你是一位数据分析助手&#xff0c;你的回应内容取决于用户的请求内容。1. 对于文…...

解决php8.3无法加载curl扩展

把它的值更改为扩展存在的目录的绝对路径(扩展存在的目录为有php_xxx.dll存在的目录) extension_dir "e:\serv\php83\ext" 然后从php根目录复制 libssh2.dll 和 libcrypto-*.dll 和 libssl-*.dll 到Apache根目录下的bin目录 重启apache服务即可...

拍照对比,X70 PRO与X90 PRO+的细节差异

以下是局部截图&#xff08;上X70P下X90PP&#xff09; 对比1 这里看不出差异。 对比2 X90PP的字明显更清楚。 对比3 中下的字&#xff0c;X90PP显然更清楚。...

《MPRnet》学习笔记

paper&#xff1a;2102.02808 GitHub&#xff1a;swz30/MPRNet: [CVPR 2021] Multi-Stage Progressive Image Restoration. SOTA results for Image deblurring, deraining, and denoising. 目录 摘要 1、介绍 2、相关工作 2.1 单阶段方法 2.2 多阶段方法 2.3 注意力机…...

机器学习-线性回归(参数估计之结构风险最小化)

前面我们已经了解过关于机器学习中的结构风险最小化准则&#xff0c;包括L1 正则化&#xff08;Lasso&#xff09;、L2 正则化&#xff08;Ridge&#xff09;、Elastic Net&#xff0c;现在我们结合线性回归的场景&#xff0c;来了解一下线性回归的结构风险最小化&#xff0c;通…...

C++11详解(二) -- 引用折叠和完美转发

文章目录 2. 右值引用和移动语义2.6 类型分类&#xff08;实践中没什么用&#xff09;2.7 引用折叠2.8 完美转发2.9 引用折叠和完美转发的实例 2. 右值引用和移动语义 2.6 类型分类&#xff08;实践中没什么用&#xff09; C11以后&#xff0c;进一步对类型进行了划分&#x…...

深度学习系列--01.入门

一.深度学习概念 深度学习&#xff08;Deep Learning&#xff09;是机器学习的分支&#xff0c;是指使用多层的神经网络进行机器学习的一种手法抖音百科。它学习样本数据的内在规律和表示层次&#xff0c;最终目标是让机器能够像人一样具有分析学习能力&#xff0c;能够识别文字…...

熵采样在分类任务中的应用

熵采样在分类任务中的应用 在机器学习的分类任务里,数据的标注成本常常制约着模型性能的提升。主动学习中的熵采样策略,为解决这一难题提供了新的思路。本文将带你深入了解熵采样在分类任务中的原理、应用及优势。 一、熵采样的原理(优化版) 熵,源于信息论,是对不确定…...

vite配置之---依赖优化选项

vite optimizeDeps 配置项主要在 开发环境 中对依赖项发挥作用 optimizeDeps.entries vite optimizeDeps.entries 是 Vite 配置中的一个选项&#xff0c;用来指定要优化的入口文件。这在开发环境中尤其有用&#xff0c;因为它告诉 Vite 需要预构建哪些文件&#xff0c;以便加速…...