neuron_switch160715.h 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. #include <stdio.h>
  2. /* =======================================================================================================
  3. * SeaWiFS
  4. * ======================================================================================================= */
  5. /* Definition des variables pour le reseau avec Rrs490/Rrs555 >= .85 */
  6. /* nombre de couches cachees - hidden layer number */
  7. #define rsupSW_NC 2
  8. /* nombre de donnees d entree - input data number*/
  9. #define rsupSW_NE 5
  10. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  11. #define rsupSW_NC1 4
  12. /* nombre de neurones de la deuxieme couche cachee */
  13. #define rsupSW_NC2 4
  14. /* nombre de donnees de sortie - nb output*/
  15. #define rsupSW_NS 1
  16. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  17. #define rsupSW_NES 6
  18. /* LUTs file names */
  19. #define rsupSW_LUT_POIDS "KdSeaWiFS_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_555_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_4_4_publi_200715.sn"
  20. #define rsupSW_LUT_MOY "Moy_KdSeaWiFS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_160715.dat"
  21. #define rsupSW_LUT_ECART "Ecart_KdSeaWiFS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_160715.dat"
  22. /* Definition des variables pour le reseau avec Rrs490/Rrs555 < .85 */
  23. /* nombre de couches cachees - hidden layer number */
  24. #define rinfSW_NC 2
  25. /* nombre de donnees d entree - input data number*/
  26. #define rinfSW_NE 6
  27. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  28. #define rinfSW_NC1 5
  29. /* nombre de neurones de la deuxieme couche cachee */
  30. #define rinfSW_NC2 5
  31. /* nombre de donnees de sortie - nb output*/
  32. #define rinfSW_NS 1
  33. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  34. #define rinfSW_NES 7
  35. /* LUTs file names */
  36. #define rinfSW_LUT_POIDS "KdSeaWiFS_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_670_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_5_5_publi_160715_ter.sn"
  37. #define rinfSW_LUT_MOY "Moy_KdSeaWiFS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_160715.dat"
  38. #define rinfSW_LUT_ECART "Ecart_KdSeaWiFS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_160715.dat"
  39. /* LUTs parameters definition */
  40. float rsupSW_b1[rsupSW_NC1], rsupSW_b2[rsupSW_NC2], rsupSW_b3;
  41. float rsupSW_w1[rsupSW_NE][rsupSW_NC1], rsupSW_w2[rsupSW_NC1][rsupSW_NC2], rsupSW_w3[rsupSW_NC2];
  42. float rsupSW_moy[rsupSW_NES], rsupSW_ecart[rsupSW_NES];
  43. float rinfSW_b1[rinfSW_NC1], rinfSW_b2[rinfSW_NC2], rinfSW_b3;
  44. float rinfSW_w1[rinfSW_NE][rinfSW_NC1], rinfSW_w2[rinfSW_NC1][rinfSW_NC2], rinfSW_w3[rinfSW_NC2];
  45. float rinfSW_moy[rinfSW_NES], rinfSW_ecart[rinfSW_NES];
  46. /* =======================================================================================================
  47. * MODIS
  48. * ======================================================================================================= */
  49. /* Definition des variables pour le reseau avec Rrs490/Rrs555 >= .85 */
  50. /* nombre de couches cachees - hidden layer number */
  51. #define rsupMO_NC 2
  52. /* nombre de donnees d entree - input data number*/
  53. #define rsupMO_NE 5
  54. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  55. #define rsupMO_NC1 5
  56. /* nombre de neurones de la deuxieme couche cachee */
  57. #define rsupMO_NC2 4
  58. /* nombre de donnees de sortie - nb output*/
  59. #define rsupMO_NS 1
  60. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  61. #define rsupMO_NES 6
  62. /* LUTs file names */
  63. #define rsupMO_LUT_POIDS "KdMODIS_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_555_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_5_4_publi_CSIRO.sn"
  64. #define rsupMO_LUT_MOY "Moy_KdMODIS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_555_log_Kd_lambda_merge_seuil_15_ss_645_publi_sup_CSIRO.dat"
  65. #define rsupMO_LUT_ECART "Ecart_KdMODIS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_555_log_Kd_lambda_merge_seuil_15_ss_645_publi_sup_CSIRO.dat"
  66. /* Definition des variables pour le reseau avec Rrs490/Rrs555 < .85 */
  67. /* nombre de couches cachees - hidden layer number */
  68. #define rinfMO_NC 2
  69. /* nombre de donnees d entree - input data number*/
  70. #define rinfMO_NE 6
  71. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  72. #define rinfMO_NC1 10
  73. /* nombre de neurones de la deuxieme couche cachee */
  74. #define rinfMO_NC2 7
  75. /* nombre de donnees de sortie - nb output*/
  76. #define rinfMO_NS 1
  77. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  78. #define rinfMO_NES 7
  79. /* LUTs file names */
  80. #define rinfMO_LUT_POIDS "KdMODIS_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_670_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_10_7_publi_CSIRO.sn"
  81. #define rinfMO_LUT_MOY "Moy_KdMODIS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_ss_645_publi_inf_CSIRO.dat"
  82. #define rinfMO_LUT_ECART "Ecart_KdMODIS_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_ss_645_publi_inf_CSIRO.dat"
  83. /* LUTs parameters definition */
  84. float rsupMO_b1[rsupMO_NC1], rsupMO_b2[rsupMO_NC2], rsupMO_b3;
  85. float rsupMO_w1[rsupMO_NE][rsupMO_NC1], rsupMO_w2[rsupMO_NC1][rsupMO_NC2], rsupMO_w3[rsupMO_NC2];
  86. float rsupMO_moy[rsupMO_NES], rsupMO_ecart[rsupMO_NES];
  87. float rinfMO_b1[rinfMO_NC1], rinfMO_b2[rinfMO_NC2], rinfMO_b3;
  88. float rinfMO_w1[rinfMO_NE][rinfMO_NC1], rinfMO_w2[rinfMO_NC1][rinfMO_NC2], rinfMO_w3[rinfMO_NC2];
  89. float rinfMO_moy[rinfMO_NES], rinfMO_ecart[rinfMO_NES];
  90. /* =======================================================================================================
  91. * MERIS / OLCI
  92. * ======================================================================================================= */
  93. /* Definition des variables pour le reseau avec Rrs490/Rrs555 >= .85 */
  94. /* nombre de couches cachees - hidden layer number */
  95. #define rsupOL_NC 2
  96. /* nombre de donnees d entree - input data number*/
  97. #define rsupOL_NE 5
  98. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  99. #define rsupOL_NC1 7
  100. /* nombre de neurones de la deuxieme couche cachee */
  101. #define rsupOL_NC2 4
  102. /* nombre de donnees de sortie - nb output*/
  103. #define rsupOL_NS 1
  104. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  105. #define rsupOL_NES 6
  106. /* LUTs file names */
  107. #define rsupOL_LUT_POIDS "KdOLCI_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_555_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_7_4_switch_110416.sn"
  108. #define rsupOL_LUT_MOY "Moy_KdOLCI_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_ss_620.dat"
  109. #define rsupOL_LUT_ECART "Ecart_KdOLCI_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_ss_620.dat"
  110. /* Definition des variables pour le reseau avec Rrs490/Rrs555 < .85 */
  111. /* nombre de couches cachees - hidden layer number */
  112. #define rinfOL_NC 2
  113. /* nombre de donnees d entree - input data number*/
  114. #define rinfOL_NE 6
  115. /* nombre de neurones de la premiere couche cachee - number of neuron in the first hidden layer */
  116. #define rinfOL_NC1 5
  117. /* nombre de neurones de la deuxieme couche cachee */
  118. #define rinfOL_NC2 5
  119. /* nombre de donnees de sortie - nb output*/
  120. #define rinfOL_NS 1
  121. /* nombre de neurones d'entree + sortie - nb input + nb output*/
  122. #define rinfOL_NES 7
  123. /* LUTs file names */
  124. #define rinfOL_LUT_POIDS "KdOLCI_poids_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_443_to_670_log_Kd_lambda_merge_seuil_15_angle_ascii_6x1_hh_5_5_switch_110416.sn"
  125. #define rinfOL_LUT_MOY "Moy_KdOLCI_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_ss_620.dat"
  126. #define rinfOL_LUT_ECART "Ecart_KdOLCI_IOCCG_NOMAD_BOUM_ss_12_COASTCOLOUR_412_to_670_log_Kd_lambda_merge_seuil_15_angle_publi_ss_620.dat"
  127. /* LUTs parameters definition */
  128. float rsupOL_b1[rsupOL_NC1], rsupOL_b2[rsupOL_NC2], rsupOL_b3;
  129. float rsupOL_w1[rsupOL_NE][rsupOL_NC1], rsupOL_w2[rsupOL_NC1][rsupOL_NC2], rsupOL_w3[rsupOL_NC2];
  130. float rsupOL_moy[rsupOL_NES], rsupOL_ecart[rsupOL_NES];
  131. float rinfOL_b1[rinfOL_NC1], rinfOL_b2[rinfOL_NC2], rinfOL_b3;
  132. float rinfOL_w1[rinfOL_NE][rinfOL_NC1], rinfOL_w2[rinfOL_NC1][rinfOL_NC2], rinfOL_w3[rinfOL_NC2];
  133. float rinfOL_moy[rinfOL_NES], rinfOL_ecart[rinfOL_NES];