Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
15th April 2015, 13:30 | #1 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
Lossless upscaling and downscaling
Do you know some upscaling that keeps every detail, even the finest? You know some upscaling that adds true detail in final image (True detail, not noise)?
You know some downscaling that preserves all detail, even the finest? Thank you. Last edited by luquinhas0021; 15th April 2015 at 13:33. Reason: Error |
15th April 2015, 14:07 | #3 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,346
|
Its impossible to downscale and preserve "all" detail. The final image is smaller, therefor it won't be "lossless", and detail has to be dropped.
For upscaling, even though pointresize is technically "lossless", the resulting aliasing artifacts will not make for a pleasant image. Resampling an image, up or down, is always a excercise in compromise. Retention of detail (aka sharpness) vs. reducing aliasing and ringing.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders |
15th April 2015, 14:28 | #4 | Link |
Registered User
Join Date: Mar 2009
Location: Germany
Posts: 5,769
|
Downscaling is not possible in a lossless manner.
Upscaling is however possible, if the image is an integer multiple - for instance a pixel in the original image corresponds to 4 (2x2) or 9 (3x3) and so one pixels in the new image. Unless the viewing distance is increased, the visual appearance is bad - interpolation algorithms are way better.
__________________
Born in the USB (not USA) |
15th April 2015, 15:07 | #5 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
Lossless upscaling or downscaling
Ghitulescu, is there loss of details when upscaling is a decimal multiple of source image? If yes, it must be because there is change of proportion of each patch of pixels, right?
Will downscaling to be lossless neither if I put image (Including its textures) on vector plane, to do downscaling and then back it for pixel values? I didn't know point resize was lossless, but I already saw that alias image, but, anyway, Update: I've tested point resize. In fact, it introduces some aliasing and some blocking, but is neither so much and, taking off all this artifacts, without perceptive sharp loss, the result gets good. Is Spline 100 lossless? I am asking because I've tested it and the results got better even than NNEDI3 under better parameters. And Spline 100 is the best Spline interpolation method, because makes the most sharpened results, without perceptible artifacts, unless those already was in image, but is well smooth. NNEDI3 is so slow, and a little unstable. Someone here knows if NeuronDoubler is top? Now, about upscaling with true detail add: is there some? (True detail isn't seem like image noise) Answer me all question, please! Thank you Last edited by luquinhas0021; 15th April 2015 at 16:01. |
15th April 2015, 16:05 | #6 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
spline 100? are you talking about 5 taps spline? it can be even sharper, let's say 100 taps (spline40000), it would be slow like hell and produce hell lot of ringings to your upscaled image, so more taps is not always better
resizers other than pointresize = pointresize + convolution, pointresize is lossless, convolution is not, end of the story "upscaling with true detail add"...? yeah, that, that, that's THE RESIZER everyone wish he has, shame no one ever manages to make one.. maybe we'll have it with AI algorithms in the future |
15th April 2015, 16:25 | #7 | Link | |
SuperVirus
Join Date: Jun 2012
Location: Antarctic Japan
Posts: 1,351
|
Quote:
then I might agree with you |
|
15th April 2015, 18:44 | #9 | Link | |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
Quote:
And despite if the kernel (cubic, sinc, spline...) is polynomial or not, the actual process is blow the image up with pointresize first, and smooth the aliasings with a kernel next, and how that kernel works is convolve the image with the kernel function, so, a convolution, that's what i always thought about resizing, but correct me if I got the whole idea wrong |
|
18th April 2015, 10:01 | #11 | Link | ||||
Registered User
Join Date: Mar 2014
Posts: 308
|
Your posts are moderately incoherent so don't mind me if I'm misinterpreting them.
Quote:
Quote:
Quote:
Quote:
__________________
Say no to AviSynth 2.5.8 and DirectShowSource! |
||||
18th April 2015, 10:06 | #12 | Link | |
Registered User
Join Date: Mar 2014
Posts: 308
|
Quote:
__________________
Say no to AviSynth 2.5.8 and DirectShowSource! |
|
18th April 2015, 11:53 | #13 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
you are right, did some more search on Wikipedia and found new pixels are the weighted averaged results of the pixels around them, never again will I just take words from others only because they seem somehow reasonable, yeah, screwed up by rumor yet again.
|
18th April 2015, 21:42 | #14 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
Colours, I don'r express myself good when I said loss of details when I do a upscaling of decimal factor (Like 1.5 x 1.5 times). Really, the proportions of "lines" of every patch of pixels changes (Example: 1920 x 1080 (1:1.7778)) to 2048 x 1080 (1:1.896)), but, in fact, the details are stretched.
I'm not totally convinced that there's no way of exist some lossless downscaling, neither by to vector space conversion of image. About true detail add upscaling... There's way of, at least, suppose the new details: if you consider every pixel just like a color, and this color is the mix of n other details (Other colors) and consider that the frame, whatever, is a image in real world and it is being seen by a human. As you might know, the human eye (Specifically the fovea centrallis) has a angular resolution that depends of wavelength and contrast, but, anyway, when I come n times closer, I will see n times more details, taking those initial dot. I considered just one eye because the image in computer is 2D (The 2 eyes, together, see 3D images). And I'm considering that all image is seen in fovea centrallis. This is impossible in practice, but is ideal, ideal for my idea and doesn't introduces artifacts (lol). I can restrict the uncountable possibilities for the n other details that comes from one color when i do the neighborhood analysis. But, pay attention, for this method works well, is necessary a so fine Edge detector algorithm or a sum of information (True edges) of various edge detectors (And delete the artifacts that one Edge detector detects, but other doesn't, knowing that one type of edge detector detects some type (s) of artifact (s). The neighborhood analysis will be done in pixel that compose the edge, each one. Another neighborhood analysis will be done in pixel that are included in the edge . It's like a internal area of a circle. The question is if is necessary create new edges, and, if yes, where: included in pre-existent edge or in internal area of it, if exist it, course. Other question is what format of new edges will have. Ben, I am still working on principle of my method, so i wish you help me with it, especially you, Colours, because you seem to be so wise. Which the best edge detector? If not exist the best in every cases, which is the best in detect one and other type of edge? Is there some edge detector that doesn't detect artifacts (Noise, aliasing, ringing, halo, jaggies,...)? |
19th April 2015, 07:14 | #15 | Link | |||||
Registered User
Join Date: Mar 2014
Posts: 308
|
Quote:
It doesn't matter what kind of function you come up with. The pigeonhole principle denies you. Now, it does turn out that if you try to vectorise a picture with a sufficiently sophisticated algorithm, you can indeed (sometimes) store the original picture with fewer bits than storing individual pixels. But this is just the concept of lossless compression. It doesn't mean that you can rasterise the vectors at a lower resolution, re-vectorise this, and then re-rasterise at a higher resolution to get back the original. The first rasterisation step is already lossy, thanks to the pigeonhole principle. Quote:
No. Two eyes see two 2D images. Quote:
Quote:
Quote:
__________________
Say no to AviSynth 2.5.8 and DirectShowSource! Last edited by colours; 19th April 2015 at 07:17. |
|||||
19th April 2015, 15:24 | #16 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
No, Colours, the vision proportioned by two eyes together, and interpreted by the visual cortex, in brain, gives a 3D vision of the world. It's the stereoscopic vision.
The concept of mixing colors isn't mathematical itself, it's fisical. Look at the color in extreme left (1 x 1) and compare it with 2 x 2 image. Looks like colors were demixed from 1 x 1 to 2 x 2, isn't? When we compare 2 x 2 and 5 x 5 image, we see white pixels. But white isn't seemed with blue. This makes me believe that when i have a upscaling of non-integer factor (Like 2 x 2 to 5 x 5; 5/2 = 2.5. So the upscaling is 2.5 times on line and 2.5 times on column), when we demixe the colors, the result is of image same colors pixels, but different intensities, and of image different colors pixels. If we don't want make mistake (Or intolerable mistake!), we talk the different colors are, usually, white or grey. It's clear it's just a example, but gives an idea of general. This images show us the bigger upscaling factor is, minor is the chance of suppose correctly the details. Ben, i understood that doesn't exist a perfect edge detector. My English still isn't very good. And i will continue improving my idea. |
19th April 2015, 16:00 | #17 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
and how are you planning to "demix" a color?
it's like a single equation (the color you wanna demix) with a lot of unknowns (the target image you'd like to get) the equation you get is actually a curve running through a high dimensional space (the space would have dimensions the same amount of the unknowns in the equation) you'll never get a constant solution from it |
19th April 2015, 16:19 | #18 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
If I consider the color like being a sinusoidal wave, I can decompose that in it components using Fourier Transform. So the result won't be contant, but any result (Any demix) will be in result of Fourier Transform. Like I say, this project is still in beginner stage. I subscribe me in this forum for get help.
So i wish you, Colours and whoever that know about help me. |
19th April 2015, 16:39 | #19 | Link |
I'm Siri
Join Date: Oct 2012
Location: void
Posts: 2,633
|
A real and mathematically possible "color demixer" is a deconvolution algorithm, it's been used to "refocus" blurry photos. But still you can't use it to upscale images, it's like a sharp and detailed photo got blurred by some filter, now pixels in this blurred photo got smaller differences than the original one cause pixels were "mixed" with each other (but still they got different values, just the difference got smaller), and a deconvolution algorithm can "demix" these pixels and restore them to their original status. But it won't work on upscaling cause you don't have that many pixels to do it.
|
19th April 2015, 16:52 | #20 | Link |
The image enthusyast
Join Date: Mar 2015
Location: Brazil
Posts: 270
|
Ben, I'm not talking you are stupid, but, how says, one image worth it more than one thousand of words. In that case, more than one image! It's clear, especially in n x y to kn x ky upscaling (K is natural number), that the k x k resultant colors of one color included in n x y colors, are a demix of one that color (Or some so close to demix), and, somehow, the demix has some relationship with neighborhood. So I (Or we) have to know what is this relation and how colors are demixed.
I won't give up on my idea. |
Tags |
detail preserving, lossless, upscaling |
Thread Tools | Search this Thread |
Display Modes | |
|
|