Advertisement
Guest User

Dat kernel generator

a guest
Aug 20th, 2014
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <title>Fuck you Tobba</title>
  5. <!-- seriously get fucked -->
  6. </head>
  7. <body>
  8. <?php
  9. /**
  10. * gaussianKernel.php
  11. * Created by William Schaller
  12. * Date: 8/20/2014
  13. * Time: 9:43 PM
  14. */
  15.  
  16. function generateKernel($size)
  17. {
  18. $amplitude = 1; // This should be 1 probably...
  19. $center = 0;
  20. $spread = $size / 5;
  21. $max = floor($size / 2);
  22. $min = -1 * $max;
  23.  
  24. $kernel = array();
  25. // Allocate array
  26. for ($i = $min; $i <= $max; $i++) {
  27. $kernel[$i] = array();
  28. }
  29.  
  30. for ($i = $min; $i <= $max; $i++) {
  31. for ($j = $min; $j <= $max; $j++) {
  32. $kernel[$j][$i] = number_format(
  33. (float)$amplitude * exp(
  34. -1 * (
  35. pow((float)$j - (float)$center, 2) / (2 * pow((float)$spread, 2))
  36. + pow((float)$i - (float)$center, 2) / (2 * pow((float)$spread, 2))
  37. )
  38. ),
  39. 3);
  40. }
  41. }
  42.  
  43. return $kernel;
  44. }
  45.  
  46. function kernelToTable($kernel) {
  47. $html = "<table>";
  48. $head = array_keys(reset($kernel));
  49. $html .= "<thead><tr>";
  50. foreach($head as $cell) {
  51. $html .= "<td>$cell</td>";
  52. }
  53. $html .= "</tr></thead>";
  54. foreach($kernel as $row) {
  55. $html .= "<tr>";
  56. foreach($row as $cell) {
  57. $html .= "<td>$cell</td>";
  58. }
  59. $html .= "</tr>";
  60. }
  61.  
  62. $html .= "</table>";
  63. echo $html;
  64. }
  65.  
  66. $kernels = array();
  67.  
  68. for($i = 3; $i < 20; $i += 2) {
  69. $kernels[$i] = generateKernel($i);
  70. }
  71.  
  72. array_map("kernelToTable", $kernels);
  73. ?>
  74. </body>
  75. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement