我正在尝试使用中文耳语算法进行面部聚类.我已经使用DLIB和Python,用于提取每个面的特征和如在由Davisking描述映射到128 d矢量https://github.com/davisking/dlib/blob/master/examples/dnn_face_recognition_ex.cpp.
然后我按照那里的指示构建了一个图表.我实现了中文耳语算法并应用于此图.谁能告诉我我做了什么错?任何人都可以使用中文耳语算法上传面部聚类的python代码吗?这是我的中国私语代码:
import networkx as nx
import random
from random import shuffle
import math
def chinese_whispers(nodes,edges,iterations):
G = nx.Graph()
G.add_nodes_from(nodes)
#print(G.node)
for n, v in enumerate(nodes):
G.node[n]['class'] = v
#print(n,v)
G.add_edges_from(edges)
#gn=G.nodes()
#for node in gn:
#print((node,G[node],G.node,G.node[node]))
#(0, {16: {'weight': 0.49846761956907698}, 14: {'weight': 0.55778036559581601}, 7: {'weight': 0.43902511314524784}}, {'class': 0})
for z in range(0, iterations):
gn = G.nodes()
# I randomize the nodes to give me an arbitrary start point
shuffle(gn)
for node in gn:
neighs = G[node] …Run Code Online (Sandbox Code Playgroud)