sub-001_ses-011_acq-undistorted_T1w.html 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591
  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-001_ses-011_acq-undistorted_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 = "<unset>";
  15. var sub = "sub-001_ses-011_acq-undistorted_T1w.nii.gz";
  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="acquisition-undistorted_datatype-figures_desc-background_session-011_subject-001_suffix-T1w" class="ps-4 pe-4 mb-2">
  122. <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">
  123. <img class="svg-reportlet" src="./sub-001/figures/sub-001_ses-011_acq-undistorted_desc-background_T1w.svg" style="width: 100%" />
  124. </div>
  125. <small>Get figure file: <a href="./sub-001/figures/sub-001_ses-011_acq-undistorted_desc-background_T1w.svg" target="_blank">sub-001/figures/sub-001_ses-011_acq-undistorted_desc-background_T1w.svg</a></small>
  126. </div>
  127. <div id="acquisition-undistorted_datatype-figures_desc-zoomed_session-011_subject-001_suffix-T1w" class="ps-4 pe-4 mb-2">
  128. <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">
  129. <img class="svg-reportlet" src="./sub-001/figures/sub-001_ses-011_acq-undistorted_desc-zoomed_T1w.svg" style="width: 100%" />
  130. </div>
  131. <small>Get figure file: <a href="./sub-001/figures/sub-001_ses-011_acq-undistorted_desc-zoomed_T1w.svg" target="_blank">sub-001/figures/sub-001_ses-011_acq-undistorted_desc-zoomed_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-001/ses-011/anat/sub-001_ses-011_acq-undistorted_T1w.nii.gz</td></tr>
  154. <tr><td>Versions</td><td>MRIQC</td><td>24.1.0.dev0+g3fe90466.d20240417</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>24.2.0</td></tr>
  157. <tr><td colspan=2>md5sum</td><td>2f8f8a344d63d0f18108abb2e54412c3</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 colspan=2>AcquisitionMatrixPE</td><td>252</td></tr>
  174. <tr><td colspan=2>AcquisitionNumber</td><td>1</td></tr>
  175. <tr><td colspan=2>AcquisitionTime</td><td>20:23:38.885000</td></tr>
  176. <tr><td colspan=2>BaseResolution</td><td>288</td></tr>
  177. <tr><td colspan=2>BodyPartExamined</td><td>BRAIN</td></tr>
  178. <tr><td colspan=2>CoilCombinationMethod</td><td>Adaptive Combine</td></tr>
  179. <tr><td colspan=2>CoilString</td><td>HeadNeck_64</td></tr>
  180. <tr><td colspan=2>ConversionSoftware</td><td>dcm2niix</td></tr>
  181. <tr><td colspan=2>ConversionSoftwareVersion</td><td>v1.0.20220720</td></tr>
  182. <tr><td colspan=2>DeviceSerialNumber</td><td>67014</td></tr>
  183. <tr><td colspan=2>DwellTime</td><td>6.7e-06</td></tr>
  184. <tr><td colspan=2>EchoTime</td><td>0.00255</td></tr>
  185. <tr><td colspan=2>FlipAngle</td><td>8</td></tr>
  186. <tr><td colspan=2>HeudiconvVersion</td><td>1.0.0</td></tr>
  187. <tr><td colspan=2>ImageOrientationPatientDICOM</td><td>[1, -1.1103e-11, 4e-06, -4.897e-12, 1, 4e-06]</td></tr>
  188. <tr><td colspan=2>ImageType</td><td>['ORIGINAL', 'PRIMARY', 'M', 'NORM', 'DIS2D', 'FM3', '2', 'FIL', 'MFSPLIT']</td></tr>
  189. <tr><td colspan=2>ImageTypeText</td><td>['ORIGINAL', 'PRIMARY', 'M', 'NONE']</td></tr>
  190. <tr><td colspan=2>ImagingFrequency</td><td>123.248</td></tr>
  191. <tr><td colspan=2>InPlanePhaseEncodingDirectionDICOM</td><td>ROW</td></tr>
  192. <tr><td colspan=2>InstitutionAddress</td><td>Rue du Bugnon 21,Lausanne,District,CH,1011</td></tr>
  193. <tr><td colspan=2>InstitutionName</td><td>CHUV</td></tr>
  194. <tr><td colspan=2>InversionTime</td><td>0.9</td></tr>
  195. <tr><td colspan=2>MRAcquisitionType</td><td>3D</td></tr>
  196. <tr><td colspan=2>MagneticFieldStrength</td><td>3</td></tr>
  197. <tr><td colspan=2>Manufacturer</td><td>Siemens</td></tr>
  198. <tr><td colspan=2>ManufacturersModelName</td><td>MAGNETOM Prisma Fit</td></tr>
  199. <tr><td colspan=2>MatrixCoilMode</td><td>GRAPPA</td></tr>
  200. <tr><td colspan=2>Modality</td><td>MR</td></tr>
  201. <tr><td colspan=2>NonlinearGradientCorrection</td><td>True</td></tr>
  202. <tr><td colspan=2>ParallelReductionFactorInPlane</td><td>2</td></tr>
  203. <tr><td colspan=2>PartialFourier</td><td>1</td></tr>
  204. <tr><td colspan=2>PatientPosition</td><td>HFS</td></tr>
  205. <tr><td colspan=2>PercentPhaseFOV</td><td>87.5</td></tr>
  206. <tr><td colspan=2>PercentSampling</td><td>100</td></tr>
  207. <tr><td colspan=2>PhaseEncodingSteps</td><td>252</td></tr>
  208. <tr><td colspan=2>PhaseResolution</td><td>1</td></tr>
  209. <tr><td colspan=2>PixelBandwidth</td><td>259</td></tr>
  210. <tr><td colspan=2>ProcedureStepDescription</td><td>RESEARCH Oscar</td></tr>
  211. <tr><td colspan=2>ProtocolName</td><td>anat-T1w__t1_mprage_tra_p2_iso_siemens_axial</td></tr>
  212. <tr><td colspan=2>PulseSequenceDetails</td><td>%SiemensSeq%\tfl</td></tr>
  213. <tr><td colspan=2>ReceiveCoilActiveElements</td><td>HC1-6</td></tr>
  214. <tr><td colspan=2>ReceiveCoilName</td><td>HeadNeck_64</td></tr>
  215. <tr><td colspan=2>ReconMatrixPE</td><td>252</td></tr>
  216. <tr><td colspan=2>RefLinesPE</td><td>24</td></tr>
  217. <tr><td colspan=2>RepetitionTime</td><td>2.2</td></tr>
  218. <tr><td colspan=2>SAR</td><td>0.0393097</td></tr>
  219. <tr><td colspan=2>ScanOptions</td><td>PER</td></tr>
  220. <tr><td colspan=2>ScanningSequence</td><td>GR</td></tr>
  221. <tr><td colspan=2>SequenceName</td><td>*tfl3d1_16</td></tr>
  222. <tr><td colspan=2>SequenceVariant</td><td>SK</td></tr>
  223. <tr><td colspan=2>SeriesDescription</td><td>anat-T1w__t1_mprage_tra_p2_iso_siemens_axial</td></tr>
  224. <tr><td colspan=2>SeriesNumber</td><td>5</td></tr>
  225. <tr><td colspan=2>ShimSetting</td><td>[8227, -5660, -6265, 329, -51, -148, 54, 19]</td></tr>
  226. <tr><td colspan=2>SliceThickness</td><td>0.8</td></tr>
  227. <tr><td colspan=2>SoftwareVersions</td><td>syngo MR XA30</td></tr>
  228. <tr><td colspan=2>StationName</td><td>LRG10884</td></tr>
  229. <tr><td colspan=2>TxRefAmp</td><td>242.543</td></tr>
  230. <tr><td>dcmmeta</td><td>affine</td><td>[[0.7986109852790833, -3.9107979007968474e-12, 0.0, -99.82636260986328], [-8.86697833213379e-12, 0.7986109852790833, 0.0, -86.8443603515625], [-3.194443934262381e-06, -3.194443934262381e-06, 0.800000011920929, -61.352882385253906], [0.0, 0.0, 0.0, 1.0]]</td></tr>
  231. <tr><td>dcmmeta</td><td>reorient_transform</td><td>[[0.0, -1.0, 0.0, 287.0], [-1.0, 0.0, 0.0, 251.0], [0.0, 0.0, -1.0, 191.0], [0.0, 0.0, 0.0, 1.0]]</td></tr>
  232. <tr><td>dcmmeta</td><td>shape</td><td>[252, 288, 192]</td></tr>
  233. <tr><td>dcmmeta</td><td>slice_dim</td><td>2</td></tr>
  234. <tr><td>dcmmeta</td><td>version</td><td>0.6</td></tr>
  235. </table>
  236. </div>
  237. </div>
  238. </div>
  239. <div class="accordion-item">
  240. <h2 class="accordion-header" id="about-metadata-2">
  241. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#about-metadata-2-collapse" aria-controls="about-metadata-2-collapse">
  242. Extracted Image quality metrics (IQMs)
  243. </button>
  244. </h2>
  245. <div id="about-metadata-2-collapse" class="accordion-collapse collapse" aria-labelledby="about-metadata-2-heading" data-bs-parent="#about-metadata-2">
  246. <div class="accordion-body metadata-table">
  247. <table id="about-metadata-table-2" class="table table-sm table-striped">
  248. <tr><td colspan=3>cjv</td><td>0.5980305660377357</td></tr>
  249. <tr><td colspan=3>cnr</td><td>1.5996479215849602</td></tr>
  250. <tr><td colspan=3>efc</td><td>0.5375</td></tr>
  251. <tr><td colspan=3>fber</td><td>10002.299</td></tr>
  252. <tr><td>fwhm</td><td colspan=2>avg</td><td>4.7420776158724065</td></tr>
  253. <tr><td>fwhm</td><td colspan=2>x</td><td>4.357540860502793</td></tr>
  254. <tr><td>fwhm</td><td colspan=2>y</td><td>5.315742054958667</td></tr>
  255. <tr><td>fwhm</td><td colspan=2>z</td><td>4.55294993215576</td></tr>
  256. <tr><td>icvs</td><td colspan=2>csf</td><td>0.27669970752961925</td></tr>
  257. <tr><td>icvs</td><td colspan=2>gm</td><td>0.3765631214322021</td></tr>
  258. <tr><td>icvs</td><td colspan=2>wm</td><td>0.3467371710381787</td></tr>
  259. <tr><td>inu</td><td colspan=2>med</td><td>0.613227367401123</td></tr>
  260. <tr><td>inu</td><td colspan=2>range</td><td>0.3130835086107254</td></tr>
  261. <tr><td>qi</td><td colspan=2>1</td><td>0.0</td></tr>
  262. <tr><td>qi</td><td colspan=2>2</td><td>0.001755462693359548</td></tr>
  263. <tr><td>rpve</td><td colspan=2>csf</td><td>4.657168876876712</td></tr>
  264. <tr><td>rpve</td><td colspan=2>gm</td><td>4.561381718361348</td></tr>
  265. <tr><td>rpve</td><td colspan=2>wm</td><td>4.643323562926082</td></tr>
  266. <tr><td>size</td><td colspan=2>x</td><td>252</td></tr>
  267. <tr><td>size</td><td colspan=2>y</td><td>288</td></tr>
  268. <tr><td>size</td><td colspan=2>z</td><td>192</td></tr>
  269. <tr><td>snr</td><td colspan=2>csf</td><td>1.6442768259395726</td></tr>
  270. <tr><td>snr</td><td colspan=2>gm</td><td>5.18122384574713</td></tr>
  271. <tr><td>snr</td><td colspan=2>total</td><td>5.62631629333588</td></tr>
  272. <tr><td>snr</td><td colspan=2>wm</td><td>10.05344820832094</td></tr>
  273. <tr><td>snrd</td><td colspan=2>csf</td><td>27.1307214609559</td></tr>
  274. <tr><td>snrd</td><td colspan=2>gm</td><td>57.08237420531394</td></tr>
  275. <tr><td>snrd</td><td colspan=2>total</td><td>54.42738005622957</td></tr>
  276. <tr><td>snrd</td><td colspan=2>wm</td><td>79.06904450241888</td></tr>
  277. <tr><td>spacing</td><td colspan=2>x</td><td>0.7986109852790833</td></tr>
  278. <tr><td>spacing</td><td colspan=2>y</td><td>0.7986109852790833</td></tr>
  279. <tr><td>spacing</td><td colspan=2>z</td><td>0.800000011920929</td></tr>
  280. <tr><td>summary</td><td>bg</td><td>k</td><td>381.3208</td></tr>
  281. <tr><td>summary</td><td>bg</td><td>mad</td><td>7.8962</td></tr>
  282. <tr><td>summary</td><td>bg</td><td>mean</td><td>7.6255</td></tr>
  283. <tr><td>summary</td><td>bg</td><td>median</td><td>6.0</td></tr>
  284. <tr><td>summary</td><td>bg</td><td>n</td><td>4734931.0</td></tr>
  285. <tr><td>summary</td><td>bg</td><td>p05</td><td>0.0</td></tr>
  286. <tr><td>summary</td><td>bg</td><td>p95</td><td>17.0</td></tr>
  287. <tr><td>summary</td><td>bg</td><td>stdv</td><td>28.7321</td></tr>
  288. <tr><td>summary</td><td>csf</td><td>k</td><td>-0.893</td></tr>
  289. <tr><td>summary</td><td>csf</td><td>mad</td><td>163.7465</td></tr>
  290. <tr><td>summary</td><td>csf</td><td>mean</td><td>343.0836</td></tr>
  291. <tr><td>summary</td><td>csf</td><td>median</td><td>327.0</td></tr>
  292. <tr><td>summary</td><td>csf</td><td>n</td><td>812583.4783883397</td></tr>
  293. <tr><td>summary</td><td>csf</td><td>p05</td><td>37.0</td></tr>
  294. <tr><td>summary</td><td>csf</td><td>p95</td><td>692.0</td></tr>
  295. <tr><td>summary</td><td>csf</td><td>stdv</td><td>198.8715</td></tr>
  296. <tr><td>summary</td><td>gm</td><td>k</td><td>-0.4679</td></tr>
  297. <tr><td>summary</td><td>gm</td><td>mad</td><td>87.6067</td></tr>
  298. <tr><td>summary</td><td>gm</td><td>mean</td><td>688.6783</td></tr>
  299. <tr><td>summary</td><td>gm</td><td>median</td><td>688.0</td></tr>
  300. <tr><td>summary</td><td>gm</td><td>n</td><td>1105852.1665166381</td></tr>
  301. <tr><td>summary</td><td>gm</td><td>p05</td><td>466.0</td></tr>
  302. <tr><td>summary</td><td>gm</td><td>p95</td><td>936.0</td></tr>
  303. <tr><td>summary</td><td>gm</td><td>stdv</td><td>132.7871</td></tr>
  304. <tr><td>summary</td><td>wm</td><td>k</td><td>-0.1668</td></tr>
  305. <tr><td>summary</td><td>wm</td><td>mad</td><td>70.8714</td></tr>
  306. <tr><td>summary</td><td>wm</td><td>mean</td><td>931.4807</td></tr>
  307. <tr><td>summary</td><td>wm</td><td>median</td><td>953.0</td></tr>
  308. <tr><td>summary</td><td>wm</td><td>n</td><td>1018262.3575725167</td></tr>
  309. <tr><td>summary</td><td>wm</td><td>p05</td><td>743.0</td></tr>
  310. <tr><td>summary</td><td>wm</td><td>p95</td><td>1053.0</td></tr>
  311. <tr><td>summary</td><td>wm</td><td>stdv</td><td>94.7933</td></tr>
  312. <tr><td>tpm</td><td>overlap</td><td>csf</td><td>0.1876664544403461</td></tr>
  313. <tr><td>tpm</td><td>overlap</td><td>gm</td><td>0.5328099400406441</td></tr>
  314. <tr><td>tpm</td><td>overlap</td><td>wm</td><td>0.5489363061026042</td></tr>
  315. <tr><td colspan=3>wm2max</td><td>0.47276509986103255</td></tr>
  316. </table>
  317. </div>
  318. </div>
  319. </div>
  320. </div>
  321. </div>
  322. </div>
  323. <div id="qcrating-menu" class="card position-fixed d-none" style="width: 30%; top: 100px; left: 65%;">
  324. <div class="card-header m-0">
  325. Rating widget
  326. <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>
  327. </div>
  328. <div class="card-body">
  329. <div class="accordion">
  330. <div class="accordion-item">
  331. <h2 class="accordion-header" id="qcslider-head">
  332. <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>
  333. </h2>
  334. <div id="qcslider-collapse" class="accordion-collapse collapse show" aria-labelledby="qcslider-head">
  335. <div class="accordion-body">
  336. <input type="range" min="1.0" max="4.0" step="0.05" value="2.5" id="qcslider" class="slider">
  337. <ul class="list-group list-group-horizontal slider-labels" style="width: 100%">
  338. <li class="list-group-item list-group-item-danger small" style="font-size: 0.7em; width: 25%; text-align:center">Exclude</li>
  339. <li class="list-group-item list-group-item-warning small" style="font-size: 0.7em; width: 25%; text-align:center">Poor</li>
  340. <li class="list-group-item list-group-item-primary small" style="font-size: 0.7em; width: 25%; text-align:center">Acceptable</li>
  341. <li class="list-group-item list-group-item-success small" style="font-size: 0.7em; width: 25%; text-align:center">Excellent</li>
  342. </ul>
  343. </div>
  344. </div>
  345. </div>
  346. <div class="accordion-item">
  347. <h2 class="accordion-header" id="qcartifacts-head">
  348. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#qcartifacts-collapse" aria-expanded="false" aria-controls="qcartifacts-collapse">
  349. Record specific artifacts
  350. </button>
  351. </h2>
  352. <div id="qcartifacts-collapse" class="accordion-collapse collapse" aria-labelledby="qcartifacts-head">
  353. <div class="accordion-body">
  354. <fieldset id="qcartifacts-group" class="form-group">
  355. <div class="form-check form-switch small">
  356. <input class="form-check-input" type="checkbox" name="head-motion" id="qcartifacts-item-0" />
  357. <label class="form-check-label" for="qcartifacts-item-0">Head motion artifacts</label>
  358. </div>
  359. <div class="form-check form-switch small">
  360. <input class="form-check-input" type="checkbox" name="eye-spillover" id="qcartifacts-item-1" />
  361. <label class="form-check-label" for="qcartifacts-item-1">Eye spillover through <abbr title="phase-encoding">PE</abbr> axis</label>
  362. </div>
  363. <div class="form-check form-switch small">
  364. <input class="form-check-input" type="checkbox" name="noneye-spillover" id="qcartifacts-item-2" />
  365. <label class="form-check-label" for="qcartifacts-item-2">Non-eye spillover through <abbr title="phase-encoding">PE</abbr> axis</label>
  366. </div>
  367. <div class="form-check form-switch small">
  368. <input class="form-check-input" type="checkbox" name="coil-failure" id="qcartifacts-item-3" />
  369. <label class="form-check-label" for="qcartifacts-item-3">Coil failure</label>
  370. </div>
  371. <div class="form-check form-switch small">
  372. <input class="form-check-input" type="checkbox" name="noise-global" id="qcartifacts-item-4" />
  373. <label class="form-check-label" for="qcartifacts-item-4">Global noise</label>
  374. </div>
  375. <div class="form-check form-switch small">
  376. <input class="form-check-input" type="checkbox" name="noise-local" id="qcartifacts-item-5" />
  377. <label class="form-check-label" for="qcartifacts-item-5">Local noise</label>
  378. </div>
  379. <div class="form-check form-switch small">
  380. <input class="form-check-input" type="checkbox" name="em-perturbation" id="qcartifacts-item-6" />
  381. <label class="form-check-label" for="qcartifacts-item-6"><abbr title="electromagnetic">EM</abbr> interference/perturbation</label>
  382. </div>
  383. <div class="form-check form-switch small">
  384. <input class="form-check-input" type="checkbox" name="wrap-around" id="qcartifacts-item-7" />
  385. <label class="form-check-label" for="qcartifacts-item-7">Problematic <abbr title="field-of-view">FoV</abbr> prescription / wrap-around</label>
  386. </div>
  387. <div class="form-check form-switch small">
  388. <input class="form-check-input" type="checkbox" name="ghost-aliasing" id="qcartifacts-item-8" />
  389. <label class="form-check-label" for="qcartifacts-item-8">Aliasing ghosts</label>
  390. </div>
  391. <div class="form-check form-switch small">
  392. <input class="form-check-input" type="checkbox" name="ghost-other" id="qcartifacts-item-9" />
  393. <label class="form-check-label" for="qcartifacts-item-9">Other ghosts (for example, <abbr title="radiofrequency">RF</abbr> spoiling)</label>
  394. </div>
  395. <div class="form-check form-switch small">
  396. <input class="form-check-input" type="checkbox" name="inu" id="qcartifacts-item-10" />
  397. <label class="form-check-label" for="qcartifacts-item-10">Intensity non-uniformity (B<sub>1</sub> bias)</label>
  398. </div>
  399. <div class="form-check form-switch small">
  400. <input class="form-check-input" type="checkbox" name="field-variation" id="qcartifacts-item-11" />
  401. <label class="form-check-label" for="qcartifacts-item-11">Temporal B<sub>1</sub> field non-uniformity variation</label>
  402. </div>
  403. <div class="form-check form-switch small">
  404. <input class="form-check-input" type="checkbox" name="processing" id="qcartifacts-item-12" />
  405. <label class="form-check-label" for="qcartifacts-item-12">Processing such as denoising, defacing or resamplings happened</label>
  406. </div>
  407. <div class="form-check form-switch small">
  408. <input class="form-check-input" type="checkbox" name="uncategorized" id="qcartifacts-item-13" />
  409. <label class="form-check-label" for="qcartifacts-item-13">Other uncategorized artifact(s)</label>
  410. </div>
  411. </fieldset>
  412. </div> <!-- accordion-body -->
  413. </div> <!-- accordion-collapse -->
  414. </div> <!-- accordion-item -->
  415. <div class="accordion-item">
  416. <h2 class="accordion-header" id="qcextra-head">
  417. <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#qcextra-collapse" aria-expanded="false" aria-controls="qcextra-collapse">
  418. Extra details
  419. </button>
  420. </h2>
  421. <div id="qcextra-collapse" class="accordion-collapse collapse" aria-labelledby="qcextra-head">
  422. <div class="accordion-body">
  423. <div class="input-group">
  424. <span class="input-group-text">Comments</span>
  425. <textarea class="form-control" aria-label="Comments" id="qcextra-comments"></textarea>
  426. </div>
  427. <p style="margin-top: 20px; font-weight: bold">Rater confidence</p>
  428. <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%;">
  429. <ul class="list-group list-group-horizontal slider-labels" style="width: 100%">
  430. <li class="list-group-item list-group-item-warning small" style="width: 50%; text-align:center">Doubtful</li>
  431. <li class="list-group-item list-group-item-success bg-success text-white small" style="width: 50%; text-align:center">Confident</li>
  432. </ul>
  433. </div> <!-- accordion-body -->
  434. </div> <!-- accordion-collapse -->
  435. </div> <!-- accordion-item -->
  436. </div>
  437. <div style="margin-top: 10px">
  438. <a class="btn btn-primary disabled" id="btn-download" href="">Download</a>
  439. </div>
  440. <script type="text/javascript">
  441. var MINIMUM_RATING_TIME = 10
  442. $('#qcslider').on('input', function() {
  443. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  444. $('#btn-download').removeClass('disabled');
  445. $('#btn-download').removeAttr('aria-disabled');
  446. $('#btn-post').removeAttr('disabled');
  447. };
  448. $('#qcslider-collapse .list-group-item').removeClass(function(index, classname) {
  449. return (classname.match(/(^|\s)bg-\S+/g) || []).join(' ');
  450. });
  451. $('#qcslider-collapse .list-group-item').removeClass(function(index, classname) {
  452. return (classname.match(/(^|\s)text-\S+/g) || []).join(' ');
  453. });
  454. if ( $(this).val() < 1.5 ) {
  455. $('#qcslider-collapse .list-group-item-danger').addClass('bg-danger text-white');
  456. } else if ( $(this).val() > 3.5 ) {
  457. $('#qcslider-collapse .list-group-item-success').addClass('bg-success text-white');
  458. } else if ( $(this).val() < 2.5 ) {
  459. $('#qcslider-collapse .list-group-item-warning').addClass('bg-warning text-dark');
  460. } else {
  461. $('#qcslider-collapse .list-group-item-primary').addClass('bg-primary text-white');
  462. };
  463. var payload = read_form();
  464. });
  465. $('#qcextra-confidence').on('input', function() {
  466. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  467. $('#btn-download').removeClass('disabled');
  468. $('#btn-download').removeAttr('aria-disabled');
  469. $('#btn-post').removeAttr('disabled');
  470. };
  471. $('#qcextra-collapse .list-group-item').removeClass(function(index, classname) {
  472. return (classname.match(/(^|\s)bg-\S+/g) || []).join(' ');
  473. });
  474. $('#qcextra-collapse .list-group-item').removeClass(function(index, classname) {
  475. return (classname.match(/(^|\s)text-\S+/g) || []).join(' ');
  476. });
  477. if ( $(this).val() < 2.0 ) {
  478. $('#qcextra-collapse .list-group-item-warning').addClass('bg-warning text-dark');
  479. } else {
  480. $('#qcextra-collapse .list-group-item-success').addClass('bg-success text-white');
  481. };
  482. var payload = read_form();
  483. });
  484. $('#qcextra-comments').bind('input propertychange', function() {
  485. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  486. $('#btn-download').removeClass('disabled');
  487. $('#btn-download').removeAttr('aria-disabled');
  488. $('#btn-post').removeAttr('disabled');
  489. };
  490. });
  491. $( '#btn-post' ).click( function() {
  492. var payload = read_form();
  493. var md5sum = "unspecified";
  494. var params = {
  495. 'rating': payload['rating'],
  496. 'md5sum': md5sum,
  497. 'name': "",
  498. 'comment': JSON.stringify(payload['artifacts'])
  499. };
  500. // disable development releases
  501. var authorization = $(this).val();
  502. var ratingReq = new XMLHttpRequest();
  503. ratingReq.open("POST", "https://mriqc.nimh.nih.gov:443/api/v1/rating");
  504. ratingReq.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
  505. ratingReq.setRequestHeader("Authorization", authorization);
  506. ratingReq.onload = function () {
  507. status = ratingReq.status;
  508. $('#btn-post').removeClass('btn-primary');
  509. $('#btn-post').attr('disabled', true);
  510. $('#btn-post').attr('aria-disabled', true);
  511. $('#btn-post').prop('disabled');
  512. $('#btn-post').addClass('disabled');
  513. $('#btn-post').removeClass('active');
  514. if (status === "201") {
  515. $('#btn-post').addClass('btn-success');
  516. $('#btn-post').html('Posted!');
  517. } else {
  518. $('#btn-post').addClass('btn-danger');
  519. $('#btn-post').html('Failed');
  520. };
  521. };
  522. ratingReq.send(JSON.stringify(params));
  523. });
  524. $( 'body' ).on( 'click', '#qcartifacts-group input', function(e) {
  525. if ( (Date.now() - timestamp) / 1000 > MINIMUM_RATING_TIME) {
  526. $('#btn-download').removeClass('disabled');
  527. $('#btn-download').removeAttr('aria-disabled');
  528. $('#btn-post').removeAttr('disabled');
  529. };
  530. var payload = read_form();
  531. });
  532. $( 'body' ).on( 'click', '#qcrating-toggler', function(e) {
  533. toggle_rating();
  534. });
  535. </script>
  536. </div>
  537. <script type="text/javascript">
  538. function toggle(id) {
  539. var element = document.getElementById(id);
  540. if(element.style.display == 'block')
  541. element.style.display = 'none';
  542. else
  543. element.style.display = 'block';
  544. }
  545. </script>
  546. </body>
  547. </html>