Skip to content

🧪 ImageList

An ImageList is a list of different images. It can hold different sizes of Images. The channel of all images is the same.

To create an ImageList call one of the following static methods:

Method Description
ImageList.fromImages Create an ImageList from a list of Images.
ImageList.fromFiles Create an ImageList from a directory or a list of files.
Stub code in ImageList.sdsstub
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
class ImageList {
    /**
     * The number of images in this image list.
     */
    @PythonName("image_count") attr imageCount: Int
    /**
     * A list of all widths in this image list.
     */
    attr widths: List<Int>
    /**
     * A list of all heights in this image list.
     */
    attr heights: List<Int>
    /**
     * The channel of all images.
     */
    attr channel: Int
    /**
     * The sizes of all images.
     */
    attr sizes: List<ImageSize>
    /**
     * The number of different sizes of images in this image list.
     */
    @PythonName("size_count") attr sizeCount: Int

    /**
     * Create an ImageList from a list of images.
     *
     * @param images the list of images
     *
     * @result imageList the image list
     */
    @Pure
    @PythonName("from_images")
    static fun fromImages(
        images: List<Image>
    ) -> imageList: ImageList

    /**
     * Create an ImageList from a directory or a list of files.
     *
     * If you provide a path to a directory the images will be sorted alphabetically while inner directories will be sorted after image files.
     *
     * @param path the path to the directory or a list of files
     *
     * @result imageList the image list
     */
    @Impure([ImpurityReason.FileReadFromParameterizedPath("path")])
    @PythonName("from_files")
    static fun fromFiles(
        path: union<List<String>, String>
    ) -> imageList: ImageList

    /**
     * Return the image at the given index.
     *
     * @param index the index for the image to return
     *
     * @result image the image at the given index
     */
    @Pure
    @PythonName("get_image")
    fun getImage(
        index: Int
    ) -> image: Image

    /**
     * Return a list of indexes of the given image.
     *
     * If the image has multiple occurrences, all indices will be returned
     *
     * @param image the image to search for occurrences
     *
     * @result indices all occurrences of the image
     */
    @Pure
    fun index(
        image: Image
    ) -> indices: List<Int>

    /**
     * Return whether the given image is in this image list.
     *
     * @param image the image to check
     *
     * @result hasImage Whether the given image is in this image list
     */
    @Pure
    @PythonName("has_image")
    fun hasImage(
        image: Image
    ) -> hasImage: Boolean

    /**
     * Save all images as jpeg files.
     *
     * @param path Either the path to a directory or a list of directories which has directories for either all different sizes or all different images. Any non-existant path will be created
     */
    @Impure([ImpurityReason.FileWriteToParameterizedPath("path")])
    @PythonName("to_jpeg_files")
    fun toJpegFiles(
        path: union<List<String>, String>
    )

    /**
     * Save all images as png files.
     *
     * @param path Either the path to a directory or a list of directories which has directories for either all different sizes or all different images. Any non-existant path will be created
     */
    @Impure([ImpurityReason.FileWriteToParameterizedPath("path")])
    @PythonName("to_png_files")
    fun toPngFiles(
        path: union<List<String>, String>
    )

    /**
     * Return a list of all images in this image list.
     *
     * @param indices a list of all indices to include in the output. If null, all indices will be included
     *
     * @result images the list of all images
     */
    @Pure
    @PythonName("to_images")
    fun toImages(
        indices: List<Int>? = null
    ) -> images: List<Image>

