LEACH算法的实现过程如何?

时间: 2023-06-19 12:08:22 浏览: 24
LEACH(低能耗自组织无线传感器网络分簇协议)是一种经典的无线传感器网络分簇协议,可以有效地解决无线传感器网络中节点能耗不均衡、簇头选举、数据传输等问题。下面是LEACH算法的实现过程: 1. 节点初始化:所有节点初始化,设定相应的参数,如通信半径、能量等级、节点ID等。 2. 簇头选举:每个节点根据一定的概率P选择成为簇头节点,概率计算公式为P = p/(1-p*(r mod (1/p))),其中p为用户设定的簇头概率,r为当前轮次,mod为取余操作。如果节点被选为簇头,则它将广播消息通知周围节点。 3. 簇头确定:收到簇头广播消息的节点将选择距离自己最近的簇头作为自己所属的簇头,并将自己加入到簇头的簇内。 4. 数据传输:簇头节点收集簇内节点的数据,并将数据汇总后传输到基站节点。 5. 轮次更新:每个节点在每个轮次结束后更新自己的能量等级,并重新开始簇头选举流程。 LEACH算法的实现过程比较简单,但是需要注意的是,节点的簇头选举概率计算和簇头确定的过程要严格按照算法要求进行,否则会影响算法的效果。
相关问题

LEACH算法的实现过程如何?

LEACH算法(Low Energy Adaptive Clustering Hierarchy)是一种用于无线传感器网络中的能量有效的聚类协议。其实现过程如下: 1. 初始化:确定网络中每个节点的初始能量以及网络的参数,如簇的数量、簇的半径、轮次等。 2. 集群形成:节点根据一定的概率选择成为簇头节点,并向其他节点广播自己是簇头节点的信息。其他节点收到信息后决定是否归属该簇头节点。 3. 簇内通信:簇头节点收集其所管辖区域内所有节点的数据,并将其汇总发送给下一级节点或基站。 4. 能量分配:簇头节点将自己的能量分配给簇内的其他节点,以平衡网络中各节点的能量消耗。 5. 簇头节点轮流更替:为了防止某些簇头节点能量过早耗尽,导致整个网络失效,LEACH算法引入了轮流更替的机制,即每个簇头节点只工作一定的轮次后,将自己的簇头地位释放出来,让其他节点接替成为新的簇头节点。 6. 网络维护:在网络运行过程中,可能会出现节点失效、信号干扰等问题,需要对网络进行维护和修复。 LEACH算法通过将网络节点分为簇的形式,减少了节点之间的通信量,从而有效降低了能量消耗,延长了网络的寿命。

1、LEACH算法的实现过程如何?

LEACH(低能量自适应簇头协议)是一种无线传感器网络协议,用于延长网络寿命并减少能耗。以下是LEACH算法的实现过程: 1. 集群头选举:每个节点都有一个概率成为集群头,该概率与节点剩余电量成正比,节点通过随机数生成器决定是否成为集群头。 2. 集群形成:节点将其集群头的信息发送给其它节点,并选择其所属的集群头。 3. 数据传输:每个节点将其采集到的数据发送给其所属的集群头,集群头负责将数据传输给基站。 4. 集群头的轮流变更:为了避免某个集群头过度消耗能量,LEACH算法规定每个集群头只能工作一定的时间,然后将其工作权力交给其它节点。 5. 簇内的数据聚合:集群头将其所属集群内的数据进行聚合,减少数据传输量,降低能耗。 6. 基站数据处理:基站接收到数据后进行处理,并根据需要向节点发送控制信息。 7. 协议周期的重复:LEACH算法周期性地执行上述步骤,以保证网络的可靠性和稳定性。 LEACH算法通过动态地选取集群头,使得能量消耗更加均衡,延长了网络的寿命。同时,该算法还采用了簇内数据聚合的技术,降低了数据传输量,减少了能耗。

相关推荐

