Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. """
  2. gausskernel.py
  3. Vasco Flores
  4.  
  5. unidim:
  6. 0.00081721 0.02804124 0.23392411 0.47442500 0.23392411 0.02804124 0.00081721
  7. sum:
  8. 0.9999901346984609
  9.  
  10. bidim:
  11. 0.00000067 0.00002292 0.00019117 0.00038771 0.00019117 0.00002292 0.00000067
  12. 0.00002292 0.00078631 0.00655952 0.01330347 0.00655952 0.00078631 0.00002292
  13. 0.00019117 0.00655952 0.05472049 0.11097945 0.05472049 0.00655952 0.00019117
  14. 0.00038771 0.01330347 0.11097945 0.22507908 0.11097945 0.01330347 0.00038771
  15. 0.00019117 0.00655952 0.05472049 0.11097945 0.05472049 0.00655952 0.00019117
  16. 0.00002292 0.00078631 0.00655952 0.01330347 0.00655952 0.00078631 0.00002292
  17. 0.00000067 0.00002292 0.00019117 0.00038771 0.00019117 0.00002292 0.00000067
  18. sum:
  19. 0.9999802694942458
  20. """
  21.  
  22. import math
  23.  
  24. def gauss1(x, sigma) :
  25. t = 2.0*sigma*sigma
  26. return math.exp(-(x*x)/t)/(math.sqrt(math.pi*t))
  27.  
  28. def gauss2(x, y, sigma) :
  29. t = 2.0*sigma*sigma
  30. return math.exp(-(x*x + y*y)/t)/(math.pi*t)
  31.  
  32. def genGauss1(sigma, r):
  33. a = []
  34. for x in range(-r, r+1):
  35. a.append(gauss1(x, sigma))
  36. return a
  37.  
  38. def genGauss2(sigma, r):
  39. a = []
  40. for y in range(-r, r+1):
  41. b = []
  42. for x in range(-r, r+1):
  43. b.append(gauss2(x, y, sigma))
  44. a.append(b)
  45. return a
  46.  
  47.  
  48. sigma = 0.84089642
  49. r = math.ceil(3*sigma)
  50.  
  51. uni = genGauss1(sigma, r)
  52. bidi = genGauss2(sigma, r)
  53.  
  54. print("unidim:")
  55. print(" ".join(["{:10.8f}".format(n) for n in uni]))
  56.  
  57. print("sum:")
  58. print(sum(uni))
  59.  
  60. print("\nbidim:")
  61. for l in bidi:
  62. print(" ".join(["{:10.8f}".format(n) for n in l]))
  63.  
  64. print("sum:")
  65. print(sum(sum(l) for l in bidi))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement