Comments (7)
Hi Lucas,
This images has two downsampled components. The only way to save them to ppm is if you interpolate these two components. Then, if you were to interpolate, where do these component sit relative to the first component (the one that is not downsampled); possible answers are: 0,0 or 1,1 or 0.5, 0.5 and many other locations.
We cannot expect a decoder to be able to do all possible imagined tasks. For these tasks, you have to write your own code.
Kind regards,
Aous
from openjph.
Hi Aous
Maybe I'm doing something wrong. What should be sampling for 4: 2: 2?
I'm just thinking. Since openjpeg allows 4: 2: 2 sampling. Maybe there's no blockage there.
Edit: I used your latest grok codecs. Previously, jp2 exif files had blotches. Now I have a mistake, but I will not upset the grok. regards
https://github.com/GrokImageCompression/grok/issues/253
ojph warning 0x00010001 at ojph_block_decoder.cpp:1020: A malformed codeblock that has more than one coding pass, but zero length for 2nd and potential 3rd pass.
[2021-09-15 09:16:31.156] [error] Error in HT block coder
[2021-09-15 09:16:31.156] [error] Failed to decompress tile 0/1
[2021-09-15 09:16:31.156] [error] Failed to decompress JP2 file
from openjph.
You setting is correct. -downsamp {1,1},{2,1},{2,1}.
When YUV is used, OpenJPH store image components as images, no color transform is employed. Also, the .j2c file tells the decoder not use color transform.
I do not know what happens in OpenJPEG; when you save to ppm, II think the result would still be in YUV, not in RGB.
Also not sure if the up-sampling is correct.
from openjph.
When YUV is used, OpenJPH store image components as images, no color transform is employed. Also, the .j2c file tells the decoder not use color transform.
OK. And it generally keeps some subsamling data. For RGB24/yuv444 I have red photos when decoding.
from openjph.
It keeps the sub-sampling data. Like you discovered, it does not perform color transform.
from openjph.
OK. Right. There is no info. I should only decode to PPM.
from openjph.
If you encode ppm, decode to ppm. If you encode yuv, decode to yuv.
from openjph.
Related Issues (20)
- typo in CMakeLists.txt HOT 1
- ojph_compress support for uppercase file extensions HOT 1
- signed 16bit negative values mismatch in interoperablity test between openjph and kakadu HOT 2
- Incorrect COM marker length HOT 1
- openjph decompression fails HOT 2
- Question : what format to be used to decompress the color HTJ2K compressed imaging data HOT 6
- Build should not fail if SIMD optimizations are enabled and your CPU doesn't support them HOT 2
- Feature: Support ROI based rendering HOT 1
- Sample JPH images, please HOT 5
- Unable to build using MinGW HOT 3
- Apple silicon build error HOT 5
- Support decode/expand a j2c file with just tilepart bytes HOT 2
- Tests fails to pass in version 0.10.4 HOT 2
- Specifying non-standard binary and library directories complicates integration in other projects HOT 1
- Feature Request: Add support for vcpkg HOT 1
- Encode 115x25的YUV444 picture,There is serious distortion. HOT 4
- Automated Testing Improvements HOT 1
- Remove xcode specific files HOT 1
- The block coder should be usable without pulling in the rest of OpenJPH HOT 6
- Removing the ojph_ prefix. HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openjph.