LEACH算法是一种无线传感器网络中常用的聚簇路由协议,其主要思想是将网络中的传感器节点分为若干个簇(cluster),每个簇由一个簇首(cluster head)负责进行数据的聚合和传输,从而实现对能量的有效利用和延长网络的寿命。 LEACH算法的主要实现过程如下: 1. 随机选择若干个节点作为簇首,每个节点以一定的概率P选择成为簇首,概率P与节点的剩余能量成反比,即剩余能量越小的节点,成为簇首的概率更大。 2. 其他节点选择距离自己最近的簇首加入所在的簇中,每个节点以一定的概率P选择加入簇中,概率P与节点到簇首的距离成反比,即距离越近的节点,加入簇的概率更大。 3. 簇首节点负责收集簇中所有节点的数据并进行聚合,然后将聚合后的数据传输给下一级节点,最终传输到基站。 4. 在每个轮次中,重新选择簇首和节点加入簇的过程,以保证网络中各个簇的均衡。 下面是LEACH算法的源代码实现(Python版): python import random class Node: def __init__(self, id, x, y, energy): self.id = id self.x = x self.y = y self.energy = energy self.cluster_head = False self.cluster = None class LEACH: def __init__(self, n, m, e, r, p): self.n = n #节点数量 self.m = m #簇首数量 self.e = e #节点能量 self.r = r #通信半径 self.p = p #簇首选择概率 self.nodes = [] #节点列表 self.heads = [] #簇首列表 #初始化节点 def init_nodes(self): for i in range(self.n): x = random.uniform(0, 100) y = random.uniform(0, 100) node = Node(i, x, y, self.e) self.nodes.append(node) #计算节点之间的距离 def distance(self, node1, node2): return ((node1.x - node2.x) ** 2 + (node1.y - node2.y) ** 2) ** 0.5 #选择簇首 def select_heads(self): for node in self.nodes: if random.random() < self.p: node.cluster_head = True node.cluster = [] self.heads.append(node) #节点加入簇 def join_cluster(self): for node in self.nodes: if not node.cluster_head: min_dis = float('inf') for head in self.heads: dis = self.distance(node, head) if dis < min_dis: min_dis = dis node.cluster = head.cluster node.cluster.append(node) #簇首聚合数据 def aggregate_data(self): for head in self.heads: data = [] for node in head.cluster: data.append(node.energy) avg_energy = sum(data) / len(data) head.energy -= 0.01 * avg_energy #消耗能量 if head.energy <= 0: #簇首能量耗尽 self.heads.remove(head) for node in head.cluster: node.cluster_head = False #运行LEACH算法 def run(self, rounds): self.init_nodes() for i in range(rounds): self.heads = [] self.select_heads() self.join_cluster() self.aggregate_data() print('Round %d: %d clusters, %d cluster heads' % (i+1, len(self.heads), sum([node.cluster_head for node in self.nodes]))) #测试LEACH算法 leach = LEACH(100, 5, 1, 10, 0.1) leach.run(10) 注意:这里只是一个简单的LEACH算法实现,实际应用中需要根据具体情况进行参数调整和优化。
LEACH(Low Energy Adaptive Clustering Hierarchy)是一种无线传感器网络中常用的分簇协议,旨在延长网络的生命周期。LEACH协议通过周期性地重新组织网络节点,将所有节点分组为一个个簇,每个簇由一个簇头节点负责,其他节点将数据通过簇头节点进行传输,从而减少每个节点的能量消耗,延长网络寿命。以下是LEACH算法的详细解释: 1. 簇头节点的选举 在LEACH协议中,每个节点都有机会成为簇头节点,选举过程如下: (1)每个节点根据自身能量水平计算出一个概率值P,P越大,则节点成为簇头节点的概率也就越大。 (2)每个节点根据概率值P进行随机决策,如果节点决定成为簇头,则宣布自己是簇头,并向其他节点广播自己的信息。 (3)其他节点收到簇头节点的广播后,根据距离和信号强度等因素,选择一个簇头节点连接并加入该簇。 2. 数据传输 LEACH协议中,簇头节点负责收集和汇总其他节点的数据,并将数据传输到基站。数据传输过程如下: (1)簇头节点收集其他节点的数据,并进行聚合处理。 (2)簇头节点将聚合后的数据发送给基站,如果簇头节点的能量水平较低,可以选择将数据分割成多个小包进行传输,以减少能量消耗。 (3)基站收到数据后,进行处理和分析,并将处理结果发送回簇头节点。 3. 动态簇头节点的更新 LEACH协议中,簇头节点的能量水平不断下降,当簇头节点的能量水平降到一定程度时,需要选择新的簇头节点来代替原来的簇头节点。更新过程如下: (1)簇头节点周期性地向其他节点广播消息,告诉它们自己的能量水平。 (2)其他节点根据簇头节点的能量水平和概率值P,选择新的簇头节点,并向新的簇头节点发送连接请求。 (3)新的簇头节点收到连接请求后,进行决策,如果同意则成为新的簇头节点,否则继续等待其他节点的连接请求。 通过以上三个步骤,LEACH协议可以实现无线传感器网络的分簇,并延长网络的生命周期。
是的,Leach算法可以用于无人机辅助数据收集场景中。 Leach(Low Energy Adaptive Clustering Hierarchy)是一种经典的无线传感器网络中的能量有效的聚类协议。无人机辅助数据收集场景下,可以通过将无人机看作是一个移动的基站节点,来应用Leach算法。 首先,空中无人机可以作为移动的基站节点,利用其优势的移动性和灵活性,在无线传感器网络中动态地建立和维护聚类。无人机通过飞行控制算法,能够在网络中自由地移动并与传感器节点进行通信。在聚类建立过程中,无人机可以根据网络拓扑信息和能量消耗情况,智能地选择簇首节点,完成聚类的形成。 其次,无人机可以利用自身的传输能力和存储能力,进行高效的数据收集和存储。无人机可以根据传感器节点的监测需求,主动飞行到相应的目标区域,并收集传感器节点的数据。同时,无人机还可以将收集到的数据进行处理和压缩,然后进行存储和传输。 最后,Leach算法的能量优化特性可以帮助无人机延长其飞行时间。无人机的能量是有限的,而利用Leach算法进行聚类管理和数据收集,能够合理地控制和分配能量消耗,减少能量的浪费,从而延长无人机的飞行时间。 综上所述,Leach算法可以有效地应用于无人机辅助数据收集场景中,通过无人机的移动性和灵活性,实现聚类协议的建立和维护,以及高效的数据收集和存储。这将有助于提高无人机在数据收集方面的性能和效率。
在使用MATLAB实现WSN中LEACH协议算法仿真前,需要定义以下必须的仿真参数,并给出参数单位和变化的范围: 1. 网络范围(Network Range):定义了节点之间的通信距离,通常以米(m)为单位,范围一般在50-100m之间变化。 2. 簇头选举概率(Cluster Head Election Probability):定义了节点成为簇头的概率,通常为无量纲的概率值,在0到1之间变化。 3. 簇内节点数量(Number of Nodes in a Cluster):定义了每个簇中的节点数量,通常为个数,在10-50之间变化。 4. 数据包大小(Packet Size):定义了节点发送和接收的数据包大小,通常以字节(Byte)为单位,在10-1000字节之间变化。 5. 帧长(Frame Length):定义了节点发送和接收数据包的时间长度,通常以毫秒(ms)为单位,在10-100ms之间变化。 6. 能量消耗参数(Energy Consumption Parameters):定义了节点的能量消耗参数,包括发送能量消耗、接收能量消耗和待机能耗,在单位时间内以焦耳(J)为单位,在0.1-1J之间变化。 7. 簇头轮换周期(Cluster Head Rotation Period):定义了簇头轮换的时间周期,通常以秒(s)为单位,在100-1000s之间变化。 8. 网络节点数量(Number of Network Nodes):定义了网络中的节点数量,通常为个数,在50-500之间变化。 9. 路径损耗指数(Path Loss Exponent):定义了信号在传输过程中的衰减速度,通常为无量纲的指数值,在2-6之间变化。 以上是一些常见的仿真参数,具体的参数定义和变化范围还需要根据具体仿真场景进行调整和确定。
首先,需要了解K-Means聚类算法和LEACH协议的原理。K-Means是一种基于距离的聚类算法,它把数据集分成K个簇,每个簇的中心点就是该簇中所有数据点的平均值。LEACH协议是一种能量有效的分簇协议,它把所有节点分成若干个簇,每个簇都有一个簇头节点,由这些簇头节点负责汇总并传输数据,其他节点则通过簇头节点进行通信,从而减少能量消耗。 接下来,我们可以按照以下步骤实现基于K-Means的LEACH协议构建: 1. 生成40个随机节点的位置信息,并且计算每个节点之间的距离。 2. 根据K-Means算法的原理,将这40个节点分为若干个簇,每个簇的中心点可以取该簇中所有节点的平均值。 3. 根据LEACH协议的原理,选取每个簇中的一个节点作为簇头节点,该节点应当具有足够的能量和计算能力,以便处理和汇总该簇的数据。 4. 每个节点都应当知道它所属的簇和簇头节点的信息,以便它们可以通过簇头节点进行通信。 5. 当簇头节点的能量消耗达到一定阈值时,需要选取一个新的簇头节点来代替它。 6. 如果节点的能量消耗过高,可以将它从簇中剔除,以避免影响整个簇的稳定性和能耗。 7. 在整个过程中,需要不断地监测和调整节点的参数,以保证整个网络的稳定性和能量效率。 至于具体的Python实现代码,可以参考以下示例: python import random import math # 生成40个随机节点的位置信息 nodes = [] for i in range(40): x = random.randint(0, 100) y = random.randint(0, 100) node = {'id': i, 'x': x, 'y': y, 'energy': 100, 'cluster': None} nodes.append(node) # 计算每个节点之间的距离 def distance(node1, node2): dx = node1['x'] - node2['x'] dy = node1['y'] - node2['y'] return math.sqrt(dx * dx + dy * dy) # K-Means算法 k = 4 clusters = [] for i in range(k): cluster = {'id': i, 'center': None, 'nodes': []} center = {'x': random.randint(0, 100), 'y': random.randint(0, 100)} cluster['center'] = center clusters.append(cluster) for node in nodes: min_distance = float('inf') for cluster in clusters: d = distance(node, cluster['center']) if d < min_distance: min_distance = d nearest_cluster = cluster nearest_cluster['nodes'].append(node) node['cluster'] = nearest_cluster # LEACH协议 for cluster in clusters: head_node = random.choice(cluster['nodes']) head_node['is_head'] = True for node in cluster['nodes']: if node != head_node: node['head'] = head_node # 簇头节点更迭 for node in nodes: if node.get('is_head') and node['energy'] < 10: cluster = node['cluster'] nodes_in_cluster = cluster['nodes'] new_head_node = max(nodes_in_cluster, key=lambda n: n['energy']) new_head_node['is_head'] = True node['is_head'] = False 这是一个简单的示例,具体实现方式可以根据实际情况进行调整和优化。总之,通过K-Means算法和LEACH协议的结合,可以有效地构建簇状拓扑结构的无线传感器网络,并且提高整个网络的能量效率和稳定性。
好的,这是一个比较复杂的项目,需要一步步实现,下面我会详细介绍。 首先,我们需要生成一个由40个节点组成的无线传感器网络场景。我们可以使用Python中的random库来随机生成节点的位置,如下所示: python import random # 生成40个节点 num_nodes = 40 # 随机生成节点的位置 nodes = [] for i in range(num_nodes): x = random.uniform(0, 100) y = random.uniform(0, 100) nodes.append((x, y)) 接下来,我们需要使用K-means算法将这些节点分成几个簇。K-means算法是一种聚类算法,它可以将数据分成K个簇,每个簇都有一个簇中心,簇中心是所有数据点的平均值。K-means算法的基本思想是通过不断计算簇中心,将数据点划分到最近的簇中心所在的簇。我们可以使用scikit-learn库中的KMeans类来实现K-means算法,如下所示: python from sklearn.cluster import KMeans # 将节点分成4个簇 num_clusters = 4 # 使用K-means算法进行聚类 kmeans = KMeans(n_clusters=num_clusters) kmeans.fit(nodes) # 获取每个簇的簇中心 cluster_centers = kmeans.cluster_centers_ 现在,我们已经得到了每个簇的簇中心,接下来需要将这些节点连接起来形成簇状拓扑结构。我们可以将每个簇中距离簇中心最近的节点作为簇头节点,其他节点作为普通节点。我们可以使用networkx库来生成网络拓扑图,并使用matplotlib库进行可视化,如下所示: python import networkx as nx import matplotlib.pyplot as plt # 创建无向图 G = nx.Graph() # 添加节点 for i in range(num_nodes): G.add_node(i, pos=nodes[i]) # 添加边 for i in range(num_nodes): for j in range(i + 1, num_nodes): dist = ((nodes[i][0] - nodes[j][0]) ** 2 + (nodes[i][1] - nodes[j][1]) ** 2) ** 0.5 if dist <= 10: G.add_edge(i, j) # 设置节点颜色 colors = [] for i in range(num_nodes): for j in range(num_clusters): if i in kmeans.labels_ and kmeans.labels_[i] == j: if i == kmeans.predict([cluster_centers[j]])[0]: colors.append('red') # 簇头节点为红色 else: colors.append('blue') # 普通节点为蓝色 break # 绘制网络拓扑图 pos = nx.get_node_attributes(G, 'pos') nx.draw(G, pos, node_color=colors, with_labels=True) plt.show() 现在,我们已经生成了簇状拓扑结构,并且将簇头节点和普通节点区分开来了。接下来,我们需要实现基于Leach协议的选取原则实现簇头节点的更迭。Leach协议是一种经典的无线传感器网络协议,它采用了分簇的方式来延长网络寿命。在Leach协议中,每个节点都有一定的概率成为簇头节点,簇头节点负责收集和处理其他普通节点的数据,并将数据传输到基站。 我们可以模拟Leach协议的过程,每个节点都有一定的概率成为簇头节点,根据节点的能量等参数来计算概率。簇头节点和普通节点的能量消耗不同,簇头节点的能量消耗更大,因此需要定期更换簇头节点,以平均能量消耗。我们可以使用以下代码实现: python # 节点参数设置 num_nodes = 40 node_energy = [random.uniform(1, 10) for i in range(num_nodes)] # 节点能量 node_threshold = [0.1 for i in range(num_nodes)] # 阈值 cluster_head = [False for i in range(num_nodes)] # 是否是簇头节点 next_round_cluster_head = [False for i in range(num_nodes)] # 下一轮是否是簇头节点 # 模拟Leach协议过程 num_rounds = 100 for round in range(num_rounds): # 计算每个节点成为簇头节点的概率 for i in range(num_nodes): if cluster_head[i]: # 如果已经是簇头节点,不需要再次选取 next_round_cluster_head[i] = False else: # 计算概率 if random.uniform(0, 1) < node_energy[i] / (node_threshold[i] * num_nodes): next_round_cluster_head[i] = True else: next_round_cluster_head[i] = False # 更迭簇头节点 for i in range(num_nodes): # 如果是簇头节点 if cluster_head[i]: # 如果能量低于阈值,不再担任簇头节点 if node_energy[i] < node_threshold[i]: cluster_head[i] = False else: # 继续担当簇头节点 next_round_cluster_head[i] = True # 如果不是簇头节点 else: # 如果下一轮成为簇头节点,更新能量消耗和状态 if next_round_cluster_head[i]: cluster_head[i] = True node_energy[i] -= node_energy[i] * 0.05 # 簇头节点能量消耗更大 else: node_energy[i] -= node_energy[i] * 0.01 # 普通节点能量消耗较小 最后,我们可以将Leach协议的过程和簇状拓扑结构进行可视化,如下所示: python # 绘制网络拓扑图 pos = nx.get_node_attributes(G, 'pos') # 模拟Leach协议过程 for round in range(num_rounds): # 计算颜色 colors = [] for i in range(num_nodes): if cluster_head[i]: colors.append('red') # 簇头节点为红色 else: colors.append('blue') # 普通节点为蓝色 # 绘制网络拓扑图 plt.clf() nx.draw(G, pos, node_color=colors, with_labels=True) plt.title('Round {}'.format(round)) plt.pause(0.1) # 更迭簇头节点 for i in range(num_nodes): # 如果是簇头节点 if cluster_head[i]: # 如果能量低于阈值,不再担任簇头节点 if node_energy[i] < node_threshold[i]: cluster_head[i] = False else: # 继续担当簇头节点 next_round_cluster_head[i] = True # 如果不是簇头节点 else: # 如果下一轮成为簇头节点,更新能量消耗和状态 if next_round_cluster_head[i]: cluster_head[i] = True node_energy[i] -= node_energy[i] * 0.05 # 簇头节点能量消耗更大 else: node_energy[i] -= node_energy[i] * 0.01 # 普通节点能量消耗较小 # 计算每个节点成为簇头节点的概率 for i in range(num_nodes): if cluster_head[i]: # 如果已经是簇头节点,不需要再次选取 next_round_cluster_head[i] = False else: # 计算概率 if random.uniform(0, 1) < node_energy[i] / (node_threshold[i] * num_nodes): next_round_cluster_head[i] = True else: next_round_cluster_head[i] = False 这样,我们就完成了这个项目。完整代码如下:
Python动态仿真是指使用Python编程语言,在科学实验或其他领域中通过编写代码实现各种动态模拟的过程。Python作为一门简单易学且应用范围广泛的语言,具有其他语言无法比拟的优势。可以利用Python的绘图库matplotlib来实现各种动态模拟仿真,比如地球公转的动态模拟图。 在无线传感器网络领域,也可以利用Python进行仿真。比如使用改进后的LEACH路由协议的算法IMP_LEACH,通过Python编写仿真代码来模拟网络运行,并将仿真结果与经典LEACH算法进行比较。 在Python中,可以通过定义一个数据生成函数(data_gen)来随时间变换地球坐标,这个函数可以作为动画函数animation.FuncAnimation的帧数参数,用于生成动态模拟效果。123 #### 引用[.reference_title] - *1* *3* [python绘制动态模拟图-用python生成地球运动的动态模拟动态图](https://blog.csdn.net/weixin_37988176/article/details/109416738)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [无线传感器网络:LEACH路由协议优化python仿真](https://download.csdn.net/download/weixin_51066144/85470847)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

