imageload
Prev | Orchestra Opcodes and Operators | Next

## imageload

imageload — Load an image.

## Description

Load an image and return a reference to it. Individual pixel values can then be accessed with imagegetpixel.

| Note
The image processing opcodes can only load png images

## Syntax

    iimagenum imageload filename

## Initialization

iimagenum -- number assigned to the loaded image.

filename -- The filename of the image to load (should be a valid PNG image file).

## Examples

Here is an example of the imageload opcode. It uses the file imageopcodes.csd.

Example 357. Example of the imageload opcode.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -n ;no sound output
    </CsOptions>
    <CsInstruments>

    sr=48000
    ksmps=1
    nchnls=2

    ; this test .csd copies image.png into a new file 'imageout.png'

    giimage1 imageload "image.png"
    giimagew, giimageh imagesize giimage1
    giimage2 imagecreate giimagew,giimageh

        instr 1

    kndx = 0
    kx_ linseg 0, p3, 1
    ;print imagewidth and imageheigth of image.png
    prints "imagewidth = %f pixels, imageheigth = %f pixels\\n", giimagew, giimageh

    myloop:
    ky_ = kndx/(giimageh)
    kr_, kg_, kb_ imagegetpixel giimage1, kx_, ky_
    imagesetpixel giimage2, kx_, ky_, kr_, kg_, kb_
    loop_lt kndx, 0.5, giimageh, myloop
        endin

        instr 2

    imagesave giimage2, "imageout.png"
        endin

        instr 3
    imagefree giimage1
    imagefree giimage2
        endin

    </CsInstruments>
    <CsScore>

    i1 1 1
    i2 2 1
    i3 3 1
    e

    </CsScore>
    </CsoundSynthesizer>

## See Also

imagecreate, imagesize, imagesave, imagegetpixel, imagesetpixel, imagefree

## Credits

Author: Cesare Marilungo

New in version 5.08

Prev | Up | Next
imagegetpixel | Home | imagesave