halcon 脚本代码实现简单的一维kmeans算法

kmeans(:: Props, K, Num : Classification)
N := |Props|-1

Seeds :=[]
for i := 0 to K-1 by 1
    tuple_rand(1,Rand)
    tuple_floor(Rand*N,seed)
    tuple_int(seed,seed)
    tuple_find(Seeds,seed, Indices)
    while(|Indices|>0 and Indices # -1)
        tuple_rand(1,Rand)
        tuple_floor(Rand*N,seed)
        tuple_find(Seeds,seed, Indices)
    endwhile
    Seeds :=[Seeds, seed]
    stop()
endfor

PSeeds :=Props[Seeds]

iterNum := 0
tuple_gen_const(N+1, -1, Classification)
tuple_max(Props,Max)
tuple_min(Props,Min)
delta := Max-Min
while(iterNum<Num)
    
    tuple_gen_const(N+1, -1, ClassificationNew)
    for j := 0 to N by 1
        Mini := delta
        for i := 0 to K-1 by 1            
           tuple_fabs(PSeeds[i] - Props[j],d)
           if(d<=Mini)
               ClassificationNew[j] := i
               Mini := d
           endif
*            stop()
        end
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值