VideoHelp Forum




+ Reply to Thread
Page 2 of 3
FirstFirst 1 2 3 LastLast
Results 31 to 60 of 73
  1. Originally Posted by Mephesto View Post
    Jagabo, thanks for all the info. Are these videoscope graphs what people use as a guide for contrast/color correction?
    I use them all the time. I know Sanlyn uses RGB histograms a lot (ColorTools in VirtualDub).
    Quote Quote  
  2. I think he wants every pixel to have H= some set value . So if you use a HSV color picker and ran through it, it would show the same H degrees for every pixel

    In this example , I chose H=162

    Name:  Hue Blend Mode H=162.jpg
Views: 1493
Size:  11.6 KB



    Another way you can do this is with layer blending modes in photoshop, AE, gimp etc... using the "hue" blending mode . If you have a video you can batch process images (or just use AE)

    Photoshop
    http://help.adobe.com/en_US/photoshop/cs/using/WSfd1234e1c4b69f30ea53e41001031ab64-77eba.html
    Hue Creates a result color with the luminance and saturation of the base color and the hue of the blend color.
    I haven't tried this, but gimp's hue blend mode basically does the same thing
    http://docs.gimp.org/en/gimp-concepts-layer-modes.html

    Hue mode uses the hue of the upper layer and the saturation and value of the lower layer to form the resulting image.
    Unfortunately avisynth 's overlay() doesn't have this layer blending mode (just the regular ones like "add", "subtract", "multiply", etc....), but you could probably convince one of the gurus to add it if you asked nicely

    http://avisynth.org/mediawiki/Overlay
    Quote Quote  
  3. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    Umm..is that picture kosher?
    Quote Quote  
  4. Originally Posted by budwzr View Post
    Umm..is that picture kosher?
    Looks kosher to me (I can move the pointer to the bum if you want , budwzr )

    Animated Gif fun
    Name:  hue.gif
Views: 6275
Size:  381.5 KB
    Quote Quote  
  5. Originally Posted by budwzr View Post
    Umm..is that picture kosher?
    I don't see a pickle.
    Quote Quote  
  6. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    Originally Posted by poisondeathray View Post
    Originally Posted by budwzr View Post
    Umm..is that picture kosher?
    Looks kosher to me (I can move the pointer to the bum if you want , budwzr )
    Oh, OK. For a minute I thought I could see somebody doing the horizontal mambo.
    Quote Quote  
  7. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    Originally Posted by jagabo View Post
    Originally Posted by budwzr View Post
    Umm..is that picture kosher?
    I don't see a pickle.
    It's under the sandwich, hahaha.
    Quote Quote  
  8. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    I'm gonna make up a bunch of those gifs to have on hand, for times like this.
    Quote Quote  
  9. Originally Posted by budwzr View Post
    I'm gonna make up a bunch of those gifs to have on hand, for times like this.

    don't forget to add in the pickle!
    Quote Quote  
  10. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    Originally Posted by poisondeathray View Post
    Originally Posted by budwzr View Post
    I'm gonna make up a bunch of those gifs to have on hand, for times like this.

    don't forget to add in the pickle!
    Hahaha, and some bearded clam tacos? With horseradish "sauce"? You're gonna get me kicked out of this honky-tonk. If I ever get busted, and they find that on my computer, I'll be doing 10 to life in Camarillo.
    Last edited by budwzr; 3rd Jun 2013 at 23:06.
    Quote Quote  
  11. I could've uploaded a more boring, kosher screenshot of the girl's knee taking up the whole frame if I looked hard enough but then I wouldn't get to hear you children with all your euphemisms for bodily functions.

    PDR, I have both PS and GIMP, how do I do this on PS because I've tried.

    Doing a batch operation will be a little annoying because the video is 180,000 frames but since it's old VHS crap resolution I doubt it'll be a drag.

    Reason I'm doing this is 'cuz I found that porn vid that I got from Kazaa 10 years ago as a kid, remembering how download speeds were so painfully slow and how a 200 MB MPG file back then was a goddamn piece of elite collector gold. Before deleting it right now I wondered how it might work out with ISDN bitrates with modern codecs. MPEG-1 actually was designed to be streamed at 64-128kb/s online and it worked for stationary videos (web conferences). Since this video is 90% monochrome and most of it stationary, I wanted to see if this would work out.
    Quote Quote  
  12. Compression was already addressed in the 1st reply - Changing each value of Hue to a set value alone is not going to have much of an affect

    To batch process, you could make a batch action in photoshop, but it's going to be 10x easier in a video editor that has "hue" as a layer blend mode option. AE has it, and Premiere has it as well. I don't think vegas has it

    It should be "doable" in avisynth with the correct math (you can convert to HSL/HSB/HSV to RGB back & forth in programs like imagemagick and separate channels so it should be possible to do an H swap , convert back to RGB)
    Quote Quote  
  13. Blender has it too

    http://blenderartists.org/forum/showthread.php?293905-Blend-and-interpolation-modes-for-the-manual

    It gives the formulas as well, so maybe someone like jagabo or gavino can translate it to "avisynth-ese"


    Hue - mix(a, HSV(bH, aS, aV), f) - Mixes hue of the blend layer into the base layer

    Quote Quote  
  14. Member budwzr's Avatar
    Join Date
    Apr 2007
    Location
    City Of Angels
    Search Comp PM
    Can ya'll fix this one too? I'm trying to get it into the film festival next month. I was throwing peanuts for hours, and all birds showed up, then FINALLY I got a squirrel.

    Think it's worth money?

    Quote Quote  
  15. Originally Posted by poisondeathray View Post
    Compression was already addressed in the 1st reply - Changing each value of Hue to a set value alone is not going to have much of an affect
    In my experience, chroma noise punishes compression severely. I once cleaned up this guy's wedding footage on VHS with heavy chroma noise. Before denoising, x264 at CRF18 needed 1500 kb/s for 288p. After denoising, it needed only 180 kb/s. Encoding speed was much faster too.

    This video doesn't have heavy chroma noise but since I'm going low bitrate, even 10 kb/s of entropy is a big difference. I'm seeing if HIGH quality is finally achievable for 240p at ISDN bitrates.

    To batch process, you could make a batch action in photoshop, but it's going to be 10x easier in a video editor that has "hue" as a layer blend mode option. AE has it, and Premiere has it as well. I don't think vegas has it
    Just to clarify, will I need also 180,000 frames of solid color frame to blend layer to?

    Thanks for the PS tip. Check this photo out. Goddamn beautiful, no? Who's the wise-ass who said monochrome has to be black-n-white? It should've always been blue-n-white.
    Image Attached Thumbnails Click image for larger version

