Back to the main page.

Bug 1151 - test_ft_preprocessing fails on assert, when k=9

Status CLOSED FIXED
Reported 2011-11-14 11:36:00 +0100
Modified 2019-08-10 12:03:31 +0200
Product: FieldTrip
Component: preproc
Version: unspecified
Hardware: PC
Operating System: Windows
Importance: P1 major
Assigned to: Diego Lozano Soldevilla
URL:
Tags:
Depends on:
Blocks: 1778
See also:

Johanna - 2011-11-14 11:36:57 +0100

I thought I would try test_ft_preprocessing on my changes to filter settings before committing, but ran into this crash.


Johanna - 2011-11-14 14:50:02 +0100

never mind! It was an interaction with a nutmeg-specific version of readCTFds that I had in my path, that caused the difference, for the CTF151 dataset. However, now it crashes for me at k=17, on Yokogawa160 data.


Boris Reuderink - 2011-11-17 10:46:43 +0100

Changed the status of bugs without a specific owner to UNCONFIRMED. I'll try to replicate these bugs (potentially involving the submitter), and change confirmed bugs to NEW. Boris


Boris Reuderink - 2011-11-17 11:53:27 +0100

I just ran test_ft_preprocessing, and I also get an error on: ans = origdir: '/home/common/matlab/fieldtrip/data/test/' type: 'meg/' datatype: 'yokogawa160' filename: 'Continuous1.con' dataformat: [] ??? Error using ==> test_ft_preprocessing at 26 Assertion failed. The assertion tests that the data is equal to a previously saved result.


Diego Lozano Soldevilla - 2013-02-14 16:23:07 +0100

test_ft_preprocessing script if giving errors in cases k=[8 11 13 14]; bti248grad, ctf64, itab28, itab28_old, respectively. The reason is because a mismatch between chanpos and chanori inside grad isequalwithequalnans(data.grad.chanori, datanew2.grad.chanori) ans = 0 isequalwithequalnans(data.grad.chanpos, datanew2.grad.chanpos) ans =


Diego Lozano Soldevilla - 2013-02-14 16:28:55 +0100

Created attachment 424 figure plot_sens The reason is because a mismatch between chanpos and chanori inside grad when the test script compares the ft_preprocessing output and the stored data. I could update the stored data but I want to make sure that the new chanpos and chanori from these specific datasets don't overlap with other bug. Using ft_plot_sens work for both: stored data and latest output (see the figure attached). The only difference seems to be that in the latest output the entire helmet coordinates has been scaled. Does anyone knows what's FT version that these changes where made?


Diego Lozano Soldevilla - 2013-03-13 10:58:43 +0100

(In reply to comment #5) I measured the chanpos and chanori difference between the data saved in the disk and the new preprocessed data for bti248grad: a=(datanew.grad.chanpos(1:248,:)-data.grad.chanpos(1:248,:)) mean(a,1) ans = 0.0030 -0.0005 -0.0088 std(a,1) ans = 0.0134 0.0169 0.0086 b=(datanew.grad.chanori(1:248,:)-data.grad.chanori(1:248,:)) mean(b,1) ans = -0.1206 0.0192 0.3504 std(b,1) ans = 0.5348 0.6772 0.3431 If the grand units are meters, chanori differs quite a lot. However, as discussed in the previous FTmeeting, the helmets in all affected datasets preserve the same proportions although shrank. For the itab datasets I got large differences, for example: K>> (datanew.grad.chanpos-data.grad.chanpos) ans = 0 0 0 12.5230 -11.9801 -35.8286 14.1825 -4.3026 -36.9376 23.8834 -9.5493 -30.3716 6.0837 -10.8447 -37.8077 7.7313 -3.2222 -38.9087 13.0578 2.4106 -37.5196 25.9811 0.6827 -30.1423 28.6417 -6.0179 -26.9718 26.9941 -13.6404 -25.8708 14.6968 -20.7648 -30.6083 38.3769 -27.6301 -21.2330 40.2589 -43.2502 -16.1581 -8.3970 73.9419 25.2485 5.1472 69.5559 33.6507 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Regarding CTF64 I got this error that I never got before: Error using edit (line 66) Cannot edit the directory '/home/common/matlab/fieldtrip/data/test/original/meg/ctf64/Wat123r1raw.ds'. Error in test_ft_preprocessing>preprocessing10trials (line 66) hdr = edit(cfg.dataset, 'headerformat', dataset.dataformat); Error in test_ft_preprocessing (line 20) datanew = preprocessing10trials(datainfo(k), writeflag, version); any clue why? what should we do?


Diego Lozano Soldevilla - 2013-03-13 15:12:40 +0100

(In reply to comment #6) The reason of the difference between the new grad and the stored data was the difference convention about the channel position on the bti248grad, ctf64, itab28, itab28_old meg systems. In those ones chanpos was defined as the average of the coil position. Updating old stored datasets will solve the problem


Diego Lozano Soldevilla - 2013-03-19 15:46:55 +0100

(In reply to comment #7) test_ft_preprocessing is still failing because in some disk stored datasets the grad.balance was not incorporated (see r7499 ft_datatype_sens.m). The affected datasets are itab153, bti248, neuromag122, neuromag306, yokogawa160, k=[7 12 15 16 17]. Updating the disk stored datasets will solve the problems


Diego Lozano Soldevilla - 2013-03-19 16:02:00 +0100

Dataset bti148 also had same problem in the balance. I run the test_ft_preprocessing for all datasets and it went fine


Robert Oostenveld - 2019-08-10 12:03:31 +0200

This closes a whole series of bugs that have been resolved (either FIXED/WONTFIX/INVALID) for quite some time. If you disagree, please file a new issue describing the issue on https://github.com/fieldtrip/fieldtrip/issues.