Skip to content

[BUG] Fillholes can't handle offseted data window #4942

@AlexeySmolenchuk

Description

@AlexeySmolenchuk

Describe the bug

The fillholes algorithm in oiiotools can't handle a shifted data window.

OpenImageIO version and dependencies

OIIO 3.0.9.1 | unknown arch?
Build compiler: MSVS 1942 | C++17/199711
HW features enabled at build: sse2
No CUDA support (disabled / unavailable at build time)
Dependencies: fmt 12.0.0, Imath 3.2.0, libjpeg-turbo 3.1.2, libuhdr NONE,
OpenEXR 3.3.5, OpenGL, PNG 1.6.50, Qt5 NONE, Qt6 NONE, Robinmap, TIFF
4.7.1, ZLIB 1.3.1

To Reproduce

There are two ways to describe overscan in Exr. We can either offset the Data window or the Display window.

oiiotool --create 64x64-16-16 4 --fullsize 32x32+0+0 --box:color=1,0,0,1 0,0,31,31 --box:color=0,1,0,1 1,1,30,30 -o data.exr
oiiotool --create 64x64 4 --fullsize 32x32+16+16 --box:color=1,0,0,1 16,16,47,47 --box:color=0,1,0,1 17,17,46,46 -o display.exr

Here, I'm intentionally displaying pixels outside of the display window (dashed line).

Image

Now apply fillholes.

oiiotool data.exr --fillholes -o data_fill.exr
oiiotool display.exr --fillholes -o display_fill.exr
Image

Looks like it applies data window shift in the opposite direction. Display window offset is fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions