rapidtide 3.1__py3-none-any.whl → 3.1.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- rapidtide/OrthoImageItem.py +4 -4
- rapidtide/_version.py +3 -3
- rapidtide/calccoherence.py +4 -4
- rapidtide/calcnullsimfunc.py +2 -5
- rapidtide/calcsimfunc.py +1 -4
- rapidtide/correlate.py +130 -127
- rapidtide/data/examples/src/testfmri +41 -9
- rapidtide/data/examples/src/testhappy +8 -8
- rapidtide/dlfilter.py +21 -22
- rapidtide/dlfiltertorch.py +18 -19
- rapidtide/filter.py +4 -4
- rapidtide/fit.py +18 -18
- rapidtide/happy_supportfuncs.py +84 -82
- rapidtide/helper_classes.py +2 -2
- rapidtide/io.py +88 -83
- rapidtide/linfitfiltpass.py +30 -49
- rapidtide/makelaggedtcs.py +11 -16
- rapidtide/maskutil.py +30 -14
- rapidtide/miscmath.py +2 -2
- rapidtide/patchmatch.py +10 -11
- rapidtide/peakeval.py +1 -3
- rapidtide/ppgproc.py +3 -3
- rapidtide/qualitycheck.py +2 -2
- rapidtide/refinedelay.py +12 -3
- rapidtide/refineregressor.py +20 -29
- rapidtide/scripts/showxcorr_legacy.py +7 -7
- rapidtide/scripts/stupidramtricks.py +15 -17
- rapidtide/simFuncClasses.py +2 -2
- rapidtide/simfuncfit.py +27 -41
- rapidtide/tests/test_cleanregressor.py +1 -2
- rapidtide/tests/test_fullrunhappy_v3.py +11 -5
- rapidtide/tests/test_fullrunhappy_v4.py +9 -1
- rapidtide/tests/test_getparsers.py +11 -3
- rapidtide/tests/test_refinedelay.py +0 -1
- rapidtide/tests/test_simroundtrip.py +8 -0
- rapidtide/tests/test_stcorrelate.py +3 -1
- rapidtide/util.py +6 -6
- rapidtide/voxelData.py +1 -1
- rapidtide/wiener.py +122 -16
- rapidtide/wiener2.py +3 -3
- rapidtide/workflows/applyppgproc.py +33 -15
- rapidtide/workflows/calcSimFuncMap.py +11 -22
- rapidtide/workflows/ccorrica.py +4 -2
- rapidtide/workflows/cleanregressor.py +6 -11
- rapidtide/workflows/delayvar.py +8 -13
- rapidtide/workflows/fitSimFuncMap.py +2 -9
- rapidtide/workflows/happy.py +6 -6
- rapidtide/workflows/happy_parser.py +36 -25
- rapidtide/workflows/pairproc.py +10 -2
- rapidtide/workflows/pixelcomp.py +1 -2
- rapidtide/workflows/rankimage.py +1 -1
- rapidtide/workflows/rapidtide.py +98 -63
- rapidtide/workflows/refineDelayMap.py +7 -6
- rapidtide/workflows/refineRegressor.py +6 -16
- rapidtide/workflows/regressfrommaps.py +9 -6
- rapidtide/workflows/retrolagtcs.py +5 -7
- rapidtide/workflows/retroregress.py +11 -17
- rapidtide/workflows/roisummarize.py +11 -10
- rapidtide/workflows/showarbcorr.py +2 -2
- rapidtide/workflows/showxcorrx.py +6 -6
- rapidtide/workflows/simdata.py +31 -31
- rapidtide/workflows/spatialmi.py +0 -1
- rapidtide/workflows/tidepool.py +6 -4
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/METADATA +8 -7
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/RECORD +69 -70
- rapidtide/wiener_doc.py +0 -255
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/WHEEL +0 -0
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/entry_points.txt +0 -0
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/licenses/LICENSE +0 -0
- {rapidtide-3.1.dist-info → rapidtide-3.1.1.dist-info}/top_level.txt +0 -0
|
@@ -7,39 +7,39 @@ cloud/rapidtide-HCPYA,sha256=kqW8ENbOQhvVqZGz-HqiVbrbzHy4cfyy1rk8ejpJor0,963
|
|
|
7
7
|
cloud/rapidtide-cloud-test,sha256=SATOwGo4QYLvt-6hE0e3wyK9JjuDU5XzfLrfMoybvcY,466
|
|
8
8
|
cloud/simple-cp-test,sha256=5ef8wmLfcKdny59BV6_DnAPj7O_mi0rOHdFZVN2iiLA,421
|
|
9
9
|
rapidtide/Colortables.py,sha256=wKglfM9bOoHDlD_neHoATk29TP0auQBM7dw_qxsDyr4,22131
|
|
10
|
-
rapidtide/OrthoImageItem.py,sha256=
|
|
10
|
+
rapidtide/OrthoImageItem.py,sha256=r4dYk5--AFHvRgmdx5HDa7uqlvsJlfcORFk9Fo2jcS8,58063
|
|
11
11
|
rapidtide/RapidtideDataset.py,sha256=SUt9k1EJaiHDJcAvw9-vbQ9sIfgBMuHb8I0tk7EoUv4,107153
|
|
12
12
|
rapidtide/__init__.py,sha256=cECnPfGNIWXETiummGLjKcNXLROSDiFlLp-RpZSavwc,97
|
|
13
|
-
rapidtide/_version.py,sha256=
|
|
14
|
-
rapidtide/calccoherence.py,sha256=
|
|
15
|
-
rapidtide/calcnullsimfunc.py,sha256=
|
|
16
|
-
rapidtide/calcsimfunc.py,sha256=
|
|
17
|
-
rapidtide/correlate.py,sha256=
|
|
13
|
+
rapidtide/_version.py,sha256=iCXaQ4XVA3ovtGOSUbEaLjq5J2X2frLAqvLJfv5rusA,497
|
|
14
|
+
rapidtide/calccoherence.py,sha256=gwib99_1kSD-ebgFF-huAxXfSD9yjzNaE82GjIKOYi8,9922
|
|
15
|
+
rapidtide/calcnullsimfunc.py,sha256=bfEMRUVdnwfe-Zr6a2xF_gikOimLtqSky2K5Zm_lsbA,10625
|
|
16
|
+
rapidtide/calcsimfunc.py,sha256=Ydx7_k6YeEzrJMSpUDy1jFey1w4u_FoH2h_ehYPtwx8,13090
|
|
17
|
+
rapidtide/correlate.py,sha256=jVtV6Wc_VErPR-vvQoCll2ZHahOl77bXyo89RiYgGak,71213
|
|
18
18
|
rapidtide/decorators.py,sha256=k-83nDT1sv6q6tP-xDqfqQdMh1d7V4mRJNBz7uZ3rkk,2628
|
|
19
|
-
rapidtide/dlfilter.py,sha256=
|
|
20
|
-
rapidtide/dlfiltertorch.py,sha256=
|
|
19
|
+
rapidtide/dlfilter.py,sha256=khsFvRGcjfmUW-HuVUJzLvZP9avtpLydQ1zGDsIst24,140992
|
|
20
|
+
rapidtide/dlfiltertorch.py,sha256=gHH4uJz-k9eJdMM2GAAg3iG4FZu7-deXZ7-l5qr8AjM,176121
|
|
21
21
|
rapidtide/externaltools.py,sha256=WdAZcFyqHnCYxauLuHFJlBwCkc14E438Wf9PRqp9vQI,14775
|
|
22
22
|
rapidtide/fMRIData_class.py,sha256=iySuZZ8EceFgxE8fNIx_mZd_QlnlsxiBti_aZjlbi2g,6364
|
|
23
|
-
rapidtide/filter.py,sha256=
|
|
24
|
-
rapidtide/fit.py,sha256=
|
|
23
|
+
rapidtide/filter.py,sha256=OFmMXG8SPY5UzzKM-yQoI0gy8cleXCLzLqu-2qMveJk,114529
|
|
24
|
+
rapidtide/fit.py,sha256=0SvcxGEhWwHtJ5w6RBHtUW2vaQYA9zRcU2wQsdgdt5I,151307
|
|
25
25
|
rapidtide/genericmultiproc.py,sha256=MxwYMhBHbrzZke5NUKTcpkM38DG63yvdkSv2ckvA8HA,6490
|
|
26
|
-
rapidtide/happy_supportfuncs.py,sha256=
|
|
27
|
-
rapidtide/helper_classes.py,sha256=
|
|
28
|
-
rapidtide/io.py,sha256=
|
|
29
|
-
rapidtide/linfitfiltpass.py,sha256=
|
|
30
|
-
rapidtide/makelaggedtcs.py,sha256=
|
|
31
|
-
rapidtide/maskutil.py,sha256=
|
|
32
|
-
rapidtide/miscmath.py,sha256=
|
|
26
|
+
rapidtide/happy_supportfuncs.py,sha256=LnAApwmSZ1LeZRyqFvWEU2takjV5dbAz8Ca-LMLDBas,126274
|
|
27
|
+
rapidtide/helper_classes.py,sha256=DwjG7oHZG-bGWO0lPvju2ibvzsKI0ULkxQANIthHr9g,30033
|
|
28
|
+
rapidtide/io.py,sha256=h0h_pKLFEvCuWo4DXviboan_27tLnBYnQQeX-4KAvfY,154004
|
|
29
|
+
rapidtide/linfitfiltpass.py,sha256=Ix4IrjecEoKT27ntPqTV6tUnbVTB-DmUMPAaeRq5GdY,30574
|
|
30
|
+
rapidtide/makelaggedtcs.py,sha256=sbNjiHe9iiqJ-vrWmtvQI1Upf6T61DrMpeK3RO4EWfo,9794
|
|
31
|
+
rapidtide/maskutil.py,sha256=Wh0KJoBTUVuYn8gKc5wWSO6cgPTgkNoAIRHPZjwNCWw,26505
|
|
32
|
+
rapidtide/miscmath.py,sha256=lG0gMp1JgAR_ecC8ao4aUFeggFDGGi3oeJNZcbHVtjA,42605
|
|
33
33
|
rapidtide/multiproc.py,sha256=c_kmcFu669etEaeWZ3rK6Gg6uka_X4LDibCbWSOAIe4,13091
|
|
34
|
-
rapidtide/patchmatch.py,sha256=
|
|
35
|
-
rapidtide/peakeval.py,sha256=
|
|
36
|
-
rapidtide/ppgproc.py,sha256=
|
|
37
|
-
rapidtide/qualitycheck.py,sha256=
|
|
38
|
-
rapidtide/refinedelay.py,sha256=
|
|
39
|
-
rapidtide/refineregressor.py,sha256=
|
|
34
|
+
rapidtide/patchmatch.py,sha256=Rc2QtODMFkWTq6T3l_HblRBC0zX6LQ4LYloIBPLbdU4,26638
|
|
35
|
+
rapidtide/peakeval.py,sha256=MCCilwbiT2FuUJTAtF2MyXS9Gk-i9WBYTCjly9n_0H4,5468
|
|
36
|
+
rapidtide/ppgproc.py,sha256=zK5cjNBNwUI_ThhCGg_g9JVf4xNqdiDCak8BF7h_QoU,78679
|
|
37
|
+
rapidtide/qualitycheck.py,sha256=oym8F11z5ERFK0vAfMy7d2L708GtRE0ErN5OIJM0Hbg,23979
|
|
38
|
+
rapidtide/refinedelay.py,sha256=0c_d5lzLf3Er7gdxSqLFmYt-J8TUdAjK-8QXQnuzMvg,30165
|
|
39
|
+
rapidtide/refineregressor.py,sha256=echFnWDgCfjBuqbV9aUlQeN3BvPqevueGvvYcU1UiH8,35825
|
|
40
40
|
rapidtide/resample.py,sha256=qRIu8lKBehglHn3rohrfahuEXTjbcDh5SUxWv15z7ic,52000
|
|
41
|
-
rapidtide/simFuncClasses.py,sha256=
|
|
42
|
-
rapidtide/simfuncfit.py,sha256=
|
|
41
|
+
rapidtide/simFuncClasses.py,sha256=FbNZw6A6nZsAktIGKKYGTR0wchU3_zYntQ849DqPa0U,79915
|
|
42
|
+
rapidtide/simfuncfit.py,sha256=zD1VfsdQD16jJMDyWlIg6GjElWsy7dMTL2mS3i6yqUg,20375
|
|
43
43
|
rapidtide/stats.py,sha256=931o2dqTjfo0-y9WHYVlFOpqx3uZXxh5fFsh8aC6DSU,44336
|
|
44
44
|
rapidtide/tidepoolTemplate.py,sha256=zfi_PkexrCwOe7xTpBGXmDwnozKzLJ5wLiji-sZtVEg,47350
|
|
45
45
|
rapidtide/tidepoolTemplate.ui,sha256=WX_ppn1meIWXl_yw0bkSmrsPw_YpylQzPJlf8XYob5w,46676
|
|
@@ -50,11 +50,10 @@ rapidtide/tidepoolTemplate_big.py,sha256=vTNk6bJe_QN3EsvSte1F8u2duXSj6zpfn0RObbG
|
|
|
50
50
|
rapidtide/tidepoolTemplate_big.ui,sha256=lJYAJHJA8iJYJTlnq5GllkW-VMRrpLhDL4kskwU14Xw,65552
|
|
51
51
|
rapidtide/tidepoolTemplate_big_qt6.py,sha256=yXmFpoO5exhbXHtjKVE7AG-oi7tB6QOCFW5RRO0z6Ls,67499
|
|
52
52
|
rapidtide/tidepoolTemplate_qt6.py,sha256=qBgufkyHsmEZ_HPgAu8LLbztlwlyfm6KcRfJ9qVFbXc,48198
|
|
53
|
-
rapidtide/util.py,sha256=
|
|
54
|
-
rapidtide/voxelData.py,sha256=
|
|
55
|
-
rapidtide/wiener.py,sha256=
|
|
56
|
-
rapidtide/wiener2.py,sha256=
|
|
57
|
-
rapidtide/wiener_doc.py,sha256=kkTCcAjAS6dIfLH0Z1hC0m1krJoS7KDVSfgfIgRu6O0,8701
|
|
53
|
+
rapidtide/util.py,sha256=BWXUwgOgoZZDxP1qK9_2e4RvoxfpCeGIXBJPzunlWk8,78360
|
|
54
|
+
rapidtide/voxelData.py,sha256=veRRDLJZR2h0auJy2MGRvEYlMrN3f-vHS-6VVNB00lA,37824
|
|
55
|
+
rapidtide/wiener.py,sha256=RDOPaWU1Zn-tjkQiMP0EU2Von2N9kfusG2vN7KZL400,8207
|
|
56
|
+
rapidtide/wiener2.py,sha256=8uYBDfhPmrFtPkf4uJkZqlfDoM7njfpv_6tBykR2Ek0,7056
|
|
58
57
|
rapidtide/data/examples/src/installtestdata,sha256=ummRjxxmArheODnzRHwb6DL9Sxhay6ulJpETEMVy-fs,205
|
|
59
58
|
rapidtide/data/examples/src/testLD,sha256=i5VQ5XfjkfIau2Dqne50BMbK4l_9M_hb_gCyPffFsLw,1447
|
|
60
59
|
rapidtide/data/examples/src/test_findmaxlag.py,sha256=cr6MwhjNZbXfmL9ENunS3oVZCnyNEszmgpBAXDdkskU,11523
|
|
@@ -70,12 +69,12 @@ rapidtide/data/examples/src/testdecomp,sha256=xxxr510aOBjtpJy4aQNAFTyEFZD6QdHp6-
|
|
|
70
69
|
rapidtide/data/examples/src/testdelayvar,sha256=jnAL4BNQTfiH85rC1wQ-7fMcPwLrc3FhzCd3GbZUmlU,301
|
|
71
70
|
rapidtide/data/examples/src/testfileorfloat,sha256=9r4mz7pBV_8iFZya9kmtfbnTRS3-94Cx9Q63Ni3mkZs,815
|
|
72
71
|
rapidtide/data/examples/src/testfingerprint,sha256=RlAIC1lMDWMGzZKxY24DJRuaUEL0BenSFBey0gL5dqU,402
|
|
73
|
-
rapidtide/data/examples/src/testfmri,sha256=
|
|
72
|
+
rapidtide/data/examples/src/testfmri,sha256=r84404u8Kr34aAUWcF5r97-LRRBoafmmkpsn4OI66PQ,2979
|
|
74
73
|
rapidtide/data/examples/src/testfmridocker,sha256=jjL7bK29rrcog6uO9BtvcyAU3Sv8_5cbw2nqKoiZ95o,1193
|
|
75
74
|
rapidtide/data/examples/src/testfrozen,sha256=K3qUWDRKPPiCXRgIFuPdwUUjUTzf4QBW8UUhR75NzDM,283
|
|
76
75
|
rapidtide/data/examples/src/testfuncs,sha256=zjq9u7mXMf0UlbUgePyS1mj7QHclicmw6NY0g31SqeY,1551
|
|
77
76
|
rapidtide/data/examples/src/testglmfilt,sha256=HHGBjj5X-IQGQxBX_AvsIp5CXjKRok0ovCmg0hB3S_Y,3363
|
|
78
|
-
rapidtide/data/examples/src/testhappy,sha256=
|
|
77
|
+
rapidtide/data/examples/src/testhappy,sha256=WXUpradkkA86aOCE9lhxfl_AJfCRLz0nSi9s8pZeAGk,2152
|
|
79
78
|
rapidtide/data/examples/src/testinitdelay,sha256=ts_r5WZBLJDQ3UfPmJ9sfXlO0arO9dhGCQ_Y1wYvjMk,559
|
|
80
79
|
rapidtide/data/examples/src/testlinfit,sha256=oPnkHJ6lcwsuJhnSMMK7Gx3DHSCf6JK7CIYuIMHbyNA,471
|
|
81
80
|
rapidtide/data/examples/src/testlocalflow,sha256=hEwstisbWVuALr_29fBJ2nHETKkEF_9qK8wJ4kzuiJk,596
|
|
@@ -204,7 +203,7 @@ rapidtide/scripts/showarbcorr.py,sha256=phdP6LRf50SV7wIFbRqFUvuKzC6pY-OQE2j1FWDK
|
|
|
204
203
|
rapidtide/scripts/showhist.py,sha256=w7ZPO7HvmnLImiU6k3DaYip5Mx3g8bnyMzB23dTuEMU,887
|
|
205
204
|
rapidtide/scripts/showstxcorr.py,sha256=KVHfyb0wgjqH-vcAVe7ixQN8l9__ImScutPW9ts6JmM,893
|
|
206
205
|
rapidtide/scripts/showtc.py,sha256=liDu1zY3-S_ijJMPLmAWBVBQ_FWlItSq1ZdvZLTCsNw,883
|
|
207
|
-
rapidtide/scripts/showxcorr_legacy.py,sha256=
|
|
206
|
+
rapidtide/scripts/showxcorr_legacy.py,sha256=l8FvGx84tZ2fOzk0n_z9fiPcXVemVuuk_vvBQHOo6Y0,18782
|
|
208
207
|
rapidtide/scripts/showxcorrx.py,sha256=HegmFMos1KljuBpkrzFphpVJpZrKRanAvZKoKm72rfg,891
|
|
209
208
|
rapidtide/scripts/showxy.py,sha256=Mw83IPEPB3HpJvqXSAsoObi1J3ma__I-XvMobLyOhxw,883
|
|
210
209
|
rapidtide/scripts/simdata.py,sha256=RHO9PrNBrCWmibx7Xb78LE5qnm8Ex4A5pLEMBJf-jDk,885
|
|
@@ -212,7 +211,7 @@ rapidtide/scripts/spatialdecomp.py,sha256=9hxc8p_UQv7eHhsIutm8Rzeq4m9moX1btpbWJh
|
|
|
212
211
|
rapidtide/scripts/spatialfit.py,sha256=9c_1ODT5s6Lbv1NkWzNPMSN_89lFyNzuamjdyZPewNs,891
|
|
213
212
|
rapidtide/scripts/spatialmi.py,sha256=X_lghYk9HLRgEmNRvHzshUlTfAysPwR8AQJqatZTGuM,889
|
|
214
213
|
rapidtide/scripts/spectrogram.py,sha256=PvZ6c404qJmdZ_sH2eh_t3DZ-ozJBLzmeDoZE1CO_s4,893
|
|
215
|
-
rapidtide/scripts/stupidramtricks.py,sha256=
|
|
214
|
+
rapidtide/scripts/stupidramtricks.py,sha256=6HgXd7G-IC5Vye9peVjGLhZp5mQGSYBuszSIDEDe1Bs,7138
|
|
216
215
|
rapidtide/scripts/synthASL.py,sha256=7dUOfJV9jb4K1aEpvBYCeYfioa0V0Yczy5zhOw7twl4,887
|
|
217
216
|
rapidtide/scripts/tcfrom2col.py,sha256=yHkwZHD8EP29_Xvar51G-icn_J2VGHyjso0hqeDuoN4,891
|
|
218
217
|
rapidtide/scripts/tcfrom3col.py,sha256=3w4bMz9BSdPEOd90VXeBx3QdyZIC0jMVZbe4M7NVXTc,891
|
|
@@ -235,7 +234,7 @@ rapidtide/tests/showkernels,sha256=h9bge8uIPFq1mTPal8Uqs_drwVrN1qyIbZGFLK-ez2s,1
|
|
|
235
234
|
rapidtide/tests/test_aliasedcorrelate.py,sha256=3387A6Ngo3mbqIiUWxJhtppe6E3AplACRkE57YApOLc,3935
|
|
236
235
|
rapidtide/tests/test_aligntcs.py,sha256=PKkj8JGrHx-8Kpx5LQF5mwhWUFsMR-w2bkhWOREeHsY,1715
|
|
237
236
|
rapidtide/tests/test_calcicc.py,sha256=T3f-9k4ah9JesGFHFEobvQ4BK0oXwXkjCW1cyGjOgfU,1387
|
|
238
|
-
rapidtide/tests/test_cleanregressor.py,sha256=
|
|
237
|
+
rapidtide/tests/test_cleanregressor.py,sha256=ssGS_tnGgKRrRl9uFfkub2XfRcPDqe4ARALZVeHGwxE,6251
|
|
239
238
|
rapidtide/tests/test_congrid.py,sha256=Ni-PeB-oaBgoqyZ2XLhDB3yvAKWTeY-0kyAb6HjvUQ0,5610
|
|
240
239
|
rapidtide/tests/test_correlate.py,sha256=SKqLbj0MDQ7wZ1N70j6x07_i-Jok9ySPdJMt8lJ7qq0,2547
|
|
241
240
|
rapidtide/tests/test_corrpass.py,sha256=v01jkJ9zCDGQspY4RMiObpQG8k0K84CWvlfFNMnlKiY,7857
|
|
@@ -248,8 +247,8 @@ rapidtide/tests/test_filter.py,sha256=_xhk3rbYFtuKgrDdgrrrlITtmQhOUUi5EhFcnxVUio
|
|
|
248
247
|
rapidtide/tests/test_findmaxlag.py,sha256=e5JAVRJZTv3sy_AmakWSy412I75szgmdfZMdOx-PdCg,12356
|
|
249
248
|
rapidtide/tests/test_fullrunhappy_v1.py,sha256=uzpDhYtDQbj5013nUeyxjRClS0r7mrhP6v0tY2D8XlU,1660
|
|
250
249
|
rapidtide/tests/test_fullrunhappy_v2.py,sha256=6eTUlU7OnyAWVA0lFfwqBnBfyDt3A4K8C3LoPfebKkw,2101
|
|
251
|
-
rapidtide/tests/test_fullrunhappy_v3.py,sha256=
|
|
252
|
-
rapidtide/tests/test_fullrunhappy_v4.py,sha256=
|
|
250
|
+
rapidtide/tests/test_fullrunhappy_v3.py,sha256=jgockk7nmWfohLAsqdQH2DVtp-xI1cAjfTLfhA8p0zM,2085
|
|
251
|
+
rapidtide/tests/test_fullrunhappy_v4.py,sha256=_bHsZughsrEOUhwwWNA0F0GuNvdJbBRRppHOl4oQ8lI,2129
|
|
253
252
|
rapidtide/tests/test_fullrunhappy_v5.py,sha256=BK240KjaJs9mHFgTmsDjCW3miBd4dDTn6qZxAYD3HTA,1896
|
|
254
253
|
rapidtide/tests/test_fullrunrapidtide_v1.py,sha256=XhMjNG0EIyzGnGaI6Q_imSkjFDyScx1y-bwAWBlzC2w,3095
|
|
255
254
|
rapidtide/tests/test_fullrunrapidtide_v2.py,sha256=srjNJOetoxuhSwYKb7RfejHa0jzPgXP_vtcb0RYe0Dc,3164
|
|
@@ -259,7 +258,7 @@ rapidtide/tests/test_fullrunrapidtide_v5.py,sha256=NzTYGXaWsJzd7uIIgom_NPwl3EmGC
|
|
|
259
258
|
rapidtide/tests/test_fullrunrapidtide_v6.py,sha256=qjxniiLjkA8sFK3_spNpF13PsN_6ONTB8VtcSYAZ_a0,4368
|
|
260
259
|
rapidtide/tests/test_fullrunrapidtide_v7.py,sha256=yAg5kJUAm7cD__yf-M7P07eILZKyMLm7QjIYC5mRHiY,4250
|
|
261
260
|
rapidtide/tests/test_fullrunrapidtide_v8.py,sha256=usfykAA3QuUj8bghF9g2Vq567qCSY3IMStYz3-thwz0,1963
|
|
262
|
-
rapidtide/tests/test_getparsers.py,sha256=
|
|
261
|
+
rapidtide/tests/test_getparsers.py,sha256=fnwR6dTgsqR9gxhrKCix740RG21YuZNUDT9cEzjMN2M,7071
|
|
263
262
|
rapidtide/tests/test_io.py,sha256=E99Bmfo3qbeQZEn4btq2bPisKyvUPx6PMPXTvKOasYA,17065
|
|
264
263
|
rapidtide/tests/test_linfitfiltpass.py,sha256=Q_XbDujj4tGc3X_I37IJJBDsvAs0m-S_oU8WG7DcGKU,5554
|
|
265
264
|
rapidtide/tests/test_mi.py,sha256=Yia_TE1VxQfT0cZFdwsw6pb2l5E3PmY89zhKSfKus3g,2272
|
|
@@ -270,12 +269,12 @@ rapidtide/tests/test_padvec.py,sha256=JqCchn7kgclkFNCH3IigbOcU7knpeyYdHU0Ahxc4cS
|
|
|
270
269
|
rapidtide/tests/test_parserfuncs.py,sha256=zKY8rwsKRydfNqy-oceCQeL-41ezpG2lyluNQ0RMz-M,3087
|
|
271
270
|
rapidtide/tests/test_phaseanalysis.py,sha256=6d9nuSsVLjHW1br2BXvJxVQMjFcbuUuYGNjt3t7-odk,2150
|
|
272
271
|
rapidtide/tests/test_rapidtideparser.py,sha256=Dmf_48Kgw9UW2L5pr8bVT1j5rBx__veAdiaAmYpIYCQ,5555
|
|
273
|
-
rapidtide/tests/test_refinedelay.py,sha256=
|
|
272
|
+
rapidtide/tests/test_refinedelay.py,sha256=CPPW35-TXx_JoG-pIu7Jc4Fczj-A_yJG15Wkw7hPHa0,8839
|
|
274
273
|
rapidtide/tests/test_runmisc.py,sha256=dPR68Irza4Li_eQBlv6RPTtLpk_Vv3RwwmYmv1Einj0,2855
|
|
275
274
|
rapidtide/tests/test_sharedmem.py,sha256=cfPliEyCJpB34YCmuYkwS7MbqN6BySiDyZyyhWXLb7I,2026
|
|
276
|
-
rapidtide/tests/test_simroundtrip.py,sha256=
|
|
275
|
+
rapidtide/tests/test_simroundtrip.py,sha256=NrgmuW338am9zOGNTmH-wmOz70qzt2OZ8aWRfuJcrM0,4202
|
|
277
276
|
rapidtide/tests/test_simulate.py,sha256=9zLY3PxmLgXdQcDHX5B0INyhhB_KOjwpBZkIEDVcT8o,3325
|
|
278
|
-
rapidtide/tests/test_stcorrelate.py,sha256=
|
|
277
|
+
rapidtide/tests/test_stcorrelate.py,sha256=d46vrZIj1MikUXKoNsui4_bEz95Y--ZtWDHzCjzE52M,2614
|
|
279
278
|
rapidtide/tests/test_timeshift.py,sha256=J4aLZI0ZvnB-vJZEAqwrcsarGRfKkKSY7IToyuhlqcg,3045
|
|
280
279
|
rapidtide/tests/test_valtoindex.py,sha256=z-_m8d4Zo5pMeH2-vOhFM62hD4M7zcNx8rMrFA78fTI,1179
|
|
281
280
|
rapidtide/tests/test_zRapidtideDataset.py,sha256=ld9YQzgXyco8Nvx_ZTa9ow_xNLXIm_f2AMBQrQ5Ryf4,2255
|
|
@@ -308,25 +307,25 @@ rapidtide/workflows/__init__.py,sha256=2VWpHoQGC8zOLj88k9EtXOsY4cmKzkVG9Og6wracg
|
|
|
308
307
|
rapidtide/workflows/adjustoffset.py,sha256=vFcyTb6u-FpY2T900xBOnhhYWkZsTQl5qM9B4rwF288,12265
|
|
309
308
|
rapidtide/workflows/aligntcs.py,sha256=p34aVv6XNgC2nuLaP59_dtKtVQ40zKTpk8zo_EETUyg,8276
|
|
310
309
|
rapidtide/workflows/applydlfilter.py,sha256=CndzGEQ9iQIwKRgKQ8Bkzb1xkq_5BT1JCTBTvp0j9U0,8484
|
|
311
|
-
rapidtide/workflows/applyppgproc.py,sha256=
|
|
310
|
+
rapidtide/workflows/applyppgproc.py,sha256=Nl1kjOq-A1_Q6WlUHzKftlcBNo6nvgScF0oNQsSQGH4,19480
|
|
312
311
|
rapidtide/workflows/atlasaverage.py,sha256=tIKvw_DwWKcrtZETlcK2Y0mnyQMxlnyXSWXK-QXXqu8,23551
|
|
313
312
|
rapidtide/workflows/atlastool.py,sha256=vG5MxpLQnEzcYhAcw1fIiPGxNYiTajM1mDBRF27SLz4,19663
|
|
314
|
-
rapidtide/workflows/calcSimFuncMap.py,sha256=
|
|
313
|
+
rapidtide/workflows/calcSimFuncMap.py,sha256=cSWb2UNo6iO69pNFTfq4Ctd5geJOxUd031mDD14WFs4,17374
|
|
315
314
|
rapidtide/workflows/calctexticc.py,sha256=Ot05uFtz6w2_q4cXitXhqwt_8tqZmElKLey6cIvGxAY,17470
|
|
316
|
-
rapidtide/workflows/ccorrica.py,sha256=
|
|
317
|
-
rapidtide/workflows/cleanregressor.py,sha256=
|
|
318
|
-
rapidtide/workflows/delayvar.py,sha256=
|
|
315
|
+
rapidtide/workflows/ccorrica.py,sha256=N7LLfdZ3L2mmRtXvWGrxW5aG7cUKFL009a4aNi9UTJc,14223
|
|
316
|
+
rapidtide/workflows/cleanregressor.py,sha256=Ozkn6zWjCIf02Y-sgnFs-YCsTbHL7j2yuJfh83UGtHI,15534
|
|
317
|
+
rapidtide/workflows/delayvar.py,sha256=dBogUduOtilbBJxHFRrRYcgrGmrpVA8ZAkHF83poFAM,44506
|
|
319
318
|
rapidtide/workflows/diffrois.py,sha256=zmMaqGu2Prk3RczkeIBw1B7mtP_EUeyAQC57k6sYMo8,8428
|
|
320
319
|
rapidtide/workflows/endtidalproc.py,sha256=MLuLWa2eoyZGxWIyO-gZXnntw40eAP86qhHizfaqQPI,9555
|
|
321
320
|
rapidtide/workflows/fdica.py,sha256=gZlLcAsRczTnKgDdnPMsb0U1aLvqPKVLC3G8l2macF0,21425
|
|
322
321
|
rapidtide/workflows/filtnifti.py,sha256=GoLDFkBrOdbJN4ffqbTgVc4h5GLNbKXK9YuB-8zAr10,5854
|
|
323
322
|
rapidtide/workflows/filttc.py,sha256=gPuhxcaz8vjjuDwr1ybJjhXxw4I4v-Jiu5KOoRvqJQg,7445
|
|
324
|
-
rapidtide/workflows/fitSimFuncMap.py,sha256=
|
|
323
|
+
rapidtide/workflows/fitSimFuncMap.py,sha256=TNay1szDujw12bEpPQ-Tnc01DC7tuaTf62xdUW9p3qc,21836
|
|
325
324
|
rapidtide/workflows/fixtr.py,sha256=W-XViiHn2OOSy1MuSJxgbMsYyBsI6GykB9CxBFgfHSA,4406
|
|
326
325
|
rapidtide/workflows/gmscalc.py,sha256=EXI9bWHvNjUKdB775uyoRsx6ByvVLMWTXfpdtRHKf-Y,10082
|
|
327
|
-
rapidtide/workflows/happy.py,sha256=
|
|
326
|
+
rapidtide/workflows/happy.py,sha256=tOVLl6UVzarF5M4muNp3g_JVzbcw-RHiwb7Ic2ra-7g,93456
|
|
328
327
|
rapidtide/workflows/happy2std.py,sha256=yuRodhqlzwQg4ew7xtlKoQaJbECbZa4vNssd8jUJlzw,13501
|
|
329
|
-
rapidtide/workflows/happy_parser.py,sha256=
|
|
328
|
+
rapidtide/workflows/happy_parser.py,sha256=62aCmPqpzXyKIXeP0q7Bs8XVTY8w1v09oq8PoZX_guY,32617
|
|
330
329
|
rapidtide/workflows/histnifti.py,sha256=8NIZG8j4AWBEbeotVg98FUVDq66dBIqmWhcvQ1vg3ns,15713
|
|
331
330
|
rapidtide/workflows/histtc.py,sha256=zgLLKYyhuQSw4TfJhIjrmsEuFgF4cSFjig90HNTN-5o,7424
|
|
332
331
|
rapidtide/workflows/linfitfilt.py,sha256=e8Dh-9tGrT-2fqfDd1jCzqAU8Q6BgBaIf6GULbxl01I,13892
|
|
@@ -334,47 +333,47 @@ rapidtide/workflows/localflow.py,sha256=s11r9b_T_IKU3P2jce4ZOlRUuKIwvlPFucbzsp_u
|
|
|
334
333
|
rapidtide/workflows/mergequality.py,sha256=FPItpGKlgXbLoyBBQZJ5G5HOd38wPGUQZa7X78_jz3s,18344
|
|
335
334
|
rapidtide/workflows/niftidecomp.py,sha256=Dv3PqSEW5_2AEoMlQm-U4FkABKASSoT1OS6ExwzMBv8,26116
|
|
336
335
|
rapidtide/workflows/niftistats.py,sha256=rhug32RyFd_PLc8_2TlnW6gvIvXC4i_gbvh7iqv2XF8,24351
|
|
337
|
-
rapidtide/workflows/pairproc.py,sha256
|
|
336
|
+
rapidtide/workflows/pairproc.py,sha256=nfzyBcjiiogaEB9fdzZqqkNN1iUf0mWaB8W3-z6tsrU,10063
|
|
338
337
|
rapidtide/workflows/pairwisemergenifti.py,sha256=JETsEp3mrIRSF3f68rKBB0a8gNprr3VHOn0isEXUh9w,6624
|
|
339
338
|
rapidtide/workflows/parser_funcs.py,sha256=cICRhK6CKMtlxjF9PVfwm73JqBaL9VsewBiq9UTIeB0,75835
|
|
340
339
|
rapidtide/workflows/physiofreq.py,sha256=U-eLNdtLQfUvpJopImw0g1NX5l8Vk51X1lV4ri5s_Fg,10090
|
|
341
|
-
rapidtide/workflows/pixelcomp.py,sha256=
|
|
340
|
+
rapidtide/workflows/pixelcomp.py,sha256=ZfjkxG8f7tISg9cpfhW_80LMt6wWb29mOi0ALY1lIZw,13793
|
|
342
341
|
rapidtide/workflows/plethquality.py,sha256=oWsCjidcidpdaVYHOY4JRpPgEikyrhtym_vg_Mnq-Is,7019
|
|
343
342
|
rapidtide/workflows/polyfitim.py,sha256=eFyGvHXXXh7iZX3yis6uzl-LTO2IFIX9c0IC47nXkBc,15355
|
|
344
343
|
rapidtide/workflows/proj2flow.py,sha256=ifp5Uc4pUijKggP2fr0prrE72i01r4OXBNMwTkRR0n4,10092
|
|
345
|
-
rapidtide/workflows/rankimage.py,sha256=
|
|
346
|
-
rapidtide/workflows/rapidtide.py,sha256=
|
|
344
|
+
rapidtide/workflows/rankimage.py,sha256=0BcNHVcrztHBEbHvTWdtIIEYn0j_aPAjLeuFZ4Uo4-8,7107
|
|
345
|
+
rapidtide/workflows/rapidtide.py,sha256=d5iaiBKC1dk_X6XzhNQfe1B6s9GKuvv3aAUPdYRiDzs,143891
|
|
347
346
|
rapidtide/workflows/rapidtide2std.py,sha256=Wo1wGeW-4z-Mwm1-5zTJGQc7Mwks6Y2byPhI250hKWU,14330
|
|
348
347
|
rapidtide/workflows/rapidtide_parser.py,sha256=NWbGIaTT-vtl9aTtW_ceow9-8EaL1LL6CbF9NSXQtJk,81187
|
|
349
|
-
rapidtide/workflows/refineDelayMap.py,sha256=
|
|
350
|
-
rapidtide/workflows/refineRegressor.py,sha256=
|
|
351
|
-
rapidtide/workflows/regressfrommaps.py,sha256=
|
|
348
|
+
rapidtide/workflows/refineDelayMap.py,sha256=qgMNWUymkNYUdGVlnHUVmumsDfPcUwtdrs65KqH4O00,7882
|
|
349
|
+
rapidtide/workflows/refineRegressor.py,sha256=9P8rtZv7nvf-msKBXXR0NDcxptkCownigrlcLhPBsMw,46983
|
|
350
|
+
rapidtide/workflows/regressfrommaps.py,sha256=BwyXxXBOLokQfS_LjdICaCclKMi9HorpTYVjbguAvDI,10192
|
|
352
351
|
rapidtide/workflows/resamplenifti.py,sha256=AEJsLzjKMs6Xmarb6eEIqvE3HHljvXVbmulVrZSoNzs,7613
|
|
353
352
|
rapidtide/workflows/resampletc.py,sha256=UL3eAyfbvhQT63m9yQSGETxDX6OC33AlJNBUlI8M3oY,7199
|
|
354
|
-
rapidtide/workflows/retrolagtcs.py,sha256=
|
|
355
|
-
rapidtide/workflows/retroregress.py,sha256=
|
|
356
|
-
rapidtide/workflows/roisummarize.py,sha256=
|
|
353
|
+
rapidtide/workflows/retrolagtcs.py,sha256=cOYsJ5ZNiviQ29wwFJETS_2LIUzToi8Sd46P-6_9yHI,13936
|
|
354
|
+
rapidtide/workflows/retroregress.py,sha256=XcEEfsfaTEz8mhk3PVgZR0p-NRzGx6COIWjU0AhmSyE,52765
|
|
355
|
+
rapidtide/workflows/roisummarize.py,sha256=JEsIwqIawlQGaSo_a2fNXFBzFDIqWfpvTVamR1OG8Jk,13017
|
|
357
356
|
rapidtide/workflows/runqualitycheck.py,sha256=-BGuDW8i3kRJI9xZUz5_4j5FXZ-k6I8tkzMM3jd5ZH8,4691
|
|
358
|
-
rapidtide/workflows/showarbcorr.py,sha256=
|
|
357
|
+
rapidtide/workflows/showarbcorr.py,sha256=VlNn0fFgGWr7MxlYxsb3ksz0aZmgeee-oBl5mAQiX3U,19487
|
|
359
358
|
rapidtide/workflows/showhist.py,sha256=DzoVTBBt0AwCkNuACOp5CvVOxMqc067twwAiN9yuTdg,6651
|
|
360
359
|
rapidtide/workflows/showstxcorr.py,sha256=vkdDti91_UvscSTV6MCCLUFadlhx042xt9N3kXCrlkQ,23205
|
|
361
360
|
rapidtide/workflows/showtc.py,sha256=qgfY03o7foUfdmldDmdpTTwBO-sZnuNcPwXwy4vYr2I,24573
|
|
362
|
-
rapidtide/workflows/showxcorrx.py,sha256=
|
|
361
|
+
rapidtide/workflows/showxcorrx.py,sha256=_r5_1nOEZIga9k13NBesAZNmf4rcBxScxmGg6Z_jaso,37666
|
|
363
362
|
rapidtide/workflows/showxy.py,sha256=CH78ZrZZtcnptzVKlAxg_BatRWmbigyaNfz8l_RvArI,17005
|
|
364
|
-
rapidtide/workflows/simdata.py,sha256=
|
|
363
|
+
rapidtide/workflows/simdata.py,sha256=tvR-Sz-8ygDfLTWFxxIl_sDJmFMqqImKOxNRnniI6Ps,26613
|
|
365
364
|
rapidtide/workflows/spatialfit.py,sha256=NHXz-KKqZep64kdkawZkaMJOI7mhF0HPrpCt9lLFLxY,11758
|
|
366
|
-
rapidtide/workflows/spatialmi.py,sha256=
|
|
365
|
+
rapidtide/workflows/spatialmi.py,sha256=eosMBe_WflSAAxC9NsoHisWTcTcuimNTNiIYTDLeTkA,22172
|
|
367
366
|
rapidtide/workflows/spectrogram.py,sha256=ZY1PHpRISC3-O4epYa5u6BgJYBpdbxjz3BqgwZC2UuY,16005
|
|
368
367
|
rapidtide/workflows/synthASL.py,sha256=68ecEH87SCHyO-x1y95FaaptrcpYAg0xd-1EFjePZuY,9968
|
|
369
368
|
rapidtide/workflows/tcfrom2col.py,sha256=aK-EaFu1HP0NqK_SUd9N9O2-aBeJ0eiFZ44QJa2FZLM,4428
|
|
370
369
|
rapidtide/workflows/tcfrom3col.py,sha256=mb1d7-B67Hht0EDASfJBbjNEETPSn26tHMpwY541emY,4405
|
|
371
|
-
rapidtide/workflows/tidepool.py,sha256=
|
|
370
|
+
rapidtide/workflows/tidepool.py,sha256=ViQBR9FeVXg77JSNZa0k78Bx7oxF1IDnWzgEPqZwz7A,187919
|
|
372
371
|
rapidtide/workflows/utils.py,sha256=ZHERuhotw_KB2Jxf8JtbKgpInbM20rX9uixTIldk7Tg,5612
|
|
373
372
|
rapidtide/workflows/utils_doc.py,sha256=7WZ_E_4mnVO3iDynZ8Gd6FUBC9pz-Csz2TmNHT-72zA,10283
|
|
374
373
|
rapidtide/workflows/variabilityizer.py,sha256=_AY16UY9_1cVjkUMFWPTufTQWLxhUFNpG1PAangvThw,7576
|
|
375
|
-
rapidtide-3.1.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
|
376
|
-
rapidtide-3.1.dist-info/METADATA,sha256=
|
|
377
|
-
rapidtide-3.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
378
|
-
rapidtide-3.1.dist-info/entry_points.txt,sha256=dVXEEfqnv_eUNdn02PfZTTd5KK4vZwumP8HCfhUVhag,3380
|
|
379
|
-
rapidtide-3.1.dist-info/top_level.txt,sha256=MnNXGfbrIBc9RnAqzBHOWd3GQO-aIUDnRTz4_5VjH5g,16
|
|
380
|
-
rapidtide-3.1.dist-info/RECORD,,
|
|
374
|
+
rapidtide-3.1.1.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
|
375
|
+
rapidtide-3.1.1.dist-info/METADATA,sha256=Td-ko8Sgzy3JVaq9DVLefi5wcitlyfsgw10g0QtyHdM,15746
|
|
376
|
+
rapidtide-3.1.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
377
|
+
rapidtide-3.1.1.dist-info/entry_points.txt,sha256=dVXEEfqnv_eUNdn02PfZTTd5KK4vZwumP8HCfhUVhag,3380
|
|
378
|
+
rapidtide-3.1.1.dist-info/top_level.txt,sha256=MnNXGfbrIBc9RnAqzBHOWd3GQO-aIUDnRTz4_5VjH5g,16
|
|
379
|
+
rapidtide-3.1.1.dist-info/RECORD,,
|
rapidtide/wiener_doc.py
DELETED
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env python
|
|
2
|
-
# -*- coding: utf-8 -*-
|
|
3
|
-
#
|
|
4
|
-
# Copyright 2016-2025 Blaise Frederick
|
|
5
|
-
#
|
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
# you may not use this file except in compliance with the License.
|
|
8
|
-
# You may obtain a copy of the License at
|
|
9
|
-
#
|
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
#
|
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
# See the License for the specific language governing permissions and
|
|
16
|
-
# limitations under the License.
|
|
17
|
-
#
|
|
18
|
-
#
|
|
19
|
-
import numpy as np
|
|
20
|
-
from numpy.typing import NDArray
|
|
21
|
-
from tqdm import tqdm
|
|
22
|
-
|
|
23
|
-
import rapidtide.fit as tide_fit
|
|
24
|
-
import rapidtide.multiproc as tide_multiproc
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
def _procOneVoxelWiener(
|
|
28
|
-
vox: int,
|
|
29
|
-
lagtc: NDArray,
|
|
30
|
-
inittc: NDArray,
|
|
31
|
-
rt_floatset: type = np.float64,
|
|
32
|
-
rt_floattype: str = "float64",
|
|
33
|
-
) -> tuple[int, NDArray, NDArray, NDArray, NDArray, NDArray, NDArray, NDArray]:
|
|
34
|
-
"""
|
|
35
|
-
Perform Wiener filter processing on a single voxel time series.
|
|
36
|
-
|
|
37
|
-
This function applies a Wiener filter to remove the lagged component from
|
|
38
|
-
the initial time course, returning both the filtered and unfiltered results
|
|
39
|
-
along with fitting statistics.
|
|
40
|
-
|
|
41
|
-
Parameters
|
|
42
|
-
----------
|
|
43
|
-
vox : int
|
|
44
|
-
Voxel index identifier
|
|
45
|
-
lagtc : NDArray
|
|
46
|
-
Lagged time course data (input signal)
|
|
47
|
-
inittc : NDArray
|
|
48
|
-
Initial time course data (target signal)
|
|
49
|
-
rt_floatset : type, optional
|
|
50
|
-
Real-time float type for output arrays, default is np.float64
|
|
51
|
-
rt_floattype : str, optional
|
|
52
|
-
String representation of the real-time float type, default is "float64"
|
|
53
|
-
|
|
54
|
-
Returns
|
|
55
|
-
-------
|
|
56
|
-
tuple[int, NDArray, NDArray, NDArray, NDArray, NDArray, NDArray, NDArray]
|
|
57
|
-
A tuple containing:
|
|
58
|
-
- vox (int): Input voxel index
|
|
59
|
-
- intercept (NDArray): Regression intercept term
|
|
60
|
-
- sqrt_R2 (NDArray): Square root of coefficient of determination
|
|
61
|
-
- R2 (NDArray): Coefficient of determination
|
|
62
|
-
- fitcoff (NDArray): Fitting coefficient
|
|
63
|
-
- ratio (NDArray): Ratio of slope to intercept
|
|
64
|
-
- datatoremove (NDArray): Data to be removed (filtered signal)
|
|
65
|
-
- residual (NDArray): Residual signal (unfiltered data)
|
|
66
|
-
|
|
67
|
-
Notes
|
|
68
|
-
-----
|
|
69
|
-
This function uses maximum likelihood regression to estimate the relationship
|
|
70
|
-
between lagged and initial time courses, then applies the Wiener filter
|
|
71
|
-
to remove the lagged component from the initial signal.
|
|
72
|
-
|
|
73
|
-
Examples
|
|
74
|
-
--------
|
|
75
|
-
>>> import numpy as np
|
|
76
|
-
>>> lagtc = np.array([1.0, 2.0, 3.0, 4.0])
|
|
77
|
-
>>> inittc = np.array([2.0, 4.0, 6.0, 8.0])
|
|
78
|
-
>>> result = _procOneVoxelWiener(0, lagtc, inittc)
|
|
79
|
-
>>> print(result[0]) # voxel index
|
|
80
|
-
0
|
|
81
|
-
>>> print(result[4]) # fitting coefficient
|
|
82
|
-
2.0
|
|
83
|
-
"""
|
|
84
|
-
thefit, R2 = tide_fit.mlregress(lagtc, inittc)
|
|
85
|
-
fitcoff = rt_floatset(thefit[0, 1])
|
|
86
|
-
datatoremove = rt_floatset(fitcoff * lagtc)
|
|
87
|
-
return (
|
|
88
|
-
vox,
|
|
89
|
-
rt_floatset(thefit[0, 0]),
|
|
90
|
-
rt_floatset(np.sqrt(R2)),
|
|
91
|
-
rt_floatset(R2),
|
|
92
|
-
fitcoff,
|
|
93
|
-
rt_floatset(thefit[0, 1] / thefit[0, 0]),
|
|
94
|
-
datatoremove,
|
|
95
|
-
rt_floatset(inittc - datatoremove),
|
|
96
|
-
)
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
def wienerpass(
|
|
100
|
-
numspatiallocs: int,
|
|
101
|
-
fmri_data: NDArray,
|
|
102
|
-
threshval: float,
|
|
103
|
-
lagtc: NDArray,
|
|
104
|
-
optiondict: dict,
|
|
105
|
-
wienerdeconv: NDArray,
|
|
106
|
-
wpeak: NDArray,
|
|
107
|
-
resampref_y: NDArray,
|
|
108
|
-
rt_floatset: type = np.float64,
|
|
109
|
-
rt_floattype: str = "float64",
|
|
110
|
-
) -> int:
|
|
111
|
-
"""
|
|
112
|
-
Perform Wiener deconvolution on fMRI data voxels.
|
|
113
|
-
|
|
114
|
-
This function applies Wiener deconvolution to each voxel in the fMRI data
|
|
115
|
-
based on the provided lagged time course and threshold. It supports both
|
|
116
|
-
single-threaded and multi-threaded processing depending on the configuration
|
|
117
|
-
in `optiondict`.
|
|
118
|
-
|
|
119
|
-
Parameters
|
|
120
|
-
----------
|
|
121
|
-
numspatiallocs : int
|
|
122
|
-
Number of spatial locations (voxels) in the fMRI data.
|
|
123
|
-
fmri_data : numpy.ndarray
|
|
124
|
-
2D array of fMRI data with shape (numspatiallocs, timepoints).
|
|
125
|
-
threshval : float
|
|
126
|
-
Threshold value for masking voxels based on mean signal intensity.
|
|
127
|
-
lagtc : numpy.ndarray
|
|
128
|
-
2D array of lagged time courses with shape (numspatiallocs, timepoints).
|
|
129
|
-
optiondict : dict
|
|
130
|
-
Dictionary containing processing options including:
|
|
131
|
-
- 'nprocs': number of processors to use (default: 1)
|
|
132
|
-
- 'showprogressbar': whether to show progress bar (default: True)
|
|
133
|
-
- 'mp_chunksize': chunk size for multiprocessing (default: 10)
|
|
134
|
-
wienerdeconv : numpy.ndarray
|
|
135
|
-
Wiener deconvolution kernel or filter.
|
|
136
|
-
wpeak : numpy.ndarray
|
|
137
|
-
Peak values associated with the Wiener deconvolution.
|
|
138
|
-
resampref_y : numpy.ndarray
|
|
139
|
-
Resampled reference signal for filtering.
|
|
140
|
-
rt_floatset : type, optional
|
|
141
|
-
Data type for floating-point numbers, default is `np.float64`.
|
|
142
|
-
rt_floattype : str, optional
|
|
143
|
-
String representation of the floating-point data type, default is "float64".
|
|
144
|
-
|
|
145
|
-
Returns
|
|
146
|
-
-------
|
|
147
|
-
int
|
|
148
|
-
Total number of voxels processed.
|
|
149
|
-
|
|
150
|
-
Notes
|
|
151
|
-
-----
|
|
152
|
-
- Voxels are masked based on their mean signal intensity exceeding `threshval`.
|
|
153
|
-
- If `nprocs` > 1, multiprocessing is used to process voxels in parallel.
|
|
154
|
-
- The function modifies global variables such as `meanvalue`, `rvalue`, etc.,
|
|
155
|
-
which are assumed to be defined in the outer scope.
|
|
156
|
-
|
|
157
|
-
Examples
|
|
158
|
-
--------
|
|
159
|
-
>>> import numpy as np
|
|
160
|
-
>>> fmri_data = np.random.rand(100, 50)
|
|
161
|
-
>>> lagtc = np.random.rand(100, 50)
|
|
162
|
-
>>> optiondict = {'nprocs': 4, 'showprogressbar': True, 'mp_chunksize': 5}
|
|
163
|
-
>>> result = wienerpass(
|
|
164
|
-
... numspatiallocs=100,
|
|
165
|
-
... fmri_data=fmri_data,
|
|
166
|
-
... threshval=0.1,
|
|
167
|
-
... lagtc=lagtc,
|
|
168
|
-
... optiondict=optiondict,
|
|
169
|
-
... wienerdeconv=np.array([1, 2, 1]),
|
|
170
|
-
... wpeak=np.array([0.5]),
|
|
171
|
-
... resampref_y=np.array([1, 1, 1])
|
|
172
|
-
... )
|
|
173
|
-
>>> print(result)
|
|
174
|
-
100
|
|
175
|
-
"""
|
|
176
|
-
rt_floatset = (rt_floatset,)
|
|
177
|
-
rt_floattype = rt_floattype
|
|
178
|
-
inputshape = np.shape(fmri_data)
|
|
179
|
-
themask = np.where(np.mean(fmri_data, axis=1) > threshval, 1, 0)
|
|
180
|
-
if optiondict["nprocs"] > 1:
|
|
181
|
-
# define the consumer function here so it inherits most of the arguments
|
|
182
|
-
def Wiener_consumer(inQ, outQ):
|
|
183
|
-
while True:
|
|
184
|
-
try:
|
|
185
|
-
# get a new message
|
|
186
|
-
val = inQ.get()
|
|
187
|
-
|
|
188
|
-
# this is the 'TERM' signal
|
|
189
|
-
if val is None:
|
|
190
|
-
break
|
|
191
|
-
|
|
192
|
-
# process and send the data
|
|
193
|
-
outQ.put(
|
|
194
|
-
_procOneVoxelWiener(
|
|
195
|
-
val,
|
|
196
|
-
lagtc[val, :],
|
|
197
|
-
fmri_data[val, :],
|
|
198
|
-
rt_floatset=rt_floatset,
|
|
199
|
-
rt_floattype=rt_floattype,
|
|
200
|
-
)
|
|
201
|
-
)
|
|
202
|
-
|
|
203
|
-
except Exception as e:
|
|
204
|
-
print("error!", e)
|
|
205
|
-
break
|
|
206
|
-
|
|
207
|
-
data_out = tide_multiproc.run_multiproc(
|
|
208
|
-
Wiener_consumer,
|
|
209
|
-
inputshape,
|
|
210
|
-
themask,
|
|
211
|
-
nprocs=optiondict["nprocs"],
|
|
212
|
-
showprogressbar=True,
|
|
213
|
-
chunksize=optiondict["mp_chunksize"],
|
|
214
|
-
)
|
|
215
|
-
# unpack the data
|
|
216
|
-
volumetotal = 0
|
|
217
|
-
for voxel in data_out:
|
|
218
|
-
meanvalue[voxel[0]] = voxel[1]
|
|
219
|
-
rvalue[voxel[0]] = voxel[2]
|
|
220
|
-
r2value[voxel[0]] = voxel[3]
|
|
221
|
-
fitcoff[voxel[0]] = voxel[4]
|
|
222
|
-
fitNorm[voxel[0]] = voxel[5]
|
|
223
|
-
datatoremove[voxel[0], :] = voxel[6]
|
|
224
|
-
filtereddata[voxel[0], :] = voxel[7]
|
|
225
|
-
volumetotal += 1
|
|
226
|
-
data_out = []
|
|
227
|
-
else:
|
|
228
|
-
volumetotal = 0
|
|
229
|
-
for vox in tqdm(
|
|
230
|
-
range(0, numspatiallocs),
|
|
231
|
-
desc="Voxel",
|
|
232
|
-
unit="voxels",
|
|
233
|
-
disable=(not optiondict["showprogressbar"]),
|
|
234
|
-
):
|
|
235
|
-
inittc = fmri_data[vox, :].copy()
|
|
236
|
-
if np.mean(inittc) >= threshval:
|
|
237
|
-
(
|
|
238
|
-
dummy,
|
|
239
|
-
meanvalue[vox],
|
|
240
|
-
rvalue[vox],
|
|
241
|
-
r2value[vox],
|
|
242
|
-
fitcoff[vox],
|
|
243
|
-
fitNorm[vox],
|
|
244
|
-
datatoremove[vox],
|
|
245
|
-
filtereddata[vox],
|
|
246
|
-
) = _procOneVoxelWiener(
|
|
247
|
-
vox,
|
|
248
|
-
lagtc[vox, :],
|
|
249
|
-
inittc,
|
|
250
|
-
rt_floatset=rt_floatset,
|
|
251
|
-
t_floattype=rt_floattype,
|
|
252
|
-
)
|
|
253
|
-
volumetotal += 1
|
|
254
|
-
|
|
255
|
-
return volumetotal
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|