ieegio 0.1.2
- Added
as_ieegio_roi to mark an image volume, surface,
point cloud, or streamlines object as a region of interest, recording
the selection criteria (intensity bounds, threshold expressions, arc
length filters) rather than applying them right away
- Added
resolve_roi_as to carry out those criteria and
convert the region into a chosen representation (volume, point cloud,
surface, or streamlines), always in world RAS coordinates
so two resolved regions can be compared directly
- Added
detect_roi_overlap to test whether two regions
overlap, with distance tolerance, an optional interior test for closed
surfaces, and per-unit hit ratios written back onto the second
region
- Added
io_read_niml and niml_find to read
AFNI and SUMA NIML datasets,
supporting every storage form (plain text, binary and
base64 in either byte order, optionally gzip
compressed) and every column type, including String,
Line, complex, rgb, and
rgba
- Added
niml_as_surface and an
as_ieegio_surface method for NIML objects;
read_surface now recognizes '.niml.dset' files
and decides between annotations and measurements from the dataset
itself
read_colormap now reads the AFNI label
table from NIML datasets that store it in binary form
- The
HDF5 back-end is now resolved at run time, choosing
among readNSx, h5lite, hdf5r, and
h5py; hdf5r is no longer required and has been
removed from Suggests
- Fixed the
h5py back-end returning 32-bit integer
datasets as double, which turned the missing value sentinel into a large
negative number
- Added a
sanitize argument to
read_streamlines and as_ieegio_streamlines
that discards tracts which are not lines and points with missing
coordinates; set it to FALSE to read a file exactly as
written
- Fixed streamline scalar and property naming when the scalars are
stored as a matrix, and gave automatically generated property names
their own prefix
- Fixed
as_ieegio_volume choosing an integer data type
for arrays that contain Inf
- Added
NIML sample datasets and std.141
inflated surfaces to example data
ieegio 0.1.1
- Added
io_read_vtk_polys and
io_write_vtk_polys to read and write surface meshes stored
in VTK polygon formats (legacy .vtk,
XML-based .vtp, .pvtp,
.vtu, and HDF5-based .vtpb),
including vertex colors and vertex-wise measurements;
read_surface and write_surface now recognize
these formats
- Added read and write functions for color-map files
- Fixed a graphics bug that causes
par not reset after
showing surfaces
- Added a helper function to convert volume atlases to surface with
proper smoothing
- Added
YBA696 atlas to example data
ieegio 0.1.0
- Added
burn_curve to burn electrode trajectories
(e.g. depth/sEEG leads or DBS shafts) into a
volume given start and end positions in image native RAS
coordinates, with configurable radius and per-segment colors
- Added a
merge mode to burn_curve so newly
burned trajectories can be composted onto an existing volume instead of
overwriting it
- Added a base
R graphics plot method for
ieegio_surface objects as an alternative to the default
r3js rendering, useful for static figures and environments
without WebGL
- Fixed
get_channel so channels can be looked up by label
(in addition to index) for BCI2000 and
BrainVision formats
- Fixed
mat_to_quaternion to correctly handle handedness
changes, aligning the quaternion sign convention with
FreeSurfer
- Code style and lint cleanup across the package; rebuilt
documentation
ieegio 0.0.9
- Fixed
CRAN check issues
- Added volume and surface related functions as
MCP tools
(can be loaded via package ravepipeline and
ellmer)
ieegio 0.0.8
- Added
new_space and as_ieegio_transform to
define coordinate spaces and chain transforms
- Added
io_read_ants_transform to read ANTs
affine and displacement field transforms
- Added
io_read_flirt_transform to read
FSL FLIRT affine transforms
- Added
volume_to_surface and
surface_to_surface for mapping data between volumes and
surfaces
- Fixed point transform ambiguity when chaining transforms with
different interpretations
- Improved
plot.ieegio_volume intensity windowing using
percentile-based display range (2-98 percentiles), following conventions
from FSLeyes, AFNI, MRIcroGL, and
SPM
- Auto-detection for
CT vs MRI data:
excludes zeros by default but includes them when lower percentile is
below -500 (indicating CT with -1024 background)
- Statistical overlay detection: applies symmetric range for
z-score-like data
- Values outside display range are now clamped to boundary colors
instead of rendering as transparent
ieegio 0.0.7
- Added
as_nifti_header as a workaround when
RNifti is missing (not installed or running in
WebAssembly)
- Added automatic checks when pushing commits the repository to
Github
ieegio 0.0.6
- Added
write_edf to save signals as continuous
EDF format
- Added
YBA atlas (690 segments) to example data
- Improved
HDF5 checking error messages
ieegio 0.0.5
- Added
LazyFST class
- Fixed a bug where
gzipped is ignored in
io_write_nii.array
LazyH5 fall back to alternatives when HDF5
is not supported in wasm
- Plotting surfaces use
r3js by default
- Fixed
BrainVision annotation bugs
- Supported writing to
STL format (to support importing
to BrainLab)
- Added supports to read streamlines data (
trk,
tck, tt, vtk)
- Writing to
freesurfer surfaces also appends orientation
information at the end.
ieegio 0.0.4
- Added merge support for both volume and surface objects; for surface
objects, users can choose whether to merge the objects in model or world
space
- Added dependency
ravetools to help speed up sample
volumes using C++
- Fixed missing transform issue in writing to
GIfTI
format
- Fixed
write_surface not working when writing to
FreeSurfer measurement (curvature) format
- Fixed a typo that caused setting volume data resulting in
errors
as_ieegio_surface does not require vertices
ieegio 0.0.3
- Cleaned
h5py loader
mat_to_quaternion always returns non-negative
w now
- Added generics
dim and length to volume
object
- Fixed annotation issues in
EDF format
- Time selection is double-sided using greater equal and less equal
signs
- Added more sample data
- Supports colored (
RGB[A]) formats
- Fixed color intensity when
cal_min and
cal_max is set
- Using
r3js for visualizing surfaces
- Added
resample_volume to sample images (currently only
nearest neighbor)
- Added
burn_volume to burn contacts (positions given in
the image native RAS coordinate) with any given colors
- Fixed
io_h5_names returning wrong names when using with
h5py
- Exported internal class
LazyH5 for down-stream
packages
- Added
as_ieegio_volume and
as_ieegio_surface to enclose volume or surface data
- Added a flag to disable using
Python
ieegio 0.0.2
- Added
h5py as an alternative back-end support
- Fixed a bug where images are not loaded correctly due to image
format being ignored
- Fixed
Torig (index to tkr coordinate
transform) issue
- Fixed a global variable issue
- Fixed a bug where file name is not respected
ieegio 0.0.1