IENT / YUView

The Free and Open Source Cross Platform YUV Viewer with an advanced analytics toolset
http://ient.github.io/YUView
Other
1.79k stars 354 forks source link

Different two 10bit yuv gives MSE=0 #447

Closed chkngit closed 2 years ago

chkngit commented 2 years ago

Describe the bug entered two yuvs in 10bit mode. tools does not report a difference

Expected behavior other tools report difference in some frames

ChristianFeldmann commented 2 years ago

Thank you for the report. Will look into that. Probably a simple bug with the difference calculation routine.

chkngit commented 2 years ago

thank you also it would be very nice to have a frame basis report like this one below, when comparing YUVs

Performing sequence comparison type: PSNR reference: "E:\test\8_M9_640x360.bindec.yuv" subject: "E:\test\9_M9_640x360.bindec.yuv" block size: 640x360

frame y cb cr


00000 49.24 52.08 51.71 00001 44.12 51.35 51.63 00002 44.11 51.07 51.03 00003 43.53 50.02 50.98 00004 43.80 50.38 51.00 00005 43.37 50.22 50.88 00006 44.02 48.23 47.64 00007 43.62 48.11 47.63 00008 44.20 48.19 47.54 00009 43.58 47.93 47.50 00010 43.83 47.67 47.28 00011 43.58 47.67 47.34 00012 43.87 48.29 47.58 00013 43.89 48.02 47.87 00014 43.97 48.07 47.64 00015 43.92 48.02 47.73 00016 41.91 49.26 48.15 00017 41.74 49.10 48.25 00018 41.72 48.94 48.39 00019 41.74 48.96 48.45 00020 41.65 49.08 48.24 00021 41.55 49.06 48.32 00022 41.60 49.10 48.34 00023 41.66 49.04 48.49 00024 41.63 48.94 48.38 00025 41.63 48.85 48.24 00026 41.62 49.00 48.39 00027 41.51 49.20 48.43 00028 41.74 48.95 48.38 00029 41.63 49.03 48.39 00030 41.81 49.09 48.38 00031 41.76 49.06 48.39 00032 41.70 48.89 48.41 00033 41.64 48.99 48.31 00034 41.68 48.88 48.36 00035 41.74 48.83 48.52 00036 41.63 49.02 48.15 00037 41.48 49.00 48.09 00038 41.71 49.07 48.30 00039 41.63 49.05 48.20 00040 41.63 48.85 48.33 00041 41.52 48.85 48.33 00042 41.85 48.93 48.38 00043 41.78 48.93 48.30 00044 41.72 48.88 48.55 00045 41.66 48.78 48.49 00046 41.72 48.89 48.59 00047 41.61 48.88 48.56 00048 41.76 49.08 48.33 00049 41.71 49.16 48.39 00050 41.77 48.96 48.36 00051 41.83 48.96 48.36 00052 41.70 49.14 48.37 00053 41.55 49.16 48.36 00054 41.71 49.21 48.46 00055 41.67 49.27 48.45 00056 41.79 49.06 48.31 00057 41.58 49.07 48.32 00058 41.74 49.18 48.36 00059 41.85 49.19 48.34

sequence average: y:42.35 cb:49.04 cr:48.51

Comparison finished

ChristianFeldmann commented 2 years ago

Hi. Sorry for the long delay but its hard for me right now to find time for this. I have looked into the problem and I am not entirely sure if I found exactly your problem. I have loaded two 10 bit YUV files and put them into a difference item. Then I am getting MSE values per frame in the info box. The only thing that seems to not work is the report of difference values in the Zoom Box: image

ChristianFeldmann commented 2 years ago

Ok I think this may have been just a problem with the layout system and my highDPI display or something. I tried the latest develop build and Qt 6 (which has some layout fixes) and there erything looks good: image

ChristianFeldmann commented 2 years ago

If you still get the error could you please give some more detail? Are the YUV Files 4:2:0 or maybe one is something else?

chkngit commented 2 years ago

it works fine now with the latest revision. thanks

chkngit commented 2 years ago

is there a plan to report psnr for each frame of the diff sequence?

ChristianFeldmann commented 2 years ago

Ok nice. Thanks for checking. Not sure entirely what fixed it then to be honest. I mean from the MSE values you could easily calculate the PSNR values but YUView could also do that. Not sure why I did not implement that ... will do that.

ChristianFeldmann commented 2 years ago

So finally I fixed this. The PSNR is now also calculated and the values are displayed in a better way. There was a lso a problem that the MSE values for U and V were not scaled correctly.