Scheduled service maintenance on November 22


On Friday, November 22, 2024, between 06:00 CET and 18:00 CET, GIN services will undergo planned maintenance. Extended service interruptions should be expected. We will try to keep downtimes to a minimum, but recommend that users avoid critical tasks, large data uploads, or DOI requests during this time.

We apologize for any inconvenience.

sub-10377_T1w.html 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta name="generator" content="NiReports: https://www.nipreps.org/" />
  7. <title>sub-10377_T1w :: Anatomical MRI report</title>
  8. <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
  9. <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
  10. <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4" crossorigin="anonymous"></script>
  11. <script>
  12. var timestamp = Date.now()
  13. function read_form() {
  14. var ds = "unknown";
  15. var sub = "unspecified";
  16. var artifacts = [];
  17. $('#qcartifacts-group input:checked').each(function() {
  18. artifacts.push($(this).attr('name'));
  19. });
  20. var rating = $('#qcslider').val();
  21. var payload = {
  22. 'dataset': ds,
  23. 'subject': sub,
  24. 'rating': rating,
  25. 'artifacts': artifacts,
  26. 'time_sec': (Date.now() - timestamp) / 1000,
  27. 'confidence': $('#qcextra-confidence').val(),
  28. 'comments': $('#qcextra-comments').val()
  29. };
  30. var file = new Blob([JSON.stringify(payload)], {type: 'text/json'});
  31. $('#btn-download').attr('href', URL.createObjectURL(file));
  32. $('#btn-download').attr('download', payload['dataset'] + "_" + payload['subject'] + ".json");
  33. return payload
  34. };
  35. function toggle_rating() {
  36. if ($('#qcrating-menu').hasClass('d-none')) {
  37. $('#qcrating-menu').removeClass('d-none');
  38. $('#qcrating-toggler').prop('checked', true);
  39. } else {
  40. $('#qcrating-menu').addClass('d-none');
  41. $('#qcrating-toggler').prop('checked', false);
  42. }
  43. };
  44. $(window).on('load',function(){
  45. var authorization = $('#btn-post').val()
  46. if (authorization.includes("secret_token")) {
  47. $('#btn-post').addClass('d-none');
  48. };
  49. timestamp = Date.now();
  50. });
  51. </script>
  52. <style type="text/css">
  53. /* The slider itself */
  54. .slider {
  55. -webkit-appearance: none; /* Override default CSS styles */
  56. appearance: none;
  57. margin-bottom: 8px;
  58. margin-left: 10%;
  59. width: 80%;
  60. height: 5px; /* Specified height */
  61. background: #d3d3d3; /* Grey background */
  62. outline: none; /* Remove outline */
  63. opacity: 0.7; /* Set transparency (for mouse-over effects on hover) */
  64. -webkit-transition: .2s; /* 0.2 seconds transition on hover */
  65. transition: opacity .2s;
  66. }
  67. /* Mouse-over effects */
  68. .slider:hover {
  69. opacity: 1; /* Fully shown on mouse-over */
  70. }
  71. .slider::-webkit-slider-thumb {
  72. -webkit-appearance: none;
  73. appearance: none;
  74. width: 25px;
  75. height: 25px;
  76. border: 0;
  77. background: url('https://raw.githubusercontent.com/nipreps/nireports/main/assets/slider-handle.png');
  78. cursor: pointer;
  79. z-index: 2000 !important;
  80. }
  81. .slider::-moz-range-thumb {
  82. width: 25px;
  83. height: 25px;
  84. border: 0;
  85. background: url('https://raw.githubusercontent.com/nipreps/nireports/main/assets/slider-handle.png');
  86. cursor: pointer;
  87. z-index: 2000 !important;
  88. }
  89. </style>
  90. </head>
  91. <body style="font-family: helvetica;">
  92. <nav class="navbar fixed-top navbar-expand-lg bg-light">
  93. <div class="container-fluid">
  94. <div class="collapse navbar-collapse" id="navbarSupportedContent">
  95. <ul class="navbar-nav me-auto mb-2 mb-lg-0">
  96. <li class="nav-item"><a class="nav-link" href="#Basic visual report">Basic visual report</a></li>
  97. <li class="nav-item dropdown">
  98. <a class="nav-link dropdown-toggle" id="navbarAbout" role="button" data-bs-toggle="dropdown" aria-expanded="false" href="#About">
  99. About
  100. </a>
  101. <ul class="dropdown-menu">
  102. <li><a class="dropdown-item" href="#errors">Errors</a></li>
  103. <li><a class="dropdown-item" href="#meta-about-metadata">Reproducibility and provenance information</a></li>
  104. </ul>
  105. </li>
  106. </ul>
  107. </div>
  108. </div>
  109. <div class="d-flex flex-row-reverse">
  110. <div class="form-check form-switch align-self-center flex-fill me-4">
  111. <input class="form-check-input" type="checkbox" id="qcrating-toggler"></input>
  112. <label class="form-check-label" style="width: 100pt;" for="qcrating-toggler">Rating widget</label>
  113. </div>
  114. </div>
  115. </nav>
  116. <noscript>
  117. <h1 class="text-danger"> The navigation menu uses Javascript. Without it this report might not work as expected </h1>
  118. </noscript>
  119. <div id="Basic visual report" class="mt-5">
  120. <h1 class="sub-report-title pt-5 ps-4">Basic visual report</h1>
  121. <div id="datatype-figures_desc-zoomed_subject-10377_suffix-T1w" class="ps-4 pe-4 mb-2">
  122. <h3 class="run-title mt-3">Zoomed-in mosaic view of the brain</h3><p class="elem-caption">This panel shows a mosaic of the brain. This mosaic is the most suitable to screen head-motion intensity inhomogeneities, global/local noise, signal leakage (for example, from the eyeballs and across the phase-encoding axis), etc.</p> <div class="reportlet">
  123. <img class="svg-reportlet" src="./sub-10377/figures/sub-10377_desc-zoomed_T1w.svg" style="width: 100%" />
  124. </div>
  125. <small>Get figure file: <a href="./sub-10377/figures/sub-10377_desc-zoomed_T1w.svg" target="_blank">sub-10377/figures/sub-10377_desc-zoomed_T1w.svg</a></small>
  126. </div>
  127. <div id="datatype-figures_desc-background_subject-10377_suffix-T1w" class="ps-4 pe-4 mb-2">
  128. <h3 class="run-title mt-3">View of the background of the anatomical image</h3><p class="elem-caption">This panel shows a mosaic enhancing the background around the head. Artifacts usually unveil themselves in the air surrounding the head, where no signal sources are present.</p> <div class="reportlet">
  129. <img class="svg-reportlet" src="./sub-10377/figures/sub-10377_desc-background_T1w.svg" style="width: 100%" />
  130. </div>
  131. <small>Get figure file: <a href="./sub-10377/figures/sub-10377_desc-background_T1w.svg" target="_blank">sub-10377/figures/sub-10377_desc-background_T1w.svg</a></small>
  132. </div>
  133. </div>
  134. <div id="About" class="mt-5">
  135. <h1 class="sub-report-title pt-5 ps-4">About</h1>
  136. <div id="errors" class="ps-4 pe-4 mb-2">
  137. <h2 class="sub-report-group mt-4">Errors</h2> <p class="alert alert-success" role="alert">No errors to report!</p>
  138. </div>
  139. <div id="meta-about-metadata" class="ps-4 pe-4 mb-2">
  140. <h2 class="sub-report-group mt-4">Reproducibility and provenance information</h2><p class="elem-caption">Thanks for using <em>MRIQC</em>. The following information may assist in
  141. reconstructing the provenance of the corresponding derivatives.
  142. </p> <div class="accordion accordion-flush" id="about-metadata">
  143. <div class="accordion-item">
  144. <h2 class="accordion-header" id="about-metadata-0">
  145. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#about-metadata-0-collapse" aria-controls="about-metadata-0-collapse">
  146. Provenance Information
  147. </button>
  148. </h2>
  149. <div id="about-metadata-0-collapse" class="accordion-collapse collapse" aria-labelledby="about-metadata-0-heading" data-bs-parent="#about-metadata-0">
  150. <div class="accordion-body metadata-table">
  151. <table id="about-metadata-table-0" class="table table-sm table-striped">
  152. <tr><td colspan=2>Execution environment</td><td>singularity</td></tr>
  153. <tr><td colspan=2>Input filename</td><td><BIDS root>/sub-10377/anat/sub-10377_T1w.nii.gz</td></tr>
  154. <tr><td>Versions</td><td>MRIQC</td><td>23.1.0</td></tr>
  155. <tr><td>Versions</td><td>NiPype</td><td>1.8.6</td></tr>
  156. <tr><td>Versions</td><td>TemplateFlow</td><td>0.8.1</td></tr>
  157. <tr><td colspan=2>md5sum</td><td>b631b0b9950229269e08b749957ceb3d</td></tr>
  158. <tr><td>warnings</td><td>large_rot_frame</td><td>True</td></tr>
  159. <tr><td>warnings</td><td>small_air_mask</td><td>False</td></tr>
  160. </table>
  161. </div>
  162. </div>
  163. </div>
  164. <div class="accordion-item">
  165. <h2 class="accordion-header" id="about-metadata-1">
  166. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#about-metadata-1-collapse" aria-controls="about-metadata-1-collapse">
  167. Dataset Information
  168. </button>
  169. </h2>
  170. <div id="about-metadata-1-collapse" class="accordion-collapse collapse" aria-labelledby="about-metadata-1-heading" data-bs-parent="#about-metadata-1">
  171. <div class="accordion-body metadata-table">
  172. <table id="about-metadata-table-1" class="table table-sm table-striped">
  173. <tr><td>AccelNumReferenceLines</td><td>32</td></tr>
  174. <tr><td>AccelerationFactorPE</td><td>2</td></tr>
  175. <tr><td>AcquisitionMatrix</td><td>0/256/256/0</td></tr>
  176. <tr><td>DeviceSerialNumber</td><td>35343</td></tr>
  177. <tr><td>EchoTime</td><td>0.0035</td></tr>
  178. <tr><td>EchoTrainLength</td><td>1</td></tr>
  179. <tr><td>FlipAngle</td><td>7</td></tr>
  180. <tr><td>ImageType</td><td>ORIGINAL/PRIMARY/M/ND/NORM</td></tr>
  181. <tr><td>ImagingFrequency</td><td>123250095</td></tr>
  182. <tr><td>InPlanePhaseEncodingDirection</td><td>ROW</td></tr>
  183. <tr><td>InversionTime</td><td>1.1</td></tr>
  184. <tr><td>MRAcquisitionType</td><td>3D</td></tr>
  185. <tr><td>MagneticFieldStrength</td><td>3</td></tr>
  186. <tr><td>ManufacturerModelName</td><td>TrioTim</td></tr>
  187. <tr><td>NumberOfAverages</td><td>1</td></tr>
  188. <tr><td>NumberOfPhaseEncodingSteps</td><td>255</td></tr>
  189. <tr><td>PatientPosition</td><td>HFS</td></tr>
  190. <tr><td>PercentPhaseFieldOfView</td><td>100</td></tr>
  191. <tr><td>PercentSampling</td><td>100</td></tr>
  192. <tr><td>PhaseEncodingDirection</td><td>i-</td></tr>
  193. <tr><td>PixelBandwidth</td><td>200</td></tr>
  194. <tr><td>ProtocolName</td><td>MPRAGE - BWM</td></tr>
  195. <tr><td>ReceiveCoilName</td><td>HeadMatrix</td></tr>
  196. <tr><td>RepetitionTime</td><td>2.53</td></tr>
  197. <tr><td>ScanOptions</td><td>IR</td></tr>
  198. <tr><td>ScanningSequence</td><td>GR/IR</td></tr>
  199. <tr><td>SequenceName</td><td>*tfl3d1_ns</td></tr>
  200. <tr><td>SequenceVariant</td><td>SP/MP</td></tr>
  201. <tr><td>SoftwareVersions</td><td>syngo MR B15</td></tr>
  202. <tr><td>TotalScanTimeSec</td><td>363</td></tr>
  203. <tr><td>TransmitCoilName</td><td>Body</td></tr>
  204. <tr><td>VariableFlipAngleFlag</td><td>N</td></tr>
  205. </table>
  206. </div>
  207. </div>
  208. </div>
  209. <div class="accordion-item">
  210. <h2 class="accordion-header" id="about-metadata-2">
  211. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#about-metadata-2-collapse" aria-controls="about-metadata-2-collapse">
  212. Extracted Image quality metrics (IQMs)
  213. </button>
  214. </h2>
  215. <div id="about-metadata-2-collapse" class="accordion-collapse collapse" aria-labelledby="about-metadata-2-heading" data-bs-parent="#about-metadata-2">
  216. <div class="accordion-body metadata-table">
  217. <table id="about-metadata-table-2" class="table table-sm table-striped">
  218. <tr><td colspan=3>cjv</td><td>0.9301269751374728</td></tr>
  219. <tr><td colspan=3>cnr</td><td>0.9187957956119976</td></tr>
  220. <tr><td colspan=3>efc</td><td>0.6619267432121638</td></tr>
  221. <tr><td colspan=3>fber</td><td>3492.744696437838</td></tr>
  222. <tr><td>fwhm</td><td colspan=2>avg</td><td>3.108005567765568</td></tr>
  223. <tr><td>fwhm</td><td colspan=2>x</td><td>2.99128</td></tr>
  224. <tr><td>fwhm</td><td colspan=2>y</td><td>3.303961318681319</td></tr>
  225. <tr><td>fwhm</td><td colspan=2>z</td><td>3.0287753846153844</td></tr>
  226. <tr><td>icvs</td><td colspan=2>csf</td><td>0.2593425086734089</td></tr>
  227. <tr><td>icvs</td><td colspan=2>gm</td><td>0.365076682283451</td></tr>
  228. <tr><td>icvs</td><td colspan=2>wm</td><td>0.37558080904314006</td></tr>
  229. <tr><td>inu</td><td colspan=2>med</td><td>0.742638349533081</td></tr>
  230. <tr><td>inu</td><td colspan=2>range</td><td>0.34297496676445016</td></tr>
  231. <tr><td>qi</td><td colspan=2>1</td><td>0.0</td></tr>
  232. <tr><td>qi</td><td colspan=2>2</td><td>0.0009400746926458012</td></tr>
  233. <tr><td>rpve</td><td colspan=2>csf</td><td>3.62460112972019</td></tr>
  234. <tr><td>rpve</td><td colspan=2>gm</td><td>3.463726801527138</td></tr>
  235. <tr><td>rpve</td><td colspan=2>wm</td><td>3.5489832964136045</td></tr>
  236. <tr><td>size</td><td colspan=2>x</td><td>176</td></tr>
  237. <tr><td>size</td><td colspan=2>y</td><td>256</td></tr>
  238. <tr><td>size</td><td colspan=2>z</td><td>256</td></tr>
  239. <tr><td>snr</td><td colspan=2>csf</td><td>1.6449811477287057</td></tr>
  240. <tr><td>snr</td><td colspan=2>gm</td><td>4.220214299372831</td></tr>
  241. <tr><td>snr</td><td colspan=2>total</td><td>4.6628198522087265</td></tr>
  242. <tr><td>snr</td><td colspan=2>wm</td><td>8.123264109524644</td></tr>
  243. <tr><td>snrd</td><td colspan=2>csf</td><td>26.844379296906883</td></tr>
  244. <tr><td>snrd</td><td colspan=2>gm</td><td>56.07934447029552</td></tr>
  245. <tr><td>snrd</td><td colspan=2>total</td><td>51.636949520530294</td></tr>
  246. <tr><td>snrd</td><td colspan=2>wm</td><td>71.98712479438849</td></tr>
  247. <tr><td>spacing</td><td colspan=2>x</td><td>1.0</td></tr>
  248. <tr><td>spacing</td><td colspan=2>y</td><td>0.7109375</td></tr>
  249. <tr><td>spacing</td><td colspan=2>z</td><td>0.7109375</td></tr>
  250. <tr><td>summary</td><td>bg</td><td>k</td><td>121.31463586472502</td></tr>
  251. <tr><td>summary</td><td>bg</td><td>mad</td><td>9.020182195565457</td></tr>
  252. <tr><td>summary</td><td>bg</td><td>mean</td><td>28.899694565348373</td></tr>
  253. <tr><td>summary</td><td>bg</td><td>median</td><td>6.084020435810089</td></tr>
  254. <tr><td>summary</td><td>bg</td><td>n</td><td>3175833.0</td></tr>
  255. <tr><td>summary</td><td>bg</td><td>p05</td><td>0.0</td></tr>
  256. <tr><td>summary</td><td>bg</td><td>p95</td><td>89.58720091730356</td></tr>
  257. <tr><td>summary</td><td>bg</td><td>stdv</td><td>92.00647980969565</td></tr>
  258. <tr><td>summary</td><td>csf</td><td>k</td><td>-0.9022984616318968</td></tr>
  259. <tr><td>summary</td><td>csf</td><td>mad</td><td>193.66331173879036</td></tr>
  260. <tr><td>summary</td><td>csf</td><td>mean</td><td>391.264848934784</td></tr>
  261. <tr><td>summary</td><td>csf</td><td>median</td><td>369.6042414754629</td></tr>
  262. <tr><td>summary</td><td>csf</td><td>n</td><td>804094.0419075459</td></tr>
  263. <tr><td>summary</td><td>csf</td><td>p05</td><td>65.37279958277941</td></tr>
  264. <tr><td>summary</td><td>csf</td><td>p95</td><td>772.488074734807</td></tr>
  265. <tr><td>summary</td><td>csf</td><td>stdv</td><td>224.68586473420524</td></tr>
  266. <tr><td>summary</td><td>gm</td><td>k</td><td>2.699322829150619</td></tr>
  267. <tr><td>summary</td><td>gm</td><td>mad</td><td>102.28886609771229</td></tr>
  268. <tr><td>summary</td><td>gm</td><td>mean</td><td>782.0424512233907</td></tr>
  269. <tr><td>summary</td><td>gm</td><td>median</td><td>772.1230335086584</td></tr>
  270. <tr><td>summary</td><td>gm</td><td>n</td><td>1131923.9046660622</td></tr>
  271. <tr><td>summary</td><td>gm</td><td>p05</td><td>492.04515274614096</td></tr>
  272. <tr><td>summary</td><td>gm</td><td>p95</td><td>1092.9030109867454</td></tr>
  273. <tr><td>summary</td><td>gm</td><td>stdv</td><td>182.95817171100975</td></tr>
  274. <tr><td>summary</td><td>wm</td><td>k</td><td>-0.006887552415072218</td></tr>
  275. <tr><td>summary</td><td>wm</td><td>mad</td><td>101.43194878913357</td></tr>
  276. <tr><td>summary</td><td>wm</td><td>mean</td><td>985.0825852952963</td></tr>
  277. <tr><td>summary</td><td>wm</td><td>median</td><td>991.1477691978216</td></tr>
  278. <tr><td>summary</td><td>wm</td><td>n</td><td>1164492.054739539</td></tr>
  279. <tr><td>summary</td><td>wm</td><td>p05</td><td>774.2524406611919</td></tr>
  280. <tr><td>summary</td><td>wm</td><td>p95</td><td>1173.6683822721243</td></tr>
  281. <tr><td>summary</td><td>wm</td><td>stdv</td><td>122.01343330259769</td></tr>
  282. <tr><td>tpm</td><td>overlap</td><td>csf</td><td>0.21354141881158895</td></tr>
  283. <tr><td>tpm</td><td>overlap</td><td>gm</td><td>0.518062614413164</td></tr>
  284. <tr><td>tpm</td><td>overlap</td><td>wm</td><td>0.5425863583905439</td></tr>
  285. <tr><td colspan=3>wm2max</td><td>0.5554965227549148</td></tr>
  286. </table>
  287. </div>
  288. </div>
  289. </div>
  290. </div>
  291. </div>
  292. </div>
  293. <div id="qcrating-menu" class="card position-fixed d-none" style="width: 30%; top: 100px; left: 65%;">
  294. <div class="card-header m-0">
  295. Rating widget
  296. <button type="button" class="btn-close position-absolute top-0 end-0" aria-label="Close" id="close-qcrating-menu" onclick="toggle_rating()" style="margin: 10px 10px 0 0"></button>
  297. </div>
  298. <div class="card-body">
  299. <div class="accordion">
  300. <div class="accordion-item">
  301. <h2 class="accordion-header" id="qcslider-head">
  302. <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#qcslider-collapse" aria-expanded="true" aria-controls="qcslider-collapse">Overall Quality Rating</button>
  303. </h2>
  304. <div id="qcslider-collapse" class="accordion-collapse collapse show" aria-labelledby="qcslider-head">
  305. <div class="accordion-body">
  306. <input type="range" min="1.0" max="4.0" step="0.05" value="2.5" id="qcslider" class="slider">
  307. <ul class="list-group list-group-horizontal slider-labels" style="width: 100%">
  308. <li class="list-group-item list-group-item-danger small" style="font-size: 0.7em; width: 25%; text-align:center">Exclude</li>
  309. <li class="list-group-item list-group-item-warning small" style="font-size: 0.7em; width: 25%; text-align:center">Poor</li>
  310. <li class="list-group-item list-group-item-primary small" style="font-size: 0.7em; width: 25%; text-align:center">Acceptable</li>
  311. <li class="list-group-item list-group-item-success small" style="font-size: 0.7em; width: 25%; text-align:center">Excellent</li>
  312. </ul>
  313. </div>
  314. </div>
  315. </div>
  316. <div class="accordion-item">
  317. <h2 class="accordion-header" id="qcartifacts-head">
  318. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#qcartifacts-collapse" aria-expanded="false" aria-controls="qcartifacts-collapse">
  319. Record specific artifacts
  320. </button>
  321. </h2>
  322. <div id="qcartifacts-collapse" class="accordion-collapse collapse" aria-labelledby="qcartifacts-head">
  323. <div class="accordion-body">
  324. <fieldset id="qcartifacts-group" class="form-group">
  325. <div class="form-check form-switch small">
  326. <input class="form-check-input" type="checkbox" name="head-motion" id="qcartifacts-item-0" />
  327. <label class="form-check-label" for="qcartifacts-item-0">Head motion artifacts</label>
  328. </div>
  329. <div class="form-check form-switch small">
  330. <input class="form-check-input" type="checkbox" name="eye-spillover" id="qcartifacts-item-1" />
  331. <label class="form-check-label" for="qcartifacts-item-1">Eye spillover through <abbr title="phase-encoding">PE</abbr> axis</label>
  332. </div>
  333. <div class="form-check form-switch small">
  334. <input class="form-check-input" type="checkbox" name="noneye-spillover" id="qcartifacts-item-2" />
  335. <label class="form-check-label" for="qcartifacts-item-2">Non-eye spillover through <abbr title="phase-encoding">PE</abbr> axis</label>
  336. </div>
  337. <div class="form-check form-switch small">
  338. <input class="form-check-input" type="checkbox" name="coil-failure" id="qcartifacts-item-3" />
  339. <label class="form-check-label" for="qcartifacts-item-3">Coil failure</label>
  340. </div>
  341. <div class="form-check form-switch small">
  342. <input class="form-check-input" type="checkbox" name="noise-global" id="qcartifacts-item-4" />
  343. <label class="form-check-label" for="qcartifacts-item-4">Global noise</label>
  344. </div>
  345. <div class="form-check form-switch small">
  346. <input class="form-check-input" type="checkbox" name="noise-local" id="qcartifacts-item-5" />
  347. <label class="form-check-label" for="qcartifacts-item-5">Local noise</label>
  348. </div>
  349. <div class="form-check form-switch small">
  350. <input class="form-check-input" type="checkbox" name="em-perturbation" id="qcartifacts-item-6" />
  351. <label class="form-check-label" for="qcartifacts-item-6"><abbr title="electromagnetic">EM</abbr> interference/perturbation</label>
  352. </div>
  353. <div class="form-check form-switch small">
  354. <input class="form-check-input" type="checkbox" name="wrap-around" id="qcartifacts-item-7" />
  355. <label class="form-check-label" for="qcartifacts-item-7">Problematic <abbr title="field-of-view">FoV</abbr> prescription / wrap-around</label>
  356. </div>
  357. <div class="form-check form-switch small">
  358. <input class="form-check-input" type="checkbox" name="ghost-aliasing" id="qcartifacts-item-8" />
  359. <label class="form-check-label" for="qcartifacts-item-8">Aliasing ghosts</label>
  360. </div>
  361. <div class="form-check form-switch small">
  362. <input class="form-check-input" type="checkbox" name="ghost-other" id="qcartifacts-item-9" />
  363. <label class="form-check-label" for="qcartifacts-item-9">Other ghosts (for example, <abbr title="radiofrequency">RF</abbr> spoiling)</label>
  364. </div>
  365. <div class="form-check form-switch small">
  366. <input class="form-check-input" type="checkbox" name="inu" id="qcartifacts-item-10" />
  367. <label class="form-check-label" for="qcartifacts-item-10">Intensity non-uniformity (B<sub>1</sub> bias)</label>
  368. </div>
  369. <div class="form-check form-switch small">
  370. <input class="form-check-input" type="checkbox" name="field-variation" id="qcartifacts-item-11" />
  371. <label class="form-check-label" for="qcartifacts-item-11">Temporal B<sub>1</sub> field non-uniformity variation</label>
  372. </div>
  373. <div class="form-check form-switch small">
  374. <input class="form-check-input" type="checkbox" name="processing" id="qcartifacts-item-12" />
  375. <label class="form-check-label" for="qcartifacts-item-12">Processing such as denoising, defacing or resamplings happened</label>
  376. </div>
  377. <div class="form-check form-switch small">
  378. <input class="form-check-input" type="checkbox" name="uncategorized" id="qcartifacts-item-13" />
  379. <label class="form-check-label" for="qcartifacts-item-13">Other uncategorized artifact(s)</label>
  380. </div>
  381. </fieldset>
  382. </div> <!-- accordion-body -->
  383. </div> <!-- accordion-collapse -->
  384. </div> <!-- accordion-item -->
  385. <div class="accordion-item">
  386. <h2 class="accordion-header" id="qcextra-head">
  387. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#qcextra-collapse" aria-expanded="false" aria-controls="qcextra-collapse">
  388. Extra details
  389. </button>
  390. </h2>
  391. <div id="qcextra-collapse" class="accordion-collapse collapse" aria-labelledby="qcextra-head">
  392. <div class="accordion-body">
  393. <div class="input-group">
  394. <span class="input-group-text">Comments</span>
  395. <textarea class="form-control" aria-label="Comments" id="qcextra-comments"></textarea>
  396. </div>
  397. <p style="margin-top: 20px; font-weight: bold">Rater confidence</p>
  398. <input type="range" min="0.0" max="4.0" step="0.05" value="3.5" id="qcextra-confidence" class="slider" style="margin-left: 22%;width: 56%;">
  399. <ul class="list-group list-group-horizontal slider-labels" style="width: 100%">
  400. <li class="list-group-item list-group-item-warning small" style="width: 50%; text-align:center">Doubtful</li>
  401. <li class="list-group-item list-group-item-success bg-success text-white small" style="width: 50%; text-align:center">Confident</li>
  402. </ul>
  403. </div> <!-- accordion-body -->
  404. </div> <!-- accordion-collapse -->
  405. </div> <!-- accordion-item -->
  406. </div>
  407. <div style="margin-top: 10px">
  408. <a class="btn btn-primary disabled" id="btn-download" href="">Download</a>
  409. </div>
  410. <script type="text/javascript">
  411. var MINIMUM_RATING_TIME = 10
  412. $('#qcslider').on('input', function() {
  413. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  414. $('#btn-download').removeClass('disabled');
  415. $('#btn-download').removeAttr('aria-disabled');
  416. $('#btn-post').removeAttr('disabled');
  417. };
  418. $('#qcslider-collapse .list-group-item').removeClass(function(index, classname) {
  419. return (classname.match(/(^|\s)bg-\S+/g) || []).join(' ');
  420. });
  421. $('#qcslider-collapse .list-group-item').removeClass(function(index, classname) {
  422. return (classname.match(/(^|\s)text-\S+/g) || []).join(' ');
  423. });
  424. if ( $(this).val() < 1.5 ) {
  425. $('#qcslider-collapse .list-group-item-danger').addClass('bg-danger text-white');
  426. } else if ( $(this).val() > 3.5 ) {
  427. $('#qcslider-collapse .list-group-item-success').addClass('bg-success text-white');
  428. } else if ( $(this).val() < 2.5 ) {
  429. $('#qcslider-collapse .list-group-item-warning').addClass('bg-warning text-dark');
  430. } else {
  431. $('#qcslider-collapse .list-group-item-primary').addClass('bg-primary text-white');
  432. };
  433. var payload = read_form();
  434. });
  435. $('#qcextra-confidence').on('input', function() {
  436. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  437. $('#btn-download').removeClass('disabled');
  438. $('#btn-download').removeAttr('aria-disabled');
  439. $('#btn-post').removeAttr('disabled');
  440. };
  441. $('#qcextra-collapse .list-group-item').removeClass(function(index, classname) {
  442. return (classname.match(/(^|\s)bg-\S+/g) || []).join(' ');
  443. });
  444. $('#qcextra-collapse .list-group-item').removeClass(function(index, classname) {
  445. return (classname.match(/(^|\s)text-\S+/g) || []).join(' ');
  446. });
  447. if ( $(this).val() < 2.0 ) {
  448. $('#qcextra-collapse .list-group-item-warning').addClass('bg-warning text-dark');
  449. } else {
  450. $('#qcextra-collapse .list-group-item-success').addClass('bg-success text-white');
  451. };
  452. var payload = read_form();
  453. });
  454. $('#qcextra-comments').bind('input propertychange', function() {
  455. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  456. $('#btn-download').removeClass('disabled');
  457. $('#btn-download').removeAttr('aria-disabled');
  458. $('#btn-post').removeAttr('disabled');
  459. };
  460. });
  461. $( '#btn-post' ).click( function() {
  462. var payload = read_form();
  463. var md5sum = "unspecified";
  464. var params = {
  465. 'rating': payload['rating'],
  466. 'md5sum': md5sum,
  467. 'name': "",
  468. 'comment': JSON.stringify(payload['artifacts'])
  469. };
  470. // disable development releases
  471. var authorization = $(this).val();
  472. var ratingReq = new XMLHttpRequest();
  473. ratingReq.open("POST", "https://localhost:8000/");
  474. ratingReq.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
  475. ratingReq.setRequestHeader("Authorization", authorization);
  476. ratingReq.onload = function () {
  477. status = ratingReq.status;
  478. $('#btn-post').removeClass('btn-primary');
  479. $('#btn-post').attr('disabled', true);
  480. $('#btn-post').attr('aria-disabled', true);
  481. $('#btn-post').prop('disabled');
  482. $('#btn-post').addClass('disabled');
  483. $('#btn-post').removeClass('active');
  484. if (status === "201") {
  485. $('#btn-post').addClass('btn-success');
  486. $('#btn-post').html('Posted!');
  487. } else {
  488. $('#btn-post').addClass('btn-danger');
  489. $('#btn-post').html('Failed');
  490. };
  491. };
  492. ratingReq.send(JSON.stringify(params));
  493. });
  494. $( 'body' ).on( 'click', '#qcartifacts-group input', function(e) {
  495. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  496. $('#btn-download').removeClass('disabled');
  497. $('#btn-download').removeAttr('aria-disabled');
  498. $('#btn-post').removeAttr('disabled');
  499. };
  500. var payload = read_form();
  501. });
  502. $( 'body' ).on( 'click', '#qcrating-toggler', function(e) {
  503. toggle_rating();
  504. });
  505. </script>
  506. </div>
  507. <script type="text/javascript">
  508. function toggle(id) {
  509. var element = document.getElementById(id);
  510. if(element.style.display == 'block')
  511. element.style.display = 'none';
  512. else
  513. element.style.display = 'block';
  514. }
  515. </script>
  516. </body>
  517. </html>