最新推荐

工资透视表.xls

工资透视表.xls

固定资产移转表.xlsx

固定资产移转表.xlsx

软件工程期末复习资料(二仙桥某校定制版)

软件工程期末复习资料(二仙桥某校定制版)

基于 token 的多平台身份认证架构设计.docx

站在更高的维度做架构,来自一线互联网大厂的经验总结,少走弯路少踩坑,值得拥有。

汽车行业品牌价值排行报告.pdf

汽车行业品牌价值排行报告.pdf

基于51单片机的usb键盘设计与实现(1).doc

基于51单片机的usb键盘设计与实现(1).doc

"海洋环境知识提取与表示:专用导航应用体系结构建模"

对海洋环境知识提取和表示的贡献引用此版本:迪厄多娜·察查。对海洋环境知识提取和表示的贡献:提出了一个专门用于导航应用的体系结构。建模和模拟。西布列塔尼大学-布雷斯特,2014年。法语。NNT:2014BRES0118。电话:02148222HAL ID:电话:02148222https://theses.hal.science/tel-02148222提交日期:2019年HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire论文/西布列塔尼大学由布列塔尼欧洲大学盖章要获得标题西布列塔尼大学博士(博士)专业:计算机科学海洋科学博士学院对海洋环境知识的提取和表示的贡献体系结构的建议专用于应用程序导航。提交人迪厄多内·察察在联合研究单位编制(EA编号3634)海军学院

