Zhang-Suen thinning algorithm: Difference between revisions

m
Line 623:
................................</pre>
=={{header|Ruby}}==
{{incorrect|Ruby|You probably have the same axis problem as mentioned in the talk page}}
<lang ruby>
# Thinning RC
Line 635 ⟶ 634:
return 0 if ng[1][1] == 0 or (ng[1][2] + ng[0][1] + ng[1+g][g]) == 3 or (ng[g][1+g] + ng[2][1] + ng[1][0]) == 3
t = -1; ng.each{|n| n.each{|g| t+=g}}; return 0 unless (2 <= t and t <= 6)
t = -1; [ng[0][1],ng[0][2],ng[1][2],ng[2][2],ng[2][1],ng[2][0],ng[1][0],ng[0][0],ng[0][1]].each{|n| t += (t==0 or t==2)? n : 1-n}
return 0 unless t==1 or t==2
@r=1
2,172

edits