User Tools

Site Tools


neuroelf_changelog

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
neuroelf_changelog [2014/05/31 15:49] – Removed one column to simplify table layout jochenneuroelf_changelog [2014/06/18 16:26] (current) – Added changes through 6/17 jochen
Line 18: Line 18:
 ===== Changelog ===== ===== Changelog =====
  
-==== Release v0.9c  (04/29/2011 through ...) ====+==== Release v0.9d  (03/13/2014 through ...) ====
 ^ Date of change  ^ Type of change    ^ Changed Object      ^ Description                 ^ Comments  ^ ^ Date of change  ^ Type of change    ^ Changed Object      ^ Description                 ^ Comments  ^
 +| 06/17/2014      | simplification    | all MEX files       | instead of having MEX files compiled, all supported platforms now have their MEX files pre-compiled and part of the installation  |  |
 +| 06/17/2014      | update            | libSVM              | libSVM updated to version 3.18  |  |
 +| 06/17/2014      | simplification    | isemptycell.c       | all calls to ''isemptycell(CELL_INPUT)'' have been replaced with ''cellfun('isempty', CELL_INPUT)''  | the cellfun implementation is faster  |
 +| 06/17/2014      | new GUI feature   | neuroelf_gui.m      | several buttons and menu entries added to the surface-portion of the GUI, including intensity finding morph, inflation, and to-sphere morph, and also some keyboard shortcuts while in surface/scenery mode (f/w for face/wireframe display and t for transparency  |  |
 +| 06/16/2014      | enhancement (MEX) | mesh_morph.c        | additional features have been added to allow weighted forces per edge  |  |
 +| 06/16/2014      | bug fix (xff code) | ROOT::ClearObjects | instead of simply removing allocated memory from the global arrays, the function now correctly calls ''xffclear(HANDLES)''  | this allows all the clean-up routines to be called, such as removing objects from NeuroElf's GUI  |
 +| 06/15/2014      | enhancement       | SRF::Morph          | a progress bar object can now be used instead of the default (creating its own progress bar)  |  |
 +| 06/15/2014      | enhancement       | SRF::BackToVMR      | the method now correctly places the resulting data into a VMR object, and also initializes the UndoBuffer if necessary  |  |
 +| 06/14/2014      | new xff method    | SMP::ComputeFormula | added a corresponding method to compute formulas for SMPs  |  |
 +| 06/13/2014      | new xff method    | SRF::Area           | compute triangle area (incl. area per vertex)  |  |
 +| 06/13/2014      | new MEX function  | mesh_normals.c      | fast computation of normals per vertex  |  |
 +| 06/12/2014      | enhancement       | AFT::ClusterTable   | names of local maxima in the output VOI object are now clearly distinguishable from those of main clusters  |  |
 +| 06/11/2014      | new function      | mesh_morphm.m       | a M-file implementation that, in the simple force case, is faster than the MEX implementation due to multi-core support  |  |
 +| 06/10/2014      | new GUI feature   | neuroelf_gui.m      | a surface can be created from a cluster table representing the volume of the clusters  |  |
 +| 06/10/2014      | enhancement       | ne_extcluster.m     | cluster beta extract tables are now better formatted  |  |
 +| 06/09/2014      | enhancement       | SRF::CurvatureMap, SRF::DensityMap | the resulting SMP Maps now have a unique type so as to improve the thresholding  |  |
 +| 06/08/2014      | new GUI feature   | neuroelf_gui        | the main GUI now supports resizing (larger), and the size at closing time is stored, such that the GUI opens in the same configuration as before  |  |
 +| 06/08/2014      | enhancement (GUI) | ne_swapfullsize.m   | the swapping of full and reduced sizes is much faster now  |  |
 +| 06/08/2014      | new GUI feature   | ne_draw_histmarked.m | a histogram of marked voxels can be displayed to estimate the peaks for gray and white matter  |  |
 +| 06/07/2014      | enhancement       | ne_undock.m         | when undocking a slicing or rendering satellite, the global field ''ne_gcfg.tio.satSag'' or ''ne_gcfg.tio.satRnd'' will be set  |  |
 +| 06/07/2014      | bug fix (xff code) | AFT::RenderToTransimg | the negative tail could have its maximum cut off (invisible)  |  |
 +| 06/07/2014      | enhancement       | all UIs/figures     | now the HandleVisibility is set to '''callback''' on all figures to prevent accidental drawings inside them  |  |
 +| 06/06/2014      | bug fix (GUI)     | ne_btdown.m, ne_btmove.m | drawing is now prevented when clicking somewhere within the GUI that is not directly on top of the slice displays  |  |
 +| 06/06/2014      | enhancement       | @xff/subsasgn.m     | removed necessity to create a copy of large fields in the contents of xff objects by using a more direct sub-field assignment operation  | this only increases performance if the field is on the first level of fields, such as ''vmr.VMRData''  |
 +| 06/06/2014      | new GUI feature   | neuroelf_gui.tfg    | some default choices have been added to set the color lookup table for grayscale objects  |  |
 +| 06/06/2014      | enhancement       | AFT::SliceData3D    | major speed improvement when using regular (full-space, integer-coordinate) sampling for HDR (NII) objects  |  |
 +| 06/06/2014      | enhancement (MEX) | indexarraynb.c      | now the coordinate range-syntax also supports four-dimensional arrays  |  |
 +| 06/06/2014      | enhancement       | AFT::RenderToTransimg, ne_setslicepos.m | now also the VMRData16 component of VMR objects can be rendered and displayed in the GUI directly  |  |
 +| 06/05/2014      | enhancement (GUI) | ne_setslicepos.m, ne_draw.m | code has been moved into a new file and substantially expanded and cleaned, which now allows to fix-color as well as multiply-color areas  |  |
 +| 06/04/2014      | enhancement       | AFT::GetVolume, AFT::SampleBVBox, AFT::SampleTalBox | added support to retrieve alpha volume from objects that support them (e.g. Average-timecourse VTCs)  |  |
 +| 06/02/2014      | bug fix (MEX)     | cov_nd.c            | for lag 0, the function was supposed to run the covariance/correlation along the first dimension  |  |
 +| 05/29/2014      | enhancement       | ne_glmplotbetasup.m | when updating the beta plotter, a faster access for non-normalized data (based on template space coordinates) has been implemented  |  |
 +| 05/28/2014      | enhancement       | AFT::MapNames       | additional information about maps (type, D.F.) can be requested with an extended flag  |  |
 +| 05/22/2014      | new GUI feature   | neuroelf_gui        | a tool to average structural/anatomical datasets has been added, supporting spatial normalization and brain extraction  |  |
 +| 05/21/2014      | enhancement       | MDM::ComputeGLM, SDM::CalcBetas | instead of storing beta maps, single-regressor t-maps can now be computed to facilitate later RSA (representational similarity analysis) application  |  |
 +| 05/05/2014      | enhancement (GUI) | ne_cm_compute.m, GLM::RFX_tMap | contrast maps (weighted sums of beta maps) can now be smoothed "late" (immediately prior to computing random-effects statistics)  |  |
 +| 05/04/2014      | enhancement (GUI) | spm5_preprojobs     | an option has been added to import VTCs after realignment (using non-normalized, unsmoothed data for GLMs)  |  |
 +| 05/03/2014      | enhancement       | AFT::GetVolume, GLM::VOIBetas, MDM::ComputeGLM | RFX-GLM files can now contain non-normalized data alongside the normalization information (read, for instance, from the STRUCT_seg_sn.mat file)  |  |
 +| 05/01/2014      | enhancement       | importvtcfromanalyze | subject-space data can be imported and the SPM-based normalization parameters stored in the RunTimeVars property  |  |
 +| 04/17/2014      | enhancement       | SDM::CalcBetas      | an option to pool all but the single-trial in question to simple regressors has been added to improve the stability of single trial betas  |  |
 +| 04/10/2014      | enhancement       | neuroelf_updatebuilds.m | the function now keeps correctly track of build number and date  |  |
 +| 04/09/2014      | enhancement       | PRT::CreateSDM      | names for parametric regressors can now be provided, such that they occur properly in the regressor names and in the GLM output  | changes also made in MDM::SDMs  |
 +| 04/06/2014      | enhancement       | readeprimetextlog.m | now allows to return the result as a flat struct (instead of several sub-levels)  |  |
 +| 04/04/2014      | enhancement       | AFT::RenderToTransimg | added slice-ranges to calling syntax, so volumes can be "sliced" along the cardinal axes  |  |
 +| 03/27/2014      | bug fix (MEX)     | renderv3dxia.c      | RGB-volumes would not be correctly sliced (interpolation code error) in one of the three slicing directions  |  |
 +| 03/27/2014      | enhancement (GUI) | ne_smoothstats.m    | this function is now also directly available via the VMP menu  | prior to this change, the rendering dialog was necessary  |
 +| 03/20/2014      | enhancement (GUI) | neureolf_gui        | the rendering view can now be undocked, which allows arbitrary image size (incl. non-square)  |  |
 +| 03/13/2014      | new GUI feature   | ne_vmr_exportrgb.m  | allows to export a VMR into an RGB-volume Nifti file, which then allows colored drawing  |  |
 +| 03/13/2014      | pre-release       | NeuroElf            | pre-release of v0.9d        |  |
 +==== Release v0.9c  (04/29/2011 through 03/13/2014) ====
 +^ Date of change  ^ Type of change    ^ Changed Object      ^ Description                 ^ Comments  ^
 +| 03/12/2014      | enhancement       | AFT::GetVolume      | if a cluster-size threshold was enforced, the volume can be masked with the resulting binary volume  |  |
 +| 03/11/2014      | enhancement       | renderv3d.m, AFT::RenderToTransimg | added statistical overlay (inlay) to the 3D rendering engine, as well as RGB-volume rendering  |  |
 +| 03/10/2014      | enhancement (GUI) | neuroelf_gui        | now support for 2D/3D RGB drawing in the drawing mode  |  |
 +| 03/07/2014      | enhancement       | AFT::ClusterTable   | small-volume-correction (SVC) has been added to the cluster table method (only for VMPs that store the smoothness information)  | the SVC-corrected map is stored in a new Map in the VMP on which it is called  |
 +| 03/06/2014      | enhancement       | xffmethods.m        | methods are now stored as function handles, which speeds up calls to OBJ::Method code a bit further  |  |
 +| 03/05/2014      | enhancement       | renderv3d.m, AFT::RenderToTransimg | added the alpha blending option to the rendering enging  |  |
 +| 03/04/2014      | enhancement       | @xff/private/*.m    | replaced the (relatively costly) call to isxff(...) with a private function  | this change applies to all OBJ::Method calls  |
 +| 03/01/2014      | bug fix (xff code) | SDM::Concatenate   | a problem could occur if the confounds didn't contain a constant  |  | 
 +| 02/28/2014      | new GUI feature   | neuroelf_gui        | next to the slow slice-wise rendering, a new rendering feature (using Dirk-Jan Kroon's BSD-licensed code) is available to perform rendering in the main UI  |  |
 +| 02/26/2014      | new functions     | renderv3d.m         | implementation of Dirk-Jan Kroon's rendering code in NeuroElf  | in addition, some other functions have been created containing some auxiliary code  |
 +| 02/17/2014      | enhancement       | PRT::CreateSDM      | a warning is printed for every onset that is out of bounds (has no effect on regressors)  | this is useful to detect problems with PRT-generation scripts or wrong VTC assignment  |
 +| 01/31/2014      | enhancement       | dcm2nii.m           | added Chris Rorden's DICOM-2-Nifti conversion tool as an option  | this highly improves speed of the conversion process for one-file-per-slice DICOM sets  |
 +| 01/28/2014      | enhancement       | asciiread.m         | Unicode files are now autodetected (only works for reading files)  |  |
 +| 01/22/2014      | new GUI feature   | neuroelf_gui        | if exactly two statistical maps are overlayed, a special joining modus can be selected that shows overlap in the maximally distant-hue color  |  |
 +| 01/22/2014      | new function      | maxdistcol.m        | compute the maximally distant-hue color for a set of color pairs  |  |
 +| 01/14/2014      | enhancement       | VOI::ImportClusters | method now also supports compressed Nifti files as inputs  |  |
 +| 12/21/2013      | enhancement       | conjval.m, conjvalp.m | allows a new calling syntax, such that the conjunction is computed over a dimension in the input data, whereas the second argument **must** then signify the dimension  |  |
 +| 12/04/2013      | new xff method    | SRF::NeighborsNDegree | return the list of neighbors up to a certain degree  |  |
 +| 11/27/2013      | new GUI feature   | ne_render.m         | added capability to generate slice-update movies from rendering  |  |
 +| 11/14/2013      | enhancement       | smoothdata3.m       | also allows to use FFT and iFFT based smoothing (faster for large number of volumes)  |  |
 +| 11/14/2013      | enhancement       | @transio/transio.m  | if a file cannot be opened for reading due to locking (FILE IN USE), transio will re-try up to 5 times with increasing pauses with a total of 1.6 seconds waiting time max  | this was added to allow brief times of file-locking for other processes, as once a transio access is completed, the corresponding file pointer is closed again  |
 +| 11/14/2013      | enhancement       | alphasim.m          | instead of using re-scaled random data, now also allows to create (more accurate) t-maps from smoothed random maps  | this increases the accuracy, particularly for very low D.F. maps  |
 +| 11/07/2013      | enhancement       | MDM::ComputeGLM     | added option to write out residual after regression of known effects  |  |
 +| 11/06/2013      | enhancement       | importvtcfromanalyze | attempts to automatically load the realignment parameters found in the directory of the data into the RunTimeVars structure of the VTC  |  |
 +| 11/04/2013      | enhancement       | VMP::ImportSPMMaps  | if SPM-t maps are imported, the method also attempts to import the estimate of the smoothness of the residual (RPV.hdr/img)  |  |
 +| 10/24/2013      | bug fix (xff code) | AFT::SliceToTransimg | erroneously marked some VMR voxels as being colored  | due to minimal rounding errors in flexinterpn.c MEX, values that are 225 can come out as the next higher double precision value  |
 +| 09/16/2013      | enhancement (GUI) | ne_cm_compute.m     | the contrast manager now supports running multiple selected contrasts (instead of just either one or all)  |  |
 +| 09/05/2013      | enhancement       | MDM::ComputeGLM     | added automatic global signal extraction from colin-brain based GM/WM/CSF regions (conservative estimates)  | this feature is available for standard-bounding-box data with either 2 or 3mm resolution  |
 +| 08/14/2013      | enhancement       | SDM::CalcBetas      | now supports MTC+SSM combination as inputs  |  |
 +| 07/19/2013      | enhancement (GUI) | neuroelf_gui        | new option that allows to turn subject IDs off when VOI betas are extracted from clusters  |  |
 +| 07/07/2013      | enhancement       | MDM::VOITimeCourses | extended to allow POIs for MTC-based MDMs  |  |
 +| 07/06/2013      | enhancement       | GLM::VOIBetas       | now allows a list of coordinates to be passed in to extract values from a single VOI (or voxel)  |  |
 +| 07/06/2013      | bug fix (xff code) | MDM::ComputeGLM    | for MTC-based GLMs, an error occurred for RFX computations  |  |
 +| 05/20/2013      | new function      | vifactor.m          | compute the variance-inflation factor (VIF) for regressors of a design matrix  |  |
 +| 05/08/2013      | enhancement (GUI) | neuroelf_gui        | added compressed Nifti files (*.nii.gz) to the file selector for statistical maps  |  |
 +| 05/03/2013      | enhancement       | GLM::RFX_rMap, GLM::RFX_tMap | in addition to the estimated overall smoothness of the map now also stores the actual smoothness images  | this is as a preparatory step for small-volume-correction based on the actual number of resels in a particular volume  |
 +| 05/01/2013      | new GUI feature   | spm5_preprojobs     | added the option to brain-extract anatomical scans to improve coregistration with the functional data  |  |
 +| 04/30/2013      | new function      | spm5_extract_brain  | command line tool loading a pre-defined job and using SPM's segmentation to extract the brain from an anatomical dataset  |  |
 +| 04/25/2013      | enhancement       | AFT::Browse         | for VMP objects (and other objects with maps), the map number can now be given in the call, e.g. ''vmp.Browse(3);''  |  |
 +| 04/19/2013      | bug fix (xff code) | MDM::ConditionOnsets | this now takes the ''.tshift'' parameter correctly into account to allow (command-line based) shifting of onsets for methods such as MDM::VOICondAverage  |  |
 +| 04/18/2013      | enhancement       | @xff/subsref.m      | methods (but not fieldnames) can now be abbreviated if there is only one unique continuation  | example: ''obj.Bro;'' will call AFT::Browse  |
 +| 04/15/2013      | enhancement       | VTC::CreateMTC      | added sinc interpolation as option when creating MTCs  |  |
 +| 04/15/2013      | added feature     | MDM::VTCCondAverage | creates whole-brain onset-locked averages in arbitrary (virtual) TRs to visualize trial-/condition-based time courses for each location in the brain  | additional functionality is provided with VTC::AverageMovieVMP, VTC::AveragePeak, VTC::CombineAvgVTCs, and VTC::JoinAvgTCs  |
 +| 04/12/2013      | enhancement       | @xprogress          | figures and axes and now created with HandleVisibility set to '''off''' to prevent random axis plotting into them  |  |
 +| 04/03/2013      | enhancements      | PLP::MKDA           | several smaller enhancements to MKDA code (allowing to fix coordinates to integer values and also specify an inputmask  |  |
 +| 03/07/2013      | new function      | generatetdx.m       | generate a design matrix X based on tabular data with lookups  |  |
 +| 03/03/2013      | enhancement (MEX) | histcount.c         | now the input data can also be weighted to generate a weighted histogram  |  |
 +| 02/28/2013      | new functions     | modelcomp.m, modelcompse.m | computes an F-statistic (also for N-d data), comparing two models (full and reduced)  |  | 
 +| 02/22/2013      | enhancement       | fitrobustbisquare_img.m | added support for passing in preliminary/prior weights  |  |
 +| 02/20/2013      | added feature     | MDM::ComputeGLM     | now supports using Vince Calhoun's HRFboost code (implemented separately)  | also affected are MDM::SDMs and PRT::CreateSDM, also returning the basis function set  |
 +| 02/18/2013      | enhancement (format) | GLM.bff          | the AR1Pre and AR1Post fields have been renamed to ARPre and ARPost  | this is to reflect the fact that BVQX GLMs now support AR(2) models  |
 +| 02/18/2013      | new file format   | DTA.bff             | added support for STATA (file version 113 through 115) files  |  |
 +| 02/06/2013      | enhancement       | createfmr.m         | improved MOSAIC detection  |  |
 +| 02/02/2013      | enhancement       | glmtstat.m          | allows robust weights to be added to compute general t-statistics  |  |
 +| 02/02/2013      | enhancement (MEX) | cov_nd.c            | added support for auto-correlation (lag) and cov/corr computation along first dimensions  |  |
 +| 02/02/2013      | new xff method    | PLP::TDDLabelGM     | inquire Talairach Daemon Database labels for points  |  |
 +| 01/31/2013      | enhancement (format) | VMP.bff          | added support for FileVersion 1 (first-ever) VMPs  |  |
 +| 01/29/2013      | enhancement       | ac2vmp.m            | additional support for cluster files from Tor Wager's tools  |  |
 +| 01/28/2013      | new function      | dispp.m             | convenience/shortcut function calling first ''disp(...)'' and then ''pause(0.001);'' to force-refresh the output  |  |
 +| 01/26/2013      | enhancement       | PLP::Select         | a mask can now be specified as a second argument next to the selection condition, and points outside the mask are then removed  |  |
 +| 01/26/2013      | enhancement       | PLP::PlotOnSlice    | this method now returns the handles of points and texts so they can be manipulated later (e.g. re-sized or deleted)  |  |
 +| 01/08/2013      | enhancement       | VOI::CreateMSK      | instead of supplying a MSK object, also a HDR/NII object can be specified to create SPM-compatible masks  |  |
 +| 12/18/2012      | enhancement       | psctrans.m, ztrans.m | speed increase over previous implementation  |  |
 +| 12/14/2012      | enhancement       | AFT::GetVolume      | added support for accessing global maps from FFX-GLMs (with map number after all betas + XY maps)  | the order of additional maps is ''MultipleRegressionR'', ''MCorrSS'', ''TimeCourseMean'', and then all ''ARLag'' maps  |
 +| 12/13/2012      | enhancement       | GLM::FFX_tMap       | emulate BrainVoyager's AR(1) modeling when computing FFX-based t-Maps  | this is very preliminary and requires additional testing!  |
 +| 12/12/2012      | enhancement       | AFT::ExportNifti    | an additional argument, ''talorder'', can be given to force the major axes being in Talairach/MNI order and orientation  |  |
 +| 12/12/2012      | new function      | image_matchprops.m  | match several images on several properies (contrast, luminance, size, etc.)  |  |
 +| 12/06/2012      | enhancement       | GLM::RFX_conmaps    | added support for FFX-GLMs when calling the RFX_conmaps method  |  |
 +| 12/04/2012      | enhancement/fix   | splitclustercoords.m | now the distance to the central point is taken into account, improving the general splitting of clusters into more realistic sub-units  |  |
 +| 12/04/2012      | enhancement       | @xff/isfield.m      | xff objects now support the isfield function (as a struct) to check whether a field exists  |  |
 +| 11/27/2012      | enhancement/fix   | GLM::RemoveSubject  | prior to the fix, this method would remove all subjects starting with the same string (e.g. removing ''SUB10'' would also remove ''SUB105'' |  |
 +| 11/07/2012      | enhancement       | @xfigure/xfigure    | to improve performance, properties and methods that are used more frequently are tested for first in the switch/case construction  |  |
 +| 10/17/2012      | enhancement       | GLM::RFX_tMaps      | automatically filters out subjects for which a contrast map (weighted sum of beta maps) contains NaN values due to missing conditions  | the degrees of freedom will be adjusted correctly!  |
 +| 10/12/2012      | new GUI feature   | neuroelf_gui        | added NeuroSynth maps to the GUI's File menu  |  |
 +| 10/04/2012      | new xff method    | MTC::SmoothnessSMP  | compute statistical map showing the estimated smoothness of an (residual) MTC  |  |
 +| 09/27/2012      | enhancement       | HDR::InhomogeneityCorrect | now supports passing in an additional binary mask to prevent known voxels outside the brain to be taken into the estimate  |  |
 +| 09/19/2012      | new function      | importrfxglmfromafni.m | added function to generate a NeuroElf/BVQX compatible GLM file out of a series of AFNI HEAD/BRIK regression outputs  |  |
 +| 09/19/2012      | enhancement       | VMP::ImportSPMMaps  | now also supports importing from HEAD/BRIK files  |  |
 +| 09/14/2012      | enhancement       | VMP::PerformFDR     | this method now takes the estimated smoothness into account to compute the number of maximum resels for the required Bonferroni level  |  |
 +| 09/07/2012      | new GUI feature   | ne_glmbetaplot.m    | added checkbox to display general info (location, number of voxels, number of subjects) as title  |  |
 +| 08/15/2012      | enhancement       | alphasim.m          | reflecting the multiple linear regression capabilities of GLM::RFX_rMap, alphasim now supports combining several regressors into one model when computing false positive rates  |  |
 +| 07/30/2012      | enhancement (GUI) | fmriqasheet.m       | now allows to display noise estimate from individual slices when clicking into the time course  |  |
 +| 07/25/2012      | enhancement (GUI) | ne_vmp_createsmp.m  | if no surfaces are loaded, a set of default surfaces (LH+RH for the 40k vertices colin brains) are suggested to be loaded  |  |
 +| 07/15/2012      | enhancement (GUI) | neuroelf_gui        | the option to check fMRI quality now also allows to load existing output files of the fmriquality.m function  |  |
 +| 06/25/2012      | enhancement       | calcbetas.m         | added features: AR(1) and (pre-computed!) weights can be specified as arguments  |  |
 +| 05/08/2012      | new GUI feature   | ne_cm_compute.m     | now instead of comparing groups, maps for groups separately can be computed for visual inspection  |  |
 +| 05/01/2012      | enhancement       | acsvread.m          | numeric conversion now restricts the number of output values to prevent invalid numbers  |  |
 +| 05/01/2012      | added feature     | xff / bffio.m       | added support for gzip-compressed files  | for files with transio access (HDR/NII), the content will be temporarily unpacked into the system ''TEMP'' folder  |
 +| 04/26/2012      | added function    | hrfboost.m          | implementation of Vince Calhoun's HRFboost algorithm  |  |
 +| 04/17/2012      | bug fix (xff code) | VMP::ComputeFormula | if the ''.MapParameter'' field is set, it is also expanded if necessary to avoid invalid objects after saving  |  |
 +| 03/15/2012      | enhancement       | colorpicker.m       | the function now also returns a second output informing the calling function whether the dialog was canceled or not  | this helps to determine whether a UI update is needed  |
 +| 03/15/2012      | enhancement (GUI) | mkda.tfg            | added several options to the MKDA UI menu, incl. plot on slice and plot on surface  |  |
 +| 02/28/2012      | enhancement       | @xff/private/xffrequestfile.m | the generic file requestor upon using ''obj = xff('*.EXT');'' can now be used to select files with different extensions by placing them in parentheses, split by the pipe character  | example: ''stats = xff('*.(glm|vmp)');''  |
 +| 02/28/2012      | new xff method    | HDR::SliceTiming    | added slice-timing to NeuroElf directly  | this method does not use SPM code  |
 +| 02/24/2012      | new xff method    | AFT::TimeCourseCorr | compute slice-based cross-correlation matrix  | this can be used to guess for interleaving distance for slice-timing (as a confirmation)  |
 +| 02/03/2012      | new GUI feature   | ne_remote.m         | added remote-control support via HTTP/HTML connection  | this can also be used to serve VMP content to a web browser  |
 +| 01/24/2012      | enhancement (GUI) | ne_satresize.m      | slice-based satellites now can be resized with the underlying transio object being recreated in a higher resolution  |  |
 +| 01/24/2012      | enhancement (format) | TAL.tff          | FileVersion 2 with added fields is now supported  |  |
 +| 01/24/2012      | bug fix (xff code) | VOI::ApplyTrf      | if the VOI object contained more than one VOI field, the code would not correctly allocate the memory, resulting in slower performance  |  |
 +| 01/23/2012      | enhancement       | renamedicom.m       | added capability to first pack all DICOM files into a cell array to increase speed  | this requires fewer file-system calls when re-reading the directory after every rename operation  |
 +| 01/22/2012      | enhancement       | @transimg/*.m       | the transimg class now allows to add partial and transformed layers  |  |
 +| 01/13/2012      | enhancement (GUI) | ne_maskstatswithvmr.m | will use the transio-loading feature to ensure that GLMs with data on disk only will not be altered  |  |
 +| 01/13/2012      | new xff method    | AFT::LoadTransIOData | allows to read all transio objects into memory in any xff object  | this is particularly useful for GLM files, as the exact fieldnames need not be specified  |
 +| 01/05/2012      | enhancement       | MDM::ComputeGLM     | now also allows to use 4D NIftI (or series of 3D HDR/IMG) files as sources (instead of VTCs)  | this then uses adhoc-sampling of the NIftI data into VTC format  |
 +| 12/28/2011      | enhancement       | crawford_abnorm.m   | support data types other than double directly  |  |
 +| 12/09/2011      | enhancement       | GLM::SubjectPredictors | now also works for FFX-GLMs with SeparatePredictors set to "subject" (2)  |  |
 +| 12/08/2011      | enhancement       | GLM::JoinFFX        | now also allows to join FFX with various SeparatePredictors settings and has advanced support for transio files (using the multiple filenames access)  |  |
 +| 12/08/2011      | bug fix (xff code) | GLM::ConvertToVMP  | now also stores the TrfPlus content from the RunTimeVars  |  |
 +| 12/08/2011      | enhancement/fix   | AFT::SetScalingSlope | fixed some issues with HDR objects (RGB/RGBA data) as well as for VMRs (forcing a maximum of 225)  |  |
 +| 12/01/2011      | new xff method    | HDR::DynToVTC       | convert HDR dynamics (volumes) to VTC format  |  |
 | 11/25/2011      | new function      | mapestsmooth.m      | estimates smoothness of statistical map  | this function uses a high-resolution periodogram of 1-dimensional voxel trains to determine the underlying smoothness of a 3D image (and while the results must be used with caution and **as a lower boundary!**, they give a rough estimate of the underlying smoothness)  | | 11/25/2011      | new function      | mapestsmooth.m      | estimates smoothness of statistical map  | this function uses a high-resolution periodogram of 1-dimensional voxel trains to determine the underlying smoothness of a 3D image (and while the results must be used with caution and **as a lower boundary!**, they give a rough estimate of the underlying smoothness)  |
-| 11/20/2011      | new function      | resestsmooth.m      | estimates smoothness of residuals (used for alphasim)  | this function is based on some notes about a more robust smoothness estimation, found at [[http://www.fmrib.ox.ac.uk/analysis/techrep/tr00df1/tr00df1/node6.html|the FMRIB website]]  |+| 11/23/2011      | enhancement       | @xff/display.m      | will show a unique xffID for empty-filename (adhoc) objects if display is called on ROOT object  | in addition, this also works as a lookup for ROOT::Document 
 +| 11/23/2011      | enhancement       | custom_pwelch.m     | added support for multi-dimensional inputs  |  | 
 +| 11/21/2011      | new MEX function  | indexarraynb.c/.m   | same as indexarray but returns 0 for index-out-of-bounds values  |  | 
 +| 11/20/2011      | new function      | resestsmooth.m      | estimates smoothness of residuals (used for alphasim), also added to GLM::RFX_rMap and GLM::RFX_tMap  | this function is based on some notes about a more robust smoothness estimation, found at [[http://www.fmrib.ox.ac.uk/analysis/techrep/tr00df1/tr00df1/node6.html|the FMRIB website]]  |
 | 11/18/2011      | enhancement       | MDM::ComputeGLM     | this method now supports fixed-effects computations (with the RFX_GLM property set to 0)  | results have been compared to BrainVoyager QX's output and differences are based on the fact that Matlab's matrix inversion function (inv) produces slightly different values that BrainVoyager  | | 11/18/2011      | enhancement       | MDM::ComputeGLM     | this method now supports fixed-effects computations (with the RFX_GLM property set to 0)  | results have been compared to BrainVoyager QX's output and differences are based on the fact that Matlab's matrix inversion function (inv) produces slightly different values that BrainVoyager  |
-| 11/14/2011      | enhancement       | fitrobustbisquare_img.m | calls to the function can now also contain the inverse of the original covariance matrix of the design  | this change potentially speeds up repeated calls significantly  |+| 11/15/2011      | enhancement       | tempfilter.m        | added polynomial filters to the basis sets  | also added to MDM::ComputeGLM 
 +| 11/14/2011      | enhancement       | fitrobustbisquare_img.m | calls to the function can now also contain the inverse of the original covariance matrix of the design  | this change potentially speeds up repeated calls significantly and was added accordingly to SDM::CalcBetas 
 +| 11/10/2011      | new GUI feature   | ne_mkda_*.m, mkda.tfg | added MKDA to NeuroElf GUI with own dialog  |  | 
 +| 11/09/2011      | enhancement       | AFT::CopyObject     | method now allows to retain the filename with an additional argument  | otherwise the filename in the copy would be set to empty  | 
 +| 11/07/2011      | enhancement       | AFT::Layout         | method now also works for HDR objects  |
 | 10/21/2011      | enhancement       | neuroelf_makefiles.m | the function now also is able to produce SRF surfaces from the newly added subcortical segmentation file  |  | | 10/21/2011      | enhancement       | neuroelf_makefiles.m | the function now also is able to produce SRF surfaces from the newly added subcortical segmentation file  |  |
 | 10/21/2011      | new binary file   | colin/subcortical.nii  | a new file has been added that represents a 0.5mm-resolution segmentation of subcortical areas (which can be transformed into SRF surfaces using the adapted neuroelf_makefiles function)  |  | | 10/21/2011      | new binary file   | colin/subcortical.nii  | a new file has been added that represents a 0.5mm-resolution segmentation of subcortical areas (which can be transformed into SRF surfaces using the adapted neuroelf_makefiles function)  |  |
 +| 10/13/2011      | enhancements (GUI) | GLM beta plotter   | added keyboard shortcuts for many function switches (regression line, etc.)  |  |
 +| 10/02/2011      | new xff method    | AFT::Coregister     | interface to call SPM's coregistration for different types of objects  |  |
 +| 09/24/2011      | enhancement       | image_resize.m      | supports relative resizing with values between 0 and 1 for height  |  |
 +| 09/18/2011      | enhancement       | GLM.bff             | allow sparse design matrices (and iXX elements)  |  |
 +| 09/09/2011      | enhancement       | @transio/subsref.m  | added struct-notation to retrieve underlying fields without needing to struct() the object first  |  |
 +| 09/07/2011      | enhancement       | convones.m          | added support for multi-dimensional data (convolved in first dimension)  |  |
 +| 08/25/2011      | enhancement       | AFT::SaveRunTimeVars | any struct field (incl. non-singleton structs) may now contain a RunTimeVars sub-field associated with it (e.g. glm.Study.RunTimeVars), which will be saved into the ''.rtv'' file  |  |
 +| 08/25/2011      | new function      | catstruct.m         | concatenate struct contents even if fieldnames or order doesn't match  |  |
 +| 08/22/2011      | new GUI feature   | ne_openstatsfile.m  | allows to open HDR/NII files as stats map instead of anatomical/structural data  |  |
 +| 08/20/2011      | enhancement (GUI) | ne_importvmp.m      | allows to import maps into an existing VMP  |  |
 +| 08/11/2011      | enhancement       | AFT::Save, AFT::SaveAs | if ''OBJ.RunTimeVars.AutoSave'' is a 1x1 true logical value, then the AFT::SaveRunTimeVars method will be called as well automatically  |  |
 +| 07/28/2011      | renamed xff method | GLM::SingleStudy_tMap -> GLM::FFX_tMap |         | together with the rename, it now correctly implies that this method can be used on any FFX-GLM, and it was added to the contrast manager  |
 +| 07/26/2011      | new xff method    | AFT::MaskWithMSK    | applies a MSK object to various other objects  |  |
 +| 07/14/2011      | enhancement       | VMR::ApplyTRF       | allows to apply TRF to VMRData16 field (V16 data) as well  |  |
 +| 07/10/2011      | bug fix           | findfirst.m         | if the MEX code is not available, seeking from an index other than 1 resulted in the wrong target index  |  |
 +| 06/30/2011      | bug fix (xff code) | GLM::VOIBetas      | fixed the code for allowing index repetition for transio-based beta maps  |  |
 +| 06/21/2011      | enhancement       | VTC::CreateGLM      | added robust regression to single-VTC regression  |  |
 +| 06/19/2011      | new function      | readeprimetextlog.m | reads an EPrime text-based log file as a struct  |  |
 | 06/13/2011      | new function      | recordkeys.m        | this function can be used to record key strokes with time stamps  | can be used alongside any other window (e.g. movie player) to record ratings  | | 06/13/2011      | new function      | recordkeys.m        | this function can be used to record key strokes with time stamps  | can be used alongside any other window (e.g. movie player) to record ratings  |
 | 06/09/2011      | enhancement (GUI) | ne_glmplotbetas.m   | the beta plotter now also allows to rank-transform the data for scatter plotting  | this was added to be compatible and consistent with maps that were created using rank-transformed contrast/covariate data  | | 06/09/2011      | enhancement (GUI) | ne_glmplotbetas.m   | the beta plotter now also allows to rank-transform the data for scatter plotting  | this was added to be compatible and consistent with maps that were created using rank-transformed contrast/covariate data  |
Line 47: Line 233:
 | 05/30/2011      | enhancement       | neuroelf_gui, AFT::SetColors, etc. | the GUI now supports visualizing maps stored in AVA (Anova result) files  |  | | 05/30/2011      | enhancement       | neuroelf_gui, AFT::SetColors, etc. | the GUI now supports visualizing maps stored in AVA (Anova result) files  |  |
 | 05/29/2011      | enhancement       | @xff/xff.m          | as an enhancement to the xff class, syntax such as ''h = xff('path/pat*.img');'' will load the images (or NIftI files) matching the pattern  | for this syntax to work, a folder name **must** be given!  | | 05/29/2011      | enhancement       | @xff/xff.m          | as an enhancement to the xff class, syntax such as ''h = xff('path/pat*.img');'' will load the images (or NIftI files) matching the pattern  | for this syntax to work, a folder name **must** be given!  |
-| 05/28/2011      | new method        | PLP::ClusterColorSize | sets a new size and color for each point  | color and size depend on how many and how close points from other studies are, so that a natural clustering becomes visible (which is an informal way of looking at convergence of coordinates across studies)  |+| 05/28/2011      | new xff method    | PLP::ClusterColorSize | sets a new size and color for each point  | color and size depend on how many and how close points from other studies are, so that a natural clustering becomes visible (which is an informal way of looking at convergence of coordinates across studies)  |
 | 05/27/2011      | bug fix           | AFT::SetScalingWindow | the histogram now correctly reflects the scaled data  |  | | 05/27/2011      | bug fix           | AFT::SetScalingWindow | the histogram now correctly reflects the scaled data  |  |
-| 05/27/2011      | enhancement       | @xff/xff.m          | loading multiple headers (a cell array with *.hdr / *.img / *.nii) files is now supported and creates a HDR/NII object with all data files concatenated in the 4th dimension using the new transio feature  |  |+| 05/27/2011      | enhancement       | @xff/xff.m          | loading multiple headers (a cell array with *.hdr / *.img / *.nii) files is now supported and creates a HDR/NII object with all data files concatenated in the 4th dimension using the new transio feature some additional methods have been updated to allow this (e.g. MDM::CheckFiles)  |
 | 05/26/2011      | new feature       | transio/*.m         | transio objects can now be created from multiple files (which must be concatenated in the last dimension)  | this allows to access several files (e.g. *.img files of a time series) through one variable  | | 05/26/2011      | new feature       | transio/*.m         | transio objects can now be created from multiple files (which must be concatenated in the last dimension)  | this allows to access several files (e.g. *.img files of a time series) through one variable  |
 | 05/24/2011      | bug fix           | sdist.m             | in case the input was invalid, the '''norminv''' sub-function could produce an error  | this was fixed, and invalid input values now properly return a NaN output  | | 05/24/2011      | bug fix           | sdist.m             | in case the input was invalid, the '''norminv''' sub-function could produce an error  | this was fixed, and invalid input values now properly return a NaN output  |
Line 61: Line 247:
 | 05/19/2011      | enhancement       | xff/subsref         | the DefaultProperty of the file formats now can be either a single field name or a 2-item list  | this allows to create more complex DefaultProperty constructs, as used in the updated PLP object (where plp.Name references the data column in plp.Points with name '''Name'''  | | 05/19/2011      | enhancement       | xff/subsref         | the DefaultProperty of the file formats now can be either a single field name or a 2-item list  | this allows to create more complex DefaultProperty constructs, as used in the updated PLP object (where plp.Name references the data column in plp.Points with name '''Name'''  |
 | 05/19/2011      | new xff method    | PLP::AddColumn      | adds a column of values to an existing PLP object  | if the column name already exists, the data is replaced  | | 05/19/2011      | new xff method    | PLP::AddColumn      | adds a column of values to an existing PLP object  | if the column name already exists, the data is replaced  |
 +| 05/19/2011      | new function      | histnd.m            | compute histogram over N-dim data in one dimension  |  |
 | 05/17/2011      | enhancement/fix   | ne_mdmvoicondavg.m, MDM::VOICondAverage | this functionality would have problems with both a single value baseline window (e.g. only the onset time) as well as if only one onset per condition was given (single-trial analysis)  |  | | 05/17/2011      | enhancement/fix   | ne_mdmvoicondavg.m, MDM::VOICondAverage | this functionality would have problems with both a single value baseline window (e.g. only the onset time) as well as if only one onset per condition was given (single-trial analysis)  |  |
 | 05/15/2011      | new feature (GUI) | ne_loadcluster.m    | now also supports loading the files supported by VOI::ImportCluster  |  | | 05/15/2011      | new feature (GUI) | ne_loadcluster.m    | now also supports loading the files supported by VOI::ImportCluster  |  |
Line 69: Line 256:
 | 05/13/2011      | enhancement (GUI) | ne_cm_updateuis.m   | now the contrast manager updates other UIs (beta plotter for now) when the configuration changes  | before the beta plotter needed to be re-opened to reflect the changes  | | 05/13/2011      | enhancement (GUI) | ne_cm_updateuis.m   | now the contrast manager updates other UIs (beta plotter for now) when the configuration changes  | before the beta plotter needed to be re-opened to reflect the changes  |
 | 05/12/2011      | new feature (GUI) | ne_markclusters.m   | clusters can now be marked as an Underlay object (of type RGB HDR)  | this allows to show RGB-based ROIs (comparable to BrainVoyager's functionality) on top of the actual gray-scale data; to invoke this feature, the resolution value has to be entered as a negative number, e.g. ''-3'' for a 3mm resolution but using the new RGB overlay  | | 05/12/2011      | new feature (GUI) | ne_markclusters.m   | clusters can now be marked as an Underlay object (of type RGB HDR)  | this allows to show RGB-based ROIs (comparable to BrainVoyager's functionality) on top of the actual gray-scale data; to invoke this feature, the resolution value has to be entered as a negative number, e.g. ''-3'' for a 3mm resolution but using the new RGB overlay  |
 +| 05/11/2011      | new MEX function  | psetdists.c/.m      | compute distances between a set of points  |  |
 | 05/11/2011      | new feature (GUI) | ne_setglobaltrf.m   | the global transformation parameters (display translation, rotation, and scaling), as well as the sliced object's transformation parameters can now be set via using modifier keys and hold-dragging the mouse  | this works in parallel with the surface rendering transformation adaptation (SHIFT -> translation, ALT -> zoom, SHIFT + ALT -> rotation; add CTRL for sliced object's transformation); the sliced object's transformation can be reset to the identity matrix by pressing CTRL and '''r'''  | | 05/11/2011      | new feature (GUI) | ne_setglobaltrf.m   | the global transformation parameters (display translation, rotation, and scaling), as well as the sliced object's transformation parameters can now be set via using modifier keys and hold-dragging the mouse  | this works in parallel with the surface rendering transformation adaptation (SHIFT -> translation, ALT -> zoom, SHIFT + ALT -> rotation; add CTRL for sliced object's transformation); the sliced object's transformation can be reset to the identity matrix by pressing CTRL and '''r'''  |
 | 05/11/2011      | new xff method    | AFT::VOITimeCourse  | the code of VTC::VOITimeCourse has been overhauled and adapted so that it now also works with (3D and) 4D [[xff - HDR format|Analyze/NIftI]] and multi-volume [[xff - HEAD format|AFNI BRIK/HEAD]] files  | the advantage is that this allows to apply VOI coordinates directly to NII (and HEAD) objects; for compatibility reasons, the original method has been renamed to [[vtc.VOITimeCourseOrig|VTC::VOITimeCourseOrig]]  | | 05/11/2011      | new xff method    | AFT::VOITimeCourse  | the code of VTC::VOITimeCourse has been overhauled and adapted so that it now also works with (3D and) 4D [[xff - HDR format|Analyze/NIftI]] and multi-volume [[xff - HEAD format|AFNI BRIK/HEAD]] files  | the advantage is that this allows to apply VOI coordinates directly to NII (and HEAD) objects; for compatibility reasons, the original method has been renamed to [[vtc.VOITimeCourseOrig|VTC::VOITimeCourseOrig]]  |
Line 82: Line 270:
 | 05/06/2011      | enhancement (GUI) | neuroelf_gui        | the way cluster tables are sorted is now configurable via the **File -> Options -> Clustertable** sub-menu  |  | | 05/06/2011      | enhancement (GUI) | neuroelf_gui        | the way cluster tables are sorted is now configurable via the **File -> Options -> Clustertable** sub-menu  |  |
 | 05/06/2011      | enhancement       | clustervol.m, AFT::ClusterTable  | cluster table creation now supports optionally printing sub-cluster sizes (not the default)  | this change was introduced to make cluster tables more adhering to the community standard in publishing  | | 05/06/2011      | enhancement       | clustervol.m, AFT::ClusterTable  | cluster table creation now supports optionally printing sub-cluster sizes (not the default)  | this change was introduced to make cluster tables more adhering to the community standard in publishing  |
 +| 05/02/2011      | enhancement       | @xfigure/xfigure.m  | autodetect font sizes on first instantiation  |  |
 | 04/30/2011++    | compatibility     | *.m, *.bff, *.tff   | initial compatibility with Octave (v3.4.0) was reached  | major changes in files: * the ''try, TRYBLOCK; catch eo, CATCHBLOCK; end'' syntax was altered (in all files using try/catch) allowing use of this construction in Octave  * some residual problems were removed (e.g. characters following the continuation operator, ...; stray short-circuit comparison operators were converted; where necessary, checks for whether the underlying system is Matlab or Octave were put in place; work-arounds for some minor bugs in Octave were added) | | 04/30/2011++    | compatibility     | *.m, *.bff, *.tff   | initial compatibility with Octave (v3.4.0) was reached  | major changes in files: * the ''try, TRYBLOCK; catch eo, CATCHBLOCK; end'' syntax was altered (in all files using try/catch) allowing use of this construction in Octave  * some residual problems were removed (e.g. characters following the continuation operator, ...; stray short-circuit comparison operators were converted; where necessary, checks for whether the underlying system is Matlab or Octave were put in place; work-arounds for some minor bugs in Octave were added) |
  
neuroelf_changelog.1401551394.txt.gz · Last modified: 2014/05/31 15:49 by jochen