Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Decode Sub-region #694

Closed
wants to merge 19 commits into from
Closed

Decode Sub-region #694

wants to merge 19 commits into from

Conversation

boxerab
Copy link
Contributor

@boxerab boxerab commented Jan 11, 2016

Building on the omnibus branch, this branch adds fast sub-tile decode.

If a decode region is specified using the -d parameter, all code blocks that do not contribute
to this region will be ignored, boosting decode speed considerably.

This is useful for decoding a sub region inside of a large single tile image.

Fixes #693 and #676

@boxerab
Copy link
Contributor Author

boxerab commented Jan 11, 2016

Strange, all builds pass (ignore ABI test) except gcc 64 bit release, where a lot of tests fail.
Has anyone experienced this, and if so how to trouble shoot ? The only thing I can think of is that
debug build initializes pixel memory to zero, and release does not.

@boxerab boxerab changed the title Decode sub region Decode Sub-region Jan 11, 2016
@mayeut
Copy link
Collaborator

mayeut commented Jan 11, 2016

@boxerab, could it be related to this warning:
openjpeg/src/lib/openjp2/region_mgr.c:194:1: warning: control reaches end of non-void function [-Wreturn-type]

@boxerab
Copy link
Contributor Author

boxerab commented Jan 11, 2016

@mayeut nice catch - I left some debug code in one of my methods. Thanks.

@boxerab
Copy link
Contributor Author

boxerab commented Jan 12, 2016

Well, just 8 broken tests to fix, and they are all related to a single image. Question: do we have any tests in the suite that test the -d flag : setting a decode region ? Also, could we add a test to test decoding a region from a specific tile? i.e. -d 0,0,64,64 -t 0

@mayeut
Copy link
Collaborator

mayeut commented Jan 12, 2016

There are tests using the -d option. Check in the file tests/nonregression/test_suite.ctest.inand look for -d. In fact, I think the newly broken tests are those using this option (file p0_04.j2k & p1_04.j2k).

@boxerab
Copy link
Contributor Author

boxerab commented Jan 12, 2016

@mayeut great, thanks!

}
getchar();
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boxerab Wouldn't that be the source of the stalled tests under travis ?

@boxerab
Copy link
Contributor Author

boxerab commented Jan 13, 2016

@mayeut once again, nice catch! I checked in some debug code again.
Thanks.

@boxerab
Copy link
Contributor Author

boxerab commented Jan 15, 2016

I tested decoding of a 1000x1000 region from a large 22000x29000 image, tiled with 1024x1024 tiles.

This branch took 600 ms, while the omnibus branch took around 1100 ms, on my system.

@boxerab boxerab closed this Jan 17, 2016
@boxerab boxerab deleted the decode_region branch January 17, 2016 04:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants