SSIM
From Avisynth wiki
(Difference between revisions)
(add archive links) |
(add 64-bit version and archive link) |
||
(9 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
{{FilterCat5|External_filters|Plugins|Plugins_x64|Other_filters|Debugging/Diagnostic_filters}} | {{FilterCat5|External_filters|Plugins|Plugins_x64|Other_filters|Debugging/Diagnostic_filters}} | ||
{{Filter3 | {{Filter3 | ||
− | | [http://web.archive.org/web/20060507012947/http://perso.wanadoo.fr/reservoir/ Lefungus], | + | | [http://web.archive.org/web/20060507012947/http://perso.wanadoo.fr/reservoir/ Lefungus], On2Tech |
| v0.25.1.0 | | v0.25.1.0 | ||
− | | 3=[http://www. | + | | 3=[http://www.mediafire.com/file/xad0ddqt3vu9ado/SSIM_0251.7z/file SSIM_0251.7z] |
| 4=Debug filter | | 4=Debug filter | ||
| 5= | | 5= | ||
Line 13: | Line 13: | ||
<br> | <br> | ||
== Requirements == | == Requirements == | ||
− | * AviSynth | + | * [x86] [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.6.0] |
− | * x64 | + | * [x64] [[AviSynth+]] |
* Supported color formats: [[YV12]] | * Supported color formats: [[YV12]] | ||
<br> | <br> | ||
+ | |||
== [[Script variables|Syntax and Parameters]] == | == [[Script variables|Syntax and Parameters]] == | ||
:{{Template:FuncDef|SSIM (clip, clip, string, string, int "lumimask", int "scaled")}} | :{{Template:FuncDef|SSIM (clip, clip, string, string, int "lumimask", int "scaled")}} | ||
Line 24: | Line 25: | ||
:{{Template:FuncDef|SSIM_V_FRAME (clip, clip)}} | :{{Template:FuncDef|SSIM_V_FRAME (clip, clip)}} | ||
<br> | <br> | ||
+ | ::{{Par2| |clip| }} | ||
::{{Par2| |clip| }} | ::{{Par2| |clip| }} | ||
:::clip1 and clip2 are the reference clip and the compressed clip. | :::clip1 and clip2 are the reference clip and the compressed clip. | ||
Line 34: | Line 36: | ||
<br> | <br> | ||
::{{Par2|lumimask|int|1}} | ::{{Par2|lumimask|int|1}} | ||
− | :::This filter is designed to compute an SSIM value by | + | :::This filter is designed to compute an SSIM value by three methods, the original one, and a "enhanced" one that weight these results by lumimasking. |
− | :::0 : | + | :::0 : lumamasking disabled |
− | :::1 : | + | :::1 : lumamasking enabled (original method from SSIM v0.24) |
+ | :::2 : lumamasking enabled (new method as proposed by On2Tech) - see discussion [https://forum.doom9.org/showthread.php?t=92532 here] and [https://forum.doom9.org/showthread.php?p=626354#post626354 here] for more info. | ||
<br> | <br> | ||
::{{Par2|scaled|int|1}} | ::{{Par2|scaled|int|1}} | ||
Line 43: | Line 46: | ||
:::1 : true | :::1 : true | ||
<br> | <br> | ||
+ | |||
==Examples== | ==Examples== | ||
[[TODO]] | [[TODO]] | ||
+ | SSIM(clip1, clip2, "results.csv", "globalSSIM.txt", lumimask=1, scaled=1) | ||
<br> | <br> | ||
+ | |||
== Changelog == | == Changelog == | ||
Version Date Changes<br> | Version Date Changes<br> | ||
− | v0.25.1.0 | + | v0.25.1.0 2020/03/31 - changes by [https://forum.doom9.org/showthread.php?t=173259 Groucho2004] |
+ | - update to avisynth 2.6 api, latest headers from avs+ | ||
+ | - x64 binary | ||
+ | v0.25.1.0 - Modifications by On2Tech, see discussion [https://forum.doom9.org/showthread.php?t=92532 here] and [https://forum.doom9.org/showthread.php?p=658994#post658994 here] | ||
- add "SSIM_FRAME", "SSIM_Y_FRAME", "SSIM_U_FRAME", "SSIM_V_FRAME" functions | - add "SSIM_FRAME", "SSIM_Y_FRAME", "SSIM_U_FRAME", "SSIM_V_FRAME" functions | ||
v0.24a 2005/04/05 - change "lumimask" and "scaled" from bool to integer | v0.24a 2005/04/05 - change "lumimask" and "scaled" from bool to integer | ||
Line 58: | Line 67: | ||
v0.21 - flag for globalSSIM added | v0.21 - flag for globalSSIM added | ||
- some checks added | - some checks added | ||
− | v0.20 2003/09/10 - Updated. It is somewhat faster, and include lumimasking. | + | v0.20 2003/09/10 - Updated. It is somewhat faster, and include lumimasking. |
+ | v0.10 2003/07/29 - Initial release [https://forum.doom9.org/showthread.php?p=350877#post350877] | ||
+ | - No vectorization yet, so it's quite slow. | ||
+ | - Thanks Zhou Wang and Mfa for their code ! | ||
<br> | <br> | ||
Line 67: | Line 79: | ||
!!width="150px"| Download | !!width="150px"| Download | ||
!!width="150px"| Mirror | !!width="150px"| Mirror | ||
+ | |- | ||
+ | !v0.25.1.0 (2020) | ||
+ | |[http://www.mediafire.com/file/xad0ddqt3vu9ado/SSIM_0251.7z/file SSIM_0251.7z] | ||
+ | |[https://web.archive.org/web/20200421063350if_/http://s000.tinyupload.com/download.php?file_id=93542100319254457910&t=9354210031925445791055709 SSIM_0251.7z] | ||
|- | |- | ||
!v0.25.1.0 | !v0.25.1.0 |
Latest revision as of 06:36, 21 April 2020
Abstract | |
---|---|
Author | Lefungus, On2Tech |
Version | v0.25.1.0 |
Download | SSIM_0251.7z |
Category | Debug filter |
License | |
Discussion | Doom9 Thread |
Contents |
[edit] Description
A filter that compute an objective video quality metric between two videos. Based on SSIM work from Zhou Wang.
[edit] Requirements
- [x86] AviSynth+ or AviSynth 2.6.0
- [x64] AviSynth+
- Supported color formats: YV12
[edit] Syntax and Parameters
- SSIM (clip, clip, string, string, int "lumimask", int "scaled")
- SSIM_FRAME (clip, clip)
- SSIM_Y_FRAME (clip, clip)
- SSIM_U_FRAME (clip, clip)
- SSIM_V_FRAME (clip, clip)
- clip =
- clip =
- clip1 and clip2 are the reference clip and the compressed clip.
- clip =
- string = "results.csv"
- The file where obtained SSIM values will be written (this can be easily read in excel or notepad for those unfamiliar with the comma separated variables format)
- string = "results.csv"
- string = "globalSSIM.txt"
- The file where global SSIM values will be written.
- string = "globalSSIM.txt"
- int lumimask = 1
- This filter is designed to compute an SSIM value by three methods, the original one, and a "enhanced" one that weight these results by lumimasking.
- 0 : lumamasking disabled
- 1 : lumamasking enabled (original method from SSIM v0.24)
- 2 : lumamasking enabled (new method as proposed by On2Tech) - see discussion here and here for more info.
- int lumimask = 1
- int scaled = 1
- The global score is scaled from 0 to 100 instead of 0 to 1. Set to false if you prefer it non-scaled.
- 0 : false
- 1 : true
- int scaled = 1
[edit] Examples
SSIM(clip1, clip2, "results.csv", "globalSSIM.txt", lumimask=1, scaled=1)
[edit] Changelog
Version Date Changes
v0.25.1.0 2020/03/31 - changes by Groucho2004 - update to avisynth 2.6 api, latest headers from avs+ - x64 binary v0.25.1.0 - Modifications by On2Tech, see discussion here and here - add "SSIM_FRAME", "SSIM_Y_FRAME", "SSIM_U_FRAME", "SSIM_V_FRAME" functions v0.24a 2005/04/05 - change "lumimask" and "scaled" from bool to integer - add "lumimask=2" mode v0.24 2004/06/06 - various bugfixes v0.23 - minor memory leak removed v0.22 - added "scaled" parameter v0.21 - flag for globalSSIM added - some checks added v0.20 2003/09/10 - Updated. It is somewhat faster, and include lumimasking. v0.10 2003/07/29 - Initial release [1] - No vectorization yet, so it's quite slow. - Thanks Zhou Wang and Mfa for their code !
[edit] Archived Downloads
Version | Download | Mirror |
---|---|---|
v0.25.1.0 (2020) | SSIM_0251.7z | SSIM_0251.7z |
v0.25.1.0 | SSIM0.25.1.0.rar | SSIM0.25.1.0.rar |
v0.24a | ssim-0.24a.zip | ssim-0.24a.zip |
v0.24 | Binary: SSIM-0.24.rar /// Source: SSIMSrc-0.24.rar | |
v0.23 | Binary: SSIM-0.23.rar /// Source: SSIMSrc-0.23.rar |
[edit] External Links
Back to External Filters ←