    /**
     * Return a new `ImageList` that has the given number of channels.
     *
     * The original image list is not modified.
     *
     * @param channel The new number of channels. 1 will result in grayscale images
     *
     * @result imageList the image list with the given number of channels
     */
    @Pure
    @PythonName("change_channel")
    fun changeChannel(
        channel: Int
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the given image added to the image list.
     *
     * The original image list is not modified.
     *
     * @param image The image to be added to the image list
     *
     * @result imageList the image list with the new image added
     */
    @Pure
    @PythonName("add_image")
    fun addImage(
        image: Image
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the given images added to the image list.
     *
     * The original image list is not modified.
     *
     * @param images The images to be added to the image list
     *
     * @result imageList the image list with the new images added
     */
    @Pure
    @PythonName("add_images")
    fun addImages(
        images: union<ImageList, List<Image>>
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the given image removed from the image list.
     *
     * If the image has multiple occurrences, all occurrences will be removed.
     *
     * The original image list is not modified.
     *
     * @param image The image to be removed from the image list
     *
     * @result imageList the image list with the given image removed
     */
    @Pure
    @PythonName("remove_image")
    fun removeImage(
        image: Image
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the given images removed from the image list.
     *
     * If one image has multiple occurrences, all occurrences will be removed.
     *
     * The original image list is not modified.
     *
     * @param images The images to be removed from the image list
     *
     * @result imageList the image list with the given images removed
     */
    @Pure
    @PythonName("remove_images")
    fun removeImages(
        images: List<Image>
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the given indices removed from the image list.
     *
     * The original image list is not modified.
     *
     * @param index The index of the image to be removed from the image list
     *
     * @result imageList the image list with the without the removed image
     */
    @Pure
    @PythonName("remove_image_by_index")
    fun removeImageByIndex(
        index: union<Int, List<Int>>
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with the all images of the given size removed.
     *
     * The original image list is not modified.
     *
     * @param width The width of the images to be removed from the image list
     * @param height The height of the images to be removed from the image list
     *
     * @result imageList the image list with the given images removed
     */
    @Pure
    @PythonName("remove_images_with_size")
    fun removeImagesWithSize(
        width: Int,
        height: Int
    ) -> imageList: ImageList

    /**
     * Return a new `ImageList` with all duplicate images removed.
     *
     * One occurrence of each image will stay in the image list.
     *
     * The original image list is not modified.
     *
     * @result imageList the image list with only unique images
     */
    @Pure
    @PythonName("remove_duplicate_images")
    fun removeDuplicateImages() -> imageList: ImageList

    /**
     * Return a new `ImageList` with all images shuffled.
     *
     * The original image list is not modified.
     *
     * @result imageList the image list with shuffled images
     */
    @Pure
    @PythonName("shuffle_images")
    fun shuffleImages() -> imageList: ImageList

    /**
     * Return a new `ImageList` with all images resized to a given size.
     *
     * The original image list is not modified.
     *
     * @param newWidth the new width of the images
     * @param newHeight the new height of the images
     *
     * @result imageList The image list with all images resized to the given width and height.
     */
    @Pure
    fun resize(
        @PythonName("new_width") const newWidth: Int,
        @PythonName("new_height") const newHeight: Int
    ) -> imageList: ImageList where {
        newWidth >= 0,
        newHeight >= 0
    }

    /**
     * Return a new `ImageList` with all images converted to grayscale.
     *
     * The new image will have the same amount of channels as the original image. If you want to change the amount of
     * channels used, please use the method [changeChannel][safeds.data.image.containers.ImageList.changeChannel].
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with all images converted to grayscale.
     */
    @Pure
    @PythonName("convert_to_grayscale")
    fun convertToGrayscale() -> imageList: ImageList

    /**
     * Return a new `ImageList` with all images cropped to a given bounding rectangle.
     *
     * The original image list is not modified.
     *
     * @param x the x coordinate of the top-left corner of the bounding rectangle
     * @param y the y coordinate of the top-left corner of the bounding rectangle
     * @param width the width of the bounding rectangle
     * @param height the height of the bounding rectangle
     *
     * @result imageList The image list with all images cropped
     */
    @Pure
    fun crop(
        const x: Int,
        const y: Int,
        const width: Int,
        const height: Int
    ) -> imageList: ImageList where {
        x >= 0,
        y >= 0,
        width >= 0,
        height >= 0
    }

    /**
     * Return a new `ImageList` with all images flipped vertically (horizontal axis, flips up-down and vice versa).
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with all images flipped vertically
     */
    @Pure
    @PythonName("flip_vertically")
    fun flipVertically() -> imageList: ImageList

    /**
     * Return a new `ImageList` with all images flipped horizontally (vertical axis, flips left-right and vice versa).
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with all images flipped horizontally
     */
    @Pure
    @PythonName("flip_horizontally")
    fun flipHorizontally() -> imageList: ImageList

    /**
     * Return a new `ImageList` where all images have the adjusted brightness.
     *
     * The original image list is not modified.
     *
     * @param factor The brightness factor.
     * 1.0 will not change the brightness.
     * Below 1.0 will result in a darker images.
     * Above 1.0 will resolut in a brighter images.
     * Has to be bigger than or equal to 0 (black).
     *
     * @result imageList The image list with adjusted brightness
     */
    @Pure
    @PythonName("adjust_brightness")
    fun adjustBrightness(
        const factor: Float
    ) -> imageList: ImageList where {
        factor >= 0.0
    }

    /**
     * Return a new `ImageList` with noise added to all images.
     *
     * The original image list is not modified.
     *
     * @param standardDeviation The standard deviation of the normal distribution. Has to be bigger than or equal to 0.
     *
     * @result imageList The image list with added noise
     */
    @Pure
    @PythonName("add_noise")
    fun addNoise(
        @PythonName("standard_deviation") const standardDeviation: Float
    ) -> imageList: ImageList where {
        standardDeviation >= 0.0
    }

    /**
     * Return a new `ImageList` where all images have the adjusted contrast.
     *
     * The original image list is not modified.
     *
     * @param factor If factor > 1, increase contrast of images.
     * If factor = 1, no changes will be made.
     * If factor < 1, make images greyer.
     * Has to be bigger than or equal to 0 (gray).
     *
     * @result imageList The image list with adjusted contrast
     */
    @Pure
    @PythonName("adjust_contrast")
    fun adjustContrast(
        const factor: Float
    ) -> imageList: ImageList where {
        factor >= 0.0
    }

    /**
     * Return a new `ImageList` where all images have the adjusted color balance.
     *
     * The original image list is not modified.
     *
     * @param factor Has to be bigger than or equal to 0.
     * If 0 <= factor < 1, make images greyer.
     * If factor = 1, no changes will be made.
     * If factor > 1, increase color balance of images.
     *
     * @result imageList The image list with adjusted color balance
     */
    @Pure
    @PythonName("adjust_color_balance")
    fun adjustColorBalance(
        const factor: Float
    ) -> imageList: ImageList where {
        factor >= 0.0
    }

    /**
     * Return a new `ImageList` where all images have been blurred.
     *
     * The original image list is not modified.
     *
     * @param radius  Radius is directly proportional to the blur value. The radius is equal to the amount of pixels united in
     *  each direction. A radius of 1 will result in a united box of 9 pixels.
     *
     * @result imageList The image list with blurred images
     */
    @Pure
    fun blur(
        const radius: Int
    ) -> imageList: ImageList where {
        radius >= 0
    }

    /**
     * Return a new `ImageList` where all images have been sharpened.
     *
     * The original image list is not modified.
     *
     * @param factor If factor > 1, increase the sharpness of the images.
     * If factor = 1, no changes will be made.
     * If factor < 1, blur the images.
     * Has to be bigger than or equal to 0 (blurred).
     *
     * @result imageList The image list with sharpened images
     */
    @Pure
    fun sharpen(
        const factor: Float
    ) -> imageList: ImageList where {
        factor >= 0.0
    }

    /**
     * Return a new `ImageList` where all images have their colors inverted.
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with inverted colors
     */
    @Pure
    @PythonName("invert_colors")
    fun invertColors() -> imageList: ImageList

    /**
     * Return a new `ImageList` where all images have been rotated 90 degrees clockwise.
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with all images rotated
     */
    @Pure
    @PythonName("rotate_right")
    fun rotateRight() -> imageList: ImageList

    /**
     * Return a new `ImageList` where all images have been rotated 90 degrees counter-clockwise.
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with all images rotated
     */
    @Pure
    @PythonName("rotate_left")
    fun rotateLeft() -> imageList: ImageList

    /**
     * Return a new `ImageList` with grayscale versions of the images with the edges highlighted.
     *
     * The original image list is not modified.
     *
     * @result imageList The image list with highlighted edges
     */
    @Pure
    @PythonName("find_edges")
    fun findEdges() -> imageList: ImageList
}

channel

The channel of all images.

Type: Int

heights

A list of all heights in this image list.

Type: List<Int>

imageCount

The number of images in this image list.

Type: Int

sizeCount

The number of different sizes of images in this image list.

Type: Int

sizes

The sizes of all images.

Type: List<ImageSize>

widths

A list of all widths in this image list.

Type: List<Int>

addImage

Return a new ImageList with the given image added to the image list.

The original image list is not modified.

Parameters:

Name Type Description Default
image Image The image to be added to the image list -

Results:

Name Type Description
imageList ImageList the image list with the new image added
Stub code in ImageList.sdsstub
@Pure
@PythonName("add_image")
fun addImage(
    image: Image
) -> imageList: ImageList

addImages

Return a new ImageList with the given images added to the image list.

The original image list is not modified.

Parameters:

Name Type Description Default
images union<ImageList, List<Image>> The images to be added to the image list -

Results:

Name Type Description
imageList ImageList the image list with the new images added
Stub code in ImageList.sdsstub
@Pure
@PythonName("add_images")
fun addImages(
    images: union<ImageList, List<Image>>
) -> imageList: ImageList

addNoise

Return a new ImageList with noise added to all images.

The original image list is not modified.

Parameters:

Name Type Description Default
standardDeviation Float The standard deviation of the normal distribution. Has to be bigger than or equal to 0. -

Results:

Name Type Description
imageList ImageList The image list with added noise
Stub code in ImageList.sdsstub
@Pure
@PythonName("add_noise")
fun addNoise(
    @PythonName("standard_deviation") const standardDeviation: Float
) -> imageList: ImageList where {
    standardDeviation >= 0.0
}

adjustBrightness

Return a new ImageList where all images have the adjusted brightness.

The original image list is not modified.

Parameters:

Name Type Description Default
factor Float The brightness factor. 1.0 will not change the brightness. Below 1.0 will result in a darker images. Above 1.0 will resolut in a brighter images. Has to be bigger than or equal to 0 (black). -

Results:

Name Type Description
imageList ImageList The image list with adjusted brightness
Stub code in ImageList.sdsstub
@Pure
@PythonName("adjust_brightness")
fun adjustBrightness(
    const factor: Float
) -> imageList: ImageList where {
    factor >= 0.0
}

adjustColorBalance

Return a new ImageList where all images have the adjusted color balance.

The original image list is not modified.

Parameters:

Name Type Description Default
factor Float Has to be bigger than or equal to 0. If 0 <= factor < 1, make images greyer. If factor = 1, no changes will be made. If factor > 1, increase color balance of images. -

Results:

Name Type Description
imageList ImageList The image list with adjusted color balance
Stub code in ImageList.sdsstub
@Pure
@PythonName("adjust_color_balance")
fun adjustColorBalance(
    const factor: Float
) -> imageList: ImageList where {
    factor >= 0.0
}

adjustContrast

Return a new ImageList where all images have the adjusted contrast.

The original image list is not modified.

Parameters:

Name Type Description Default
factor Float If factor > 1, increase contrast of images. If factor = 1, no changes will be made. If factor < 1, make images greyer. Has to be bigger than or equal to 0 (gray). -

Results:

Name Type Description
imageList ImageList The image list with adjusted contrast
Stub code in ImageList.sdsstub
@Pure
@PythonName("adjust_contrast")
fun adjustContrast(
    const factor: Float
) -> imageList: ImageList where {
    factor >= 0.0
}

blur

Return a new ImageList where all images have been blurred.

The original image list is not modified.

Parameters:

Name Type Description Default
radius Int Radius is directly proportional to the blur value. The radius is equal to the amount of pixels united in each direction. A radius of 1 will result in a united box of 9 pixels. -

Results:

Name Type Description
imageList ImageList The image list with blurred images
Stub code in ImageList.sdsstub
@Pure
fun blur(
    const radius: Int
) -> imageList: ImageList where {
    radius >= 0
}

changeChannel

Return a new ImageList that has the given number of channels.

The original image list is not modified.

Parameters:

Name Type Description Default
channel Int The new number of channels. 1 will result in grayscale images -

Results:

Name Type Description
imageList ImageList the image list with the given number of channels
Stub code in ImageList.sdsstub
@Pure
@PythonName("change_channel")
fun changeChannel(
    channel: Int
) -> imageList: ImageList

convertToGrayscale

Return a new ImageList with all images converted to grayscale.

The new image will have the same amount of channels as the original image. If you want to change the amount of channels used, please use the method changeChannel.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with all images converted to grayscale.
Stub code in ImageList.sdsstub
@Pure
@PythonName("convert_to_grayscale")
fun convertToGrayscale() -> imageList: ImageList

crop

Return a new ImageList with all images cropped to a given bounding rectangle.

The original image list is not modified.

Parameters:

Name Type Description Default
x Int the x coordinate of the top-left corner of the bounding rectangle -
y Int the y coordinate of the top-left corner of the bounding rectangle -
width Int the width of the bounding rectangle -
height Int the height of the bounding rectangle -

Results:

Name Type Description
imageList ImageList The image list with all images cropped
Stub code in ImageList.sdsstub
@Pure
fun crop(
    const x: Int,
    const y: Int,
    const width: Int,
    const height: Int
) -> imageList: ImageList where {
    x >= 0,
    y >= 0,
    width >= 0,
    height >= 0
}

findEdges

Return a new ImageList with grayscale versions of the images with the edges highlighted.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with highlighted edges
Stub code in ImageList.sdsstub
@Pure
@PythonName("find_edges")
fun findEdges() -> imageList: ImageList

flipHorizontally

Return a new ImageList with all images flipped horizontally (vertical axis, flips left-right and vice versa).

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with all images flipped horizontally
Stub code in ImageList.sdsstub
@Pure
@PythonName("flip_horizontally")
fun flipHorizontally() -> imageList: ImageList

flipVertically

Return a new ImageList with all images flipped vertically (horizontal axis, flips up-down and vice versa).

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with all images flipped vertically
Stub code in ImageList.sdsstub
@Pure
@PythonName("flip_vertically")
fun flipVertically() -> imageList: ImageList

getImage

Return the image at the given index.

Parameters:

Name Type Description Default
index Int the index for the image to return -

Results:

Name Type Description
image Image the image at the given index
Stub code in ImageList.sdsstub
@Pure
@PythonName("get_image")
fun getImage(
    index: Int
) -> image: Image

hasImage

Return whether the given image is in this image list.

Parameters:

Name Type Description Default
image Image the image to check -

Results:

Name Type Description
hasImage Boolean Whether the given image is in this image list
Stub code in ImageList.sdsstub
@Pure
@PythonName("has_image")
fun hasImage(
    image: Image
) -> hasImage: Boolean

index

Return a list of indexes of the given image.

If the image has multiple occurrences, all indices will be returned

Parameters:

Name Type Description Default
image Image the image to search for occurrences -

Results:

Name Type Description
indices List<Int> all occurrences of the image
Stub code in ImageList.sdsstub
@Pure
fun index(
    image: Image
) -> indices: List<Int>

invertColors

Return a new ImageList where all images have their colors inverted.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with inverted colors
Stub code in ImageList.sdsstub
@Pure
@PythonName("invert_colors")
fun invertColors() -> imageList: ImageList

removeDuplicateImages

Return a new ImageList with all duplicate images removed.

One occurrence of each image will stay in the image list.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList the image list with only unique images
Stub code in ImageList.sdsstub
@Pure
@PythonName("remove_duplicate_images")
fun removeDuplicateImages() -> imageList: ImageList

removeImage

Return a new ImageList with the given image removed from the image list.

If the image has multiple occurrences, all occurrences will be removed.

The original image list is not modified.

Parameters:

Name Type Description Default
image Image The image to be removed from the image list -

Results:

Name Type Description
imageList ImageList the image list with the given image removed
Stub code in ImageList.sdsstub
@Pure
@PythonName("remove_image")
fun removeImage(
    image: Image
) -> imageList: ImageList

removeImageByIndex

Return a new ImageList with the given indices removed from the image list.

The original image list is not modified.

Parameters:

Name Type Description Default
index union<Int, List<Int>> The index of the image to be removed from the image list -

Results:

Name Type Description
imageList ImageList the image list with the without the removed image
Stub code in ImageList.sdsstub
@Pure
@PythonName("remove_image_by_index")
fun removeImageByIndex(
    index: union<Int, List<Int>>
) -> imageList: ImageList

removeImages

Return a new ImageList with the given images removed from the image list.

If one image has multiple occurrences, all occurrences will be removed.

The original image list is not modified.

Parameters:

Name Type Description Default
images List<Image> The images to be removed from the image list -

Results:

Name Type Description
imageList ImageList the image list with the given images removed
Stub code in ImageList.sdsstub
@Pure
@PythonName("remove_images")
fun removeImages(
    images: List<Image>
) -> imageList: ImageList

removeImagesWithSize

Return a new ImageList with the all images of the given size removed.

The original image list is not modified.

Parameters:

Name Type Description Default
width Int The width of the images to be removed from the image list -
height Int The height of the images to be removed from the image list -

Results:

Name Type Description
imageList ImageList the image list with the given images removed
Stub code in ImageList.sdsstub
@Pure
@PythonName("remove_images_with_size")
fun removeImagesWithSize(
    width: Int,
    height: Int
) -> imageList: ImageList

resize

Return a new ImageList with all images resized to a given size.

The original image list is not modified.

Parameters:

Name Type Description Default
newWidth Int the new width of the images -
newHeight Int the new height of the images -

Results:

Name Type Description
imageList ImageList The image list with all images resized to the given width and height.
Stub code in ImageList.sdsstub
@Pure
fun resize(
    @PythonName("new_width") const newWidth: Int,
    @PythonName("new_height") const newHeight: Int
) -> imageList: ImageList where {
    newWidth >= 0,
    newHeight >= 0
}

rotateLeft

Return a new ImageList where all images have been rotated 90 degrees counter-clockwise.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with all images rotated
Stub code in ImageList.sdsstub
@Pure
@PythonName("rotate_left")
fun rotateLeft() -> imageList: ImageList

rotateRight

Return a new ImageList where all images have been rotated 90 degrees clockwise.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList The image list with all images rotated
Stub code in ImageList.sdsstub
@Pure
@PythonName("rotate_right")
fun rotateRight() -> imageList: ImageList

sharpen

Return a new ImageList where all images have been sharpened.

The original image list is not modified.

Parameters:

Name Type Description Default
factor Float If factor > 1, increase the sharpness of the images. If factor = 1, no changes will be made. If factor < 1, blur the images. Has to be bigger than or equal to 0 (blurred). -

Results:

Name Type Description
imageList ImageList The image list with sharpened images
Stub code in ImageList.sdsstub
@Pure
fun sharpen(
    const factor: Float
) -> imageList: ImageList where {
    factor >= 0.0
}

shuffleImages

Return a new ImageList with all images shuffled.

The original image list is not modified.

Results:

Name Type Description
imageList ImageList the image list with shuffled images
Stub code in ImageList.sdsstub
@Pure
@PythonName("shuffle_images")
fun shuffleImages() -> imageList: ImageList

toImages

Return a list of all images in this image list.

Parameters:

Name Type Description Default
indices List<Int>? a list of all indices to include in the output. If null, all indices will be included null

Results:

Name Type Description
images List<Image> the list of all images
Stub code in ImageList.sdsstub
@Pure
@PythonName("to_images")
fun toImages(
    indices: List<Int>? = null
) -> images: List<Image>

toJpegFiles

Save all images as jpeg files.

Parameters:

Name Type Description Default
path union<List<String>, String> Either the path to a directory or a list of directories which has directories for either all different sizes or all different images. Any non-existant path will be created -
Stub code in ImageList.sdsstub
@Impure([ImpurityReason.FileWriteToParameterizedPath("path")])
@PythonName("to_jpeg_files")
fun toJpegFiles(
    path: union<List<String>, String>
)

toPngFiles

Save all images as png files.

Parameters:

Name Type Description Default
path union<List<String>, String> Either the path to a directory or a list of directories which has directories for either all different sizes or all different images. Any non-existant path will be created -
Stub code in ImageList.sdsstub
@Impure([ImpurityReason.FileWriteToParameterizedPath("path")])
@PythonName("to_png_files")
fun toPngFiles(
    path: union<List<String>, String>
)

fromFiles

Create an ImageList from a directory or a list of files.

If you provide a path to a directory the images will be sorted alphabetically while inner directories will be sorted after image files.

Parameters:

Name Type Description Default
path union<List<String>, String> the path to the directory or a list of files -

Results:

Name Type Description
imageList ImageList the image list
Stub code in ImageList.sdsstub
@Impure([ImpurityReason.FileReadFromParameterizedPath("path")])
@PythonName("from_files")
static fun fromFiles(
    path: union<List<String>, String>
) -> imageList: ImageList

fromImages

Create an ImageList from a list of images.

Parameters:

Name Type Description Default
images List<Image> the list of images -

Results:

Name Type Description
imageList ImageList the image list
Stub code in ImageList.sdsstub
@Pure
@PythonName("from_images")
static fun fromImages(
    images: List<Image>
) -> imageList: ImageList