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

Analyze Image Qualities with Signalstats #6

Open
denjello opened this issue Jun 24, 2015 · 0 comments
Open

Analyze Image Qualities with Signalstats #6

denjello opened this issue Jun 24, 2015 · 0 comments

Comments

@denjello
Copy link
Owner

I think it would be helpful to compare the YUV Median values for a start ...

e.g.

ffprobe -f lavfi movie=HDV_0537.MP4,signalstats='stat=tout+vrep+brng' -show_frames

RESULTS

[FRAME]
media_type=video
stream_index=0
key_frame=1
pkt_pts=469200
pkt_pts_time=15.640000
pkt_dts=469200
pkt_dts_time=15.640000
best_effort_timestamp=469200
best_effort_timestamp_time=15.640000
pkt_duration=1200
pkt_duration_time=0.040000
pkt_pos=28812600
pkt_size=3110400
width=1920
height=1080
pix_fmt=yuv420p
sample_aspect_ratio=1:1
pict_type=I
coded_picture_number=0
display_picture_number=0
interlaced_frame=0
top_field_first=0
repeat_pict=0
TAG:lavfi.signalstats.YMIN=9
TAG:lavfi.signalstats.YLOW=18
TAG:lavfi.signalstats.YAVG=63.1515
TAG:lavfi.signalstats.YHIGH=166
TAG:lavfi.signalstats.YMAX=255
TAG:lavfi.signalstats.UMIN=95
TAG:lavfi.signalstats.ULOW=113
TAG:lavfi.signalstats.UAVG=123.468
TAG:lavfi.signalstats.UHIGH=130
TAG:lavfi.signalstats.UMAX=170
TAG:lavfi.signalstats.VMIN=103
TAG:lavfi.signalstats.VLOW=126
TAG:lavfi.signalstats.VAVG=135.658
TAG:lavfi.signalstats.VHIGH=152
TAG:lavfi.signalstats.VMAX=191
TAG:lavfi.signalstats.SATMIN=0
TAG:lavfi.signalstats.SATLOW=1
TAG:lavfi.signalstats.SATAVG=10.6546
TAG:lavfi.signalstats.SATHIGH=28
TAG:lavfi.signalstats.SATMAX=65
TAG:lavfi.signalstats.HUEMED=149
TAG:lavfi.signalstats.HUEAVG=149.232
TAG:lavfi.signalstats.YDIF=1.88121
TAG:lavfi.signalstats.UDIF=2.75276
TAG:lavfi.signalstats.VDIF=2.69061
TAG:lavfi.signalstats.TOUT=1.10918e-05
TAG:lavfi.signalstats.VREP=0
TAG:lavfi.signalstats.BRNG=0.00272473
[/FRAME]

According to the ffmpeg manual these are the definitions:

YMIN: Display the minimal Y value contained within the input frame. Expressed in range of [0-255].

YLOW: Display the Y value at the 10% percentile within the input frame. Expressed in range of [0-255].

YAVG: Display the average Y value within the input frame. Expressed in range of [0-255].

YHIGH: Display the Y value at the 90% percentile within the input frame. Expressed in range of [0-255].

YMAX: Display the maximum Y value contained within the input frame. Expressed in range of [0-255].

UMIN: Display the minimal U value contained within the input frame. Expressed in range of [0-255].

ULOW: Display the U value at the 10% percentile within the input frame. Expressed in range of [0-255].

UAVG: Display the average U value within the input frame. Expressed in range of [0-255].

UHIGH: Display the U value at the 90% percentile within the input frame. Expressed in range of [0-255].

UMAX: Display the maximum U value contained within the input frame. Expressed in range of [0-255].

VMIN: Display the minimal V value contained within the input frame. Expressed in range of [0-255].

VLOW: Display the V value at the 10% percentile within the input frame. Expressed in range of [0-255].

VAVG: Display the average V value within the input frame. Expressed in range of [0-255].

VHIGH: Display the V value at the 90% percentile within the input frame. Expressed in range of [0-255].

VMAX: Display the maximum V value contained within the input frame. Expressed in range of [0-255].

SATMIN: Display the minimal saturation value contained within the input frame. Expressed in range of [0-~181.02].

SATLOW: Display the saturation value at the 10% percentile within the input frame. Expressed in range of [0-~181.02].

SATAVG: Display the average saturation value within the input frame. Expressed in range of [0-~181.02].

SATHIGH: Display the saturation value at the 90% percentile within the input frame. Expressed in range of [0-~181.02].

SATMAX: Display the maximum saturation value contained within the input frame. Expressed in range of [0-~181.02].

HUEMED: Display the median value for hue within the input frame. Expressed in range of [0-360].

HUEAVG: Display the average value for hue within the input frame. Expressed in range of [0-360].

YDIF: Display the average of sample value difference between all values of the Y plane in the current frame and corresponding values of the previous input frame. Expressed in range of [0-255].

UDIF: Display the average of sample value difference between all values of the U plane in the current frame and corresponding values of the previous input frame. Expressed in range of [0-255].

VDIF: Display the average of sample value difference between all values of the V plane in the current frame and corresponding values of the previous input frame. Expressed in range of [0-255].

‘tout’: Identify temporal outliers pixels. A temporal outlier is a pixel unlike the neighboring pixels of the same field. Examples of temporal outliers include the results of video dropouts, head clogs, or tape tracking issues.

‘vrep’: Identify vertical line repetition. Vertical line repetition includes similar rows of pixels within a frame. In born-digital video vertical line repetition is common, but this pattern is uncommon in video digitized from an analog source. When it occurs in video that results from the digitization of an analog source it can indicate concealment from a dropout compensator.

‘brng’: Identify pixels that fall outside of legal broadcast range.

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

No branches or pull requests

1 participant