Name:	grassblue.JPG
Views:	5518
Size:	204.8 KB
ID:	18245  

    Quote Quote  
  16. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    Very nice picture! That's pretty much what I was talking about, wrt DUOTONE, BTW.

    Scott
    Quote Quote  
  17. Originally Posted by Mephesto View Post
    Originally Posted by poisondeathray View Post
    Compression was already addressed in the 1st reply - Changing each value of Hue to a set value alone is not going to have much of an affect
    In my experience, chroma noise punishes compression severely. I once cleaned up this guy's wedding footage on VHS with heavy chroma noise. Before denoising, x264 at CRF18 needed 1500 kb/s for 288p. After denoising, it needed only 180 kb/s. Encoding speed was much faster too.

    This video doesn't have heavy chroma noise but since I'm going low bitrate, even 10 kb/s of entropy is a big difference.

    It depends on the degree of chroma noise. The difference between your original, and the set hue version will be tiny compared to luma denoise. But if 10kb/s is significant for you, I guess this is an interesting experiment for you

    I'm seeing if HIGH quality is finally achievable for 240p at ISDN bitrates.
    But you need a high quality source, for a high quality final product...


    To batch process, you could make a batch action in photoshop, but it's going to be 10x easier in a video editor that has "hue" as a layer blend mode option. AE has it, and Premiere has it as well. I don't think vegas has it
    Just to clarify, will I need also 180,000 frames of solid color frame to blend layer to?
    No, in a video editor, you just make the solid layer the same length as the video.

    In photoshop you could batch the creation of a the top layer solid color (you don't physically need 180,000 frames of that solid color stored on a HDD)

    It literally takes seconds to do in a video editor or AE, but for photoshop to batch 180,000 frames is no fun task.... even if the resolution is tiny.... eitherway it's going to take a while and lot's of HDD space using photoshop. In both cases I assume you will encode to a video format, so that part is the same
    Quote Quote  
  18. How do I batch an operation like this on Photoshop? Step by step.
    I got the 180,000 frames. Over 40GB, holy SHIT. To think I was bitching about it being 200x smaller as too large and that I need it 1000x smaller... (which is what 128 kb/s would achieve.)
    Doing wanton experiments like this really teaches you respect for the technology and all the pain and suffering mathematicians went thru for the last 50 years to bring us the Frourier/DCT transforms today just so we can share a million retarded cat videos and unerotic bullshit porn like the video I'm working with. And on top of that to complain how long it takes to transfer or that the quality isn't good enough.
    You almost understand why the intelligent tend to have superiority complexes and contempt for most peasants.
    Last edited by Mephesto; 5th Jun 2013 at 17:46.
    Quote Quote  
  19. Search for tutorials on "batch action" and "photoshop" there should be step by step tutorials . Or download an AE or Premiere trial and do it in seconds
    Quote Quote  
  20. No I mean how do you automate this specific action? I went to File > Automate > Batch but Hueblending with a specific layer wasn't on the action list.
    Quote Quote  
  21. You record a new set of actions and call it whatever you want e.g. hue swap or whatever

    eg.
    http://psd.tutsplus.com/tutorials/photo-effects-tutorials/batch-editing-and-automated-...-in-photoshop/
    Quote Quote  
  22. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    Do a single frame setup & test:
    *Load a representative copy of your source image.
    Use the eyedropper to pick your hue. Save it as a swatch.
    *Convert the mode to 8bit Greyscale.
    *Convert the mode to Duotone, and set up your second color (besides Black) by loading the swatch.
    Adjust the saturation curves to your liking (naming each color), and save the combo as a Duotone preset (named & put into common folder).
    *Convert to standard 24bit RGB.
    Save-as your test (to BMP, PNG, JPG, etc).

    Then, do a trial run on either the same original, or on a similar clip, this time Recording your actions. When converting to Duotone, load your saved preset. (Items used in action denoted with *)

    Then, making sure to move those other test/trial ones out of the way, do:
    Automate | Batch, and choose your Action, find your pic sequence folder, and adjust your options (such as destination "Folder") and do [OK].

    It should work something like this...(video)

    Scott
    Image Attached Files
    Last edited by Cornucopia; 6th Jun 2013 at 11:52.
    Quote Quote  
  23. You record a new set of actions and call it whatever you want e.g. hue swap or whatever

    eg.
    http://psd.tutsplus.com/tutorials/photo-effects-tutorials/batch-editing-and-automated-...-in-photoshop/
    Sweet, I didn't know this. Thanks.

    Cornucopia, that's a lot of steps, lol. I only needed to record 4 at the expense of not being able to use the paste key for a few hours. Load cyan solid layer from the clipboard, change blend type to hue, merge layers, save image.

    So the batch is done and the video looks great. It removed a lot of chroma junk, but because the fix was hue-only there are parts that were left grey so there's a little bit of patchiness.

    I took this a step further though and changed the hue to 15 for human skin. To make it look right I have to increase brightness but I wanna avoid clipping.

    Is there an avisynth tool that works with RGB32 that can selectively increase brightness? I wanna avoid brightening very light pixels that will get clipped.
    Quote Quote  
  24. Originally Posted by Mephesto View Post
    Is there an avisynth tool that works with RGB32 that can selectively increase brightness? I wanna avoid brightening very light pixels that will get clipped.
    As usual, use Overlay() with a mask based on the luma channel.
    Quote Quote  
  25. Originally Posted by Mephesto View Post
    Originally Posted by poisondeathray View Post
    Compression was already addressed in the 1st reply - Changing each value of Hue to a set value alone is not going to have much of an affect
    In my experience, chroma noise punishes compression severely.
    But converting all pixels to the same hue is not going to flatten the U or V channels (the colorspace in which video compression works) except for 4 particular hues. Using your blue landscape as an example:

    Click image for larger version

Name:	blue.jpg
Views:	1068
Size:	61.4 KB
ID:	18258

    As you can see there's still lots of signal in both the U (right) and V (bottom) channels. Visualizing the YUV planes as greyscale:

    Click image for larger version

Name:	blueplanes.jpg
Views:	1062
Size:	25.6 KB
ID:	18260

    All three contains recognizable image data.

    But at particular hues you can eliminate all detail from either the U or V plane. Your image after Tweak(hue=-41) for example:

    Click image for larger version

Name:	violet.jpg
Views:	1049
Size:	54.6 KB
ID:	18261

    Click image for larger version

Name:	violetplanes.jpg
Views:	1065
Size:	23.7 KB
ID:	18262

    And, of course, greyscale flattens both the U and V planes.
    Last edited by jagabo; 6th Jun 2013 at 06:50.
    Quote Quote  
  26. BTW - If you have the extended version of photoshop, you can open video directly as well .

    For types that it can't natively open (e.g. maybe mkv container etc...), you can use avfs and it will be able to open it . But you can only export though quicktime videotype options (or image sequence) . I suppose this would have been faster
    Quote Quote  
  27. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    "All those extra steps" are just done once at the very beginning to set up the preset(s). If you already have presets, then there's only 3-4 steps in the action, and only a few steps to start the automation. Whatever.
    I did export to image sequence in Vdub (and then later re-import of image sequence for the completed work) to get this to work - was a breeze. I'm sure there are ways to script this in AVISynth, etc. as well, but I just haven't had the time to look into that. Down the road...

    Scott
    Quote Quote  
  28. As usual, use Overlay() with a mask based on the luma channel.
    Ok how shall I create a luma mask? I want everything 40 pixels darker from absolute white and up to be left alone. Not sure if I should do the same margin with the opposite end of the luma. My guess is this'll create banding.

    I know flattening the hue to a wrong value won't flatten the UV. So what? I wanted to get rid of fluctuations of the chroma in entire frames a.k.a noise and flattening does just that and decreases entropy.

    Btw, can you help me interpret those kaleidoscopic graphs you have there? Cuz I'm not sure what I'm looking at. Direction and brightness of the purple means what? Why does it have a bulge in the middle? What part of the picture does that part represent?
    Quote Quote  
  29. Originally Posted by Mephesto View Post
    how shall I create a luma mask? I want everything 40 pixels darker from absolute white and up to be left alone.
    Something like:

    Code:
     mask = GreyScale().RGBAdjust(rb=-215, gb=-215, bb=-215).RGBAdjust(r=255, g=255, b=255)
    That will give you a mask where all pixels that were darker than or equal to 215 are now black, all that were brighter than 215 are now white. You probably won't want such a sharp transition so adjust the values to your needs.

    Then use Overlay():

    Code:
     Overlay(bright_image, original_image, 0, 0, mask)
    Originally Posted by Mephesto View Post
    can you help me interpret those kaleidoscopic graphs you have there?
    A waveform monitor of the luma channel is basically a graph of the brightness of each pixel. Consider one horizontal line of pixels. Some are brighter, some are darker. Instead of showing the brightness of each pixel as brightness, transform that line of pixels to a graph where the y axis represents the brightness of the pixel (0 at the bottom, 255 at the top), the x axis the position of the pixel across the line.

    https://forum.videohelp.com/threads/340804-colorspace-conversation-elaboration?p=212156...=1#post2121568

    Now draw the same graph for every scan line of the image, all drawn on top of each other. In the final graph bright areas indicate many pixels had that brightness in that column. Darker areas indicate fewer pixels had that brightness. Black areas indicate no pixels had that brightness.

    If you view a video waveform on an oscilloscope you have a waveform monitor. The beam moves at constant velocity from left to right. With increased voltage (brighter) the beam moves up on the screen. With decreased voltage (darker) it moves down. With each scanline the beam starts again from the left (you trigger on the horizontal sync pulse). Persistence of the phosphors essentially adds many traces together.

    When VideoScope draws the waveform graph at the right edge of the frame it works in columns rather than rows, with 0 at the left, 255 at the right.

    Chroma waveform monitors are the same thing except for the chroma channels.

    Finally, the UV vector scope plot is an X,Y plot of U and V values. U from 0-255 horizontally, V from 0 to 255 vertically. Grey is in the middle of the graph. Saturated colors at the edges.
    Last edited by jagabo; 6th Jun 2013 at 22:42.
    Quote Quote  
  30. I have a hue flattening approximation function. It's not perfect because I approximate the radius of the U,V vector with (abs(U)+abs(V)) * 0.85 rather than sqrt(U^2 + V^2). So some colors become a little more saturated, some a little less. But overall it looks pretty close to a true hue flattening:

    Code:
    function FlattenHue(clip src, int desired_hue)
    {
        desired_hue  = default(desired_hue,  0)
    
        # get length of V component
        V=VtoY(src)
        V=Overlay(ColorYUV(V, off_y=-128), Invert(V).ColorYUV(off_y=-128), mode="add")
    
        # get length of U component
        U=UtoY(src)
        U=Overlay(ColorYUV(U, off_y=-128), Invert(U).ColorYUV(off_y=-128), mode="add")
    
        # approximate radius with (U+V)*0.85, rather than sqrt(U*U+V*V)
        # and add 128 to get it back to the center of the U,V plane
        U=Overlay(U, V, mode="add").ColorYUV(gain_y=0).ColorYUV(gain_y=-38).ColorYUV(off_y=128)
    
        # create an empty V channel
        V=ColorYUV(U, cont_y=-256)
    
        # put U and V channels back with the luma
        YtoUV(U, V, src)
    
        # adjust to the desired hue
        Tweak(hue=-desired_hue-108)
    }
    Sample video of the filter in action attached. Note, this was not a single hue image rotated with Tweak(hue=x). It was a full color image.

    Name:  image.png
Views: 1432
Size:  281.1 KB

    The filter flattened the hue to the requested value. Animate() was used to test all 360 values.

    Code:
    ImageSource("image.png") # full color image
    ConvertToYV12()
    Animate(0, 360, "FlattenHue", 0, 360)
    Image Attached Files
    Last edited by jagabo; 8th Jun 2013 at 17:54.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!