Skip to content

Commit 4116f97

Browse files
committed
update README
1 parent 4b0ecd2 commit 4116f97

File tree

1 file changed

+13
-16
lines changed

1 file changed

+13
-16
lines changed

README.md

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# ImageArray
22

3-
**ImageArray** provides a unified, memory‑efficient way to work with pyramidal and non‑pyramidal images using the `DelayedArray` infrastructure.
4-
It stores large images in memory or on disk (**HDF5** or **Zarr**), exposes them through an array‑like API, and applies common image operations
5-
consistently across all pyramid levels
3+
**ImageArray** provides a unified, memory‑efficient way to work with pyramidal and non‑pyramidal images using the `DelayedArray` package in Bioconductor.
4+
It stores large images in memory or on disk (as **HDF5** or **Zarr**), allows array‑like manipulations, and applies common image operations
5+
consistently across all pyramid levels without loading arrays to memory.
66

7-
- **Pyramids:** multi‑resolution stacks of, e.g., from Zarr or OME‑TIFF images as a single object.
7+
- **Pyramids:** multi‑resolution stacks of, e.g., from HDF5, Zarr or OME‑TIFF (Bio-formats) images as a single object.
88
- **Interoperability:** plays nicely with image classes across R/Bioconductor, such as **EBImage** or **magick**.
99
- **Delayed operations:** rotate/flip/flop/negate, cropping and slicing – performed lazily (without loading to memory) via `DelayedArray`.
1010
- **Backends:** HDF5 and Zarr on‑disk storage using **HDF5Array** and **Rarr** packages.
@@ -34,8 +34,8 @@ BiocManager::install("ImageArray")
3434

3535
**ImageArray** allows saving images to either HDF5 (HDF5ImageArray) or
3636
Zarr (ZarrImageArray) where you can define the number of layers of the
37-
pyramids (i.e. number of downscaled images) and the path to the on-disk h5
38-
or zarr store.
37+
pyramids (i.e. number of downscaled images) and the path to the on-disk h5
38+
file or zarr store.
3939

4040
```r
4141
library(ImageArray)
@@ -60,7 +60,7 @@ Level 1 (768,512)
6060
Level 2 (384,256)
6161
```
6262

63-
Each level of a pyramid can be rasterized at any time.
63+
Each level of a pyramid can be rasterized at any time, and thus plotted.
6464

6565
```r
6666
imgraster <- as.raster(imgarray, level = 2))
@@ -71,9 +71,10 @@ plot(imgraster)
7171

7272
<br>
7373

74-
By using the `max.pixel.size`, we can request `r Biocpkg("ImageArray")` to
74+
By using the `max.pixel.size`, we can request **ImageArray** to
7575
return a pyramid level whose both width (`X`) and height (`Y`) are lower than
76-
some pixel size, e.g. 400.
76+
some pixel size, e.g. 400. Hence, **ImageArray** can be used by other
77+
implementations to plot images in a memory-efficient way.
7778

7879
```{r visualize_read2}
7980
# visualize
@@ -85,7 +86,7 @@ dim(bfa.raster)
8586
(256,384)
8687
```
8788

88-
A number of memory-efficient (delayed or lazy) operations are available
89+
A number of other memory-efficient (delayed or lazy) operations are available
8990
for pyramid images, including rotation (0, 90, 180, 270), horizontal or
9091
vertical flipping and negation.
9192

@@ -100,9 +101,7 @@ Level 1 (512,768)
100101
Level 2 (256,384)
101102
```
102103

103-
<br>
104-
105-
We can crop or slice images via lazy/delayed indexing again with loading the
104+
We can crop or slice images via lazy/delayed indexing again without loading the
106105
image to the memory.
107106

108107
```r
@@ -117,10 +116,8 @@ Level 1 (101,101)
117116
Level 2 (51,51)
118117
```
119118

120-
<br>
121-
122119
You can also use an existing **OME-TIFF** (or any Bioformats image) to
123-
create an ImageArray object which we use **RBioFormats** package too.
120+
create an ImageArray object which we use **RBioFormats** package.
124121

125122
```r
126123
library(RBioFormats)

0 commit comments

Comments
 (0)