react中antd组件库里有个 rangepicker 我需要默认显示的当前月1号到最后一号的数据 要求选择不同月的时候 开始时间为一号 结束时间为选定的那个月的最后一号

你可以使用 RangePicker 的 defaultValue 属性来设置默认值。具体来说,你可以使用 moment.js 库来获取当前月份和最后一天的日期,然后将它们设置为 RangePicker 的 defaultValue。当用户选择不同的月份时,你可以在 onChange 回调中获取用户选择的月份,然后使用 moment.js 计算出该月份的第一天和最后一天,更新 RangePicker 的 value 属性。 以下是示例代码: ```jsx import { useState } from 'react'; import { DatePicker } from 'antd';

基于plc的楼宇恒压供水系统学位论文.doc

基于plc的楼宇恒压供水系统学位论文.doc

"用于对齐和识别的3D模型计算机视觉与模式识别"

表示用于对齐和识别的3D模型马蒂厄·奥布里引用此版本:马蒂厄·奥布里表示用于对齐和识别的3D模型计算机视觉与模式识别[cs.CV].巴黎高等师范学校,2015年。英语NNT:2015ENSU0006。电话:01160300v2HAL Id:tel-01160300https://theses.hal.science/tel-01160300v22018年4月11日提交HAL是一个多学科的开放获取档案馆,用于存放和传播科学研究文件,无论它们是否已这些文件可能来自法国或国外的教学和研究机构,或来自公共或私人研究中心。L’archive ouverte pluridisciplinaire博士之路博士之路博士之路在获得等级时,DOCTEURDE L'ÉCOLE NORMALE SUPERIEURE博士学校ED 386:巴黎中心数学科学Discipline ou spécialité:InformatiquePrésentée et soutenue par:马蒂厄·奥布里le8 may 2015滴度表示用于对齐和识别的Unité derechercheThèse dirigée par陪审团成员équipe WILLOW(CNRS/ENS/INRIA UMR 8548)慕尼黑工业大学(TU Munich