DePulse

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(DePulse and DePulseC: add documentation (translated from Japanese; Google Translate))
 
(add x86/x64 version)
 
(3 intermediate revisions by one user not shown)
Line 1: Line 1:
{{FilterCat4|External_filters|Plugins|Restoration_filters|Film_Damage}}
+
{{FilterCat5|External_filters|Plugins|Plugins_x64|Restoration_filters|Film_Damage}}
 
{{Filter3
 
{{Filter3
|  
+
|1=hanamahanama
| 2005/04/11
+
|2=2005/04/11
| [http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/depulse.zip depulse.zip]<br>[http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/DePulseC05061403.zip DePulseC05061403.zip]
+
|3=[x86 DePulse]: [http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/depulse.zip depulse.zip]
| VHS Restoration
+
--------
| Open source
+
[x86 DePulseC]: [http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/DePulseC05061403.zip DePulseC05061403.zip]
|6=}}
+
--------
 +
[x86/x64 DePulse]: [https://web.archive.org/web/20221124201337if_/https://files.videohelp.com/u/223002/Depulse_25_26_x86_x64_dll_v1.01_20210901.zip Depulse_25_26_x86_x64_dll_v1.01_20210901.zip]
 +
|4=VHS Restoration
 +
|5=Open source
 +
|6=[https://forum.doom9.org/showthread.php?t=151426 Doom9 Forum]}}
 
<br>
 
<br>
 
== Description ==
 
== Description ==
[[DePulse]] reduces the white noise that gets in the image. It seems to be the noise of the old fluorescent lamp or the engine of the motorcycle.
+
[[DePulse]] is dropout remover, removes white/black noise horizontal streaking in analogue captures. Spatio-Temporal.
  
'''[[DePulse#DePulseC|DePulseC]]''' is sister product of [[DePulse]]. Just applying the same algorithm to the color difference. Reduces color pulse noise. Integrate with DePulse.
+
'''[[DePulse#DePulseC|DePulseC]]''' is sister product of '''[[DePulse#DePulse|DePulse]]'''. Just applying the same algorithm to the color difference. Reduces color pulse noise. Integrate with DePulse.
  
<!-- MAYNOTBERIGHT: Depulse is a dropout (also known as comets) reduction filter. Dropouts mainly present themselves as a horizontal line sometimes teardrop shaped, usually bright that pops on screen for one or two frames that can be staggered in intensity. -->
+
Dropouts mainly present themselves as a horizontal line sometimes teardrop shaped, usually bright that pops on screen for one or two frames that can be staggered in intensity.
 
+
'''NOTE: documentation was translated from the Japanese readme.'''
+
  
 
<br>
 
<br>
 +
 
== Requirements ==
 
== Requirements ==
 
* [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.5.8 or greater]
 
* [x86]: [[AviSynth+]] or [https://sourceforge.net/projects/avisynth2/ AviSynth 2.5.8 or greater]
 +
* [X64]: [[AviSynth+]]
 
*Supported color formats: [[YUY2]]
 
*Supported color formats: [[YUY2]]
*Top field interlacing only
 
 
<br>
 
<br>
  
Line 30: Line 33:
 
<br>
 
<br>
 
::{{Par2| |clip| }}
 
::{{Par2| |clip| }}
:::Input clip.
+
:::Input clip must be YUY2. Assumes TFF (top field first) field order interlacing.
 
<br>
 
<br>
 
::{{Par2|h|int|180}}
 
::{{Par2|h|int|180}}
:::Luminance below <code>h</code> is not subject to white noise.
+
:::Pixel brightness values greater than <code>h</code> (high) are targeted as white noise.
 +
:::If a pixel (t) is target'ed as white noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are less than (t - d) the target pixel t is depulsed.
 
:::Range: 0-255
 
:::Range: 0-255
 
<br>
 
<br>
 
::{{Par2|l|int|60}}
 
::{{Par2|l|int|60}}
:::Luminance above <code>l</code> is not subject to black noise.
+
:::Pixel brightness values less than <code>l</code> (low) are targeted as black noise.
 +
:::If a pixel (t) is target'ed as black noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are greater than (t + d) the target pixel t is depulsed.
 
:::Range: 0-255
 
:::Range: 0-255
 
<br>
 
<br>
Line 45: Line 50:
 
<br>
 
<br>
 
::{{Par2|debug|bool|false}}
 
::{{Par2|debug|bool|false}}
:::When debug is set to true, pink and green color will be added to the part determined as white and black noise.
+
:::If <code>debug=true</code>, pixels judged to be black or white noise are coloured pink or green.
 
<br>
 
<br>
 
===DePulseC===
 
===DePulseC===
Line 51: Line 56:
 
<br>
 
<br>
 
::{{Par2| |clip| }}
 
::{{Par2| |clip| }}
:::Input clip.
+
:::Input clip must be YUY2. Assumes TFF (top field first) field order interlacing.
 
<br>
 
<br>
 
::{{Par2|h|int|180}}
 
::{{Par2|h|int|180}}
:::Color differences less than <code>h</code> are not subject to color noise.
+
:::Color difference values greater than <code>h</code> (high) are targeted as color noise.
:::Range: 0-255
+
:::If a pixel (t) is target'ed as white noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are less than (t - d) the target pixel t is depulsed.
 +
:::Range: 0-255 (does not concern itself with the 128 chroma offset, so args 'h' and 'l' are range 0-255 (16-240))
 
<br>
 
<br>
 
::{{Par2|l|int|60}}
 
::{{Par2|l|int|60}}
:::Color differences greater than <code>l</code> are not subject to color noise.
+
:::Color difference values less than <code>l</code> (low) are targeted as color noise.
:::Range: 0-255
+
:::If a pixel (t) is target'ed as black noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are greater than (t + d) the target pixel t is depulsed.
 +
:::Range: 0-255 (does not concern itself with the 128 chroma offset, so args 'h' and 'l' are range 0-255 (16-240))
 
<br>
 
<br>
 
::{{Par2|d|int|30}}
 
::{{Par2|d|int|30}}
:::If the  color difference between the pixels in the front and back (upper and lower) fields is more than <code>d</code>, it is determined as noise. (Common for white and black noise).
+
:::If the  color difference between the pixels in the front and back (upper and lower) fields is more than <code>d</code>, it is determined as noise.
 
:::Range: 0-255
 
:::Range: 0-255
 
<br>
 
<br>
 
::{{Par2|debug|bool|false}}
 
::{{Par2|debug|bool|false}}
:::When debug is set to true, the part determined as color noise becomes white and black.
+
:::If <code>debug=true</code>, pixels judged to be color noise are coloured white or black.
 
<br>
 
<br>
  
Line 85: Line 92:
 
!!width="150px"| Download
 
!!width="150px"| Download
 
!!width="150px"| Mirror
 
!!width="150px"| Mirror
 +
|-
 +
!v1.01
 +
|[https://web.archive.org/web/20221124201337if_/https://files.videohelp.com/u/223002/Depulse_25_26_x86_x64_dll_v1.01_20210901.zip Depulse_25_26_x86_x64_dll_v1.01_20210901.zip]
 +
|[https://www.mediafire.com/file/llroxxwhv7j4ol8/Depulse_25%252626_x86_x64_dll_v1.01_20210901.zip/file Depulse_25&26_x86_x64_dll_v1.01_20210901.zip]
 +
|-
 +
!v1.0
 +
|[https://web.archive.org/web/20200601054417if_/https://files.videohelp.com/u/223002/Depulse_25_dll_v1.0_20170803.zip  Depulse_25_dll_v1.0_20170803.zip]
 +
|[https://www.mediafire.com/file/7p4habjdd92ygie/Depulse_25_dll_v1.0_20170803.zip/file Depulse_25_dll_v1.0_20170803.zip]
 
|-
 
|-
 
!2005/04/11
 
!2005/04/11
Line 94: Line 109:
 
[https://web.archive.org/web/20170211160944if_/http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/DePulseC05061403.zip DePulseC05061403.zip]
 
[https://web.archive.org/web/20170211160944if_/http://www5e.biglobe.ne.jp/~hoe/dv-and-movie/tipsxxx/DePulseC05061403.zip DePulseC05061403.zip]
 
|}
 
|}
 +
*v1.01 by StainlessS: https://forum.doom9.org/showthread.php?p=1951107#post1951107
 +
** x86/x64 version and also added Version Resource to dll's.
 +
*v1.0 by StainlessS. See discussion: https://forum.doom9.org/showthread.php?p=1814102#post1814102
 +
**Fixed pitch for before and after frames, pitch can change within clip (crop/interleave/splice).
 +
**Added string Prefix arg, when set non "" will set Int Global variable.
 
<br>
 
<br>
 
== External Links ==
 
== External Links ==

Latest revision as of 21:26, 24 November 2022

Abstract
Author hanamahanama
Version 2005/04/11
Download [x86 DePulse]: depulse.zip

[x86 DePulseC]: DePulseC05061403.zip


[x86/x64 DePulse]: Depulse_25_26_x86_x64_dll_v1.01_20210901.zip

Category VHS Restoration
License Open source
Discussion Doom9 Forum


Contents

[edit] Description

DePulse is dropout remover, removes white/black noise horizontal streaking in analogue captures. Spatio-Temporal.

DePulseC is sister product of DePulse. Just applying the same algorithm to the color difference. Reduces color pulse noise. Integrate with DePulse.

Dropouts mainly present themselves as a horizontal line sometimes teardrop shaped, usually bright that pops on screen for one or two frames that can be staggered in intensity.


[edit] Requirements


[edit] Syntax and Parameters

[edit] DePulse

DePulse (clip, int "h", int "l", int "d", bool "debug")


clip   =
Input clip must be YUY2. Assumes TFF (top field first) field order interlacing.


int  h = 180
Pixel brightness values greater than h (high) are targeted as white noise.
If a pixel (t) is target'ed as white noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are less than (t - d) the target pixel t is depulsed.
Range: 0-255


int  l = 60
Pixel brightness values less than l (low) are targeted as black noise.
If a pixel (t) is target'ed as black noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are greater than (t + d) the target pixel t is depulsed.
Range: 0-255


int  d = 30
If the brightness is different from the pixels in the front and back (upper and lower) fields for d or more, it is determined as noise. (Common for white and black noise).
Range: 0-255


bool  debug = false
If debug=true, pixels judged to be black or white noise are coloured pink or green.


[edit] DePulseC

DePulseC (clip, int "h", int "l", int "d", bool "debug")


clip   =
Input clip must be YUY2. Assumes TFF (top field first) field order interlacing.


int  h = 180
Color difference values greater than h (high) are targeted as color noise.
If a pixel (t) is target'ed as white noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are less than (t - d) the target pixel t is depulsed.
Range: 0-255 (does not concern itself with the 128 chroma offset, so args 'h' and 'l' are range 0-255 (16-240))


int  l = 60
Color difference values less than l (low) are targeted as color noise.
If a pixel (t) is target'ed as black noise then surrounding pixels (above, below, before and after [temporal], Not left and right) are tested and if ALL of them are greater than (t + d) the target pixel t is depulsed.
Range: 0-255 (does not concern itself with the 128 chroma offset, so args 'h' and 'l' are range 0-255 (16-240))


int  d = 30
If the color difference between the pixels in the front and back (upper and lower) fields is more than d, it is determined as noise.
Range: 0-255


bool  debug = false
If debug=true, pixels judged to be color noise are coloured white or black.


[edit] Examples

DePulse with default settings:

AviSource("Blah.avi")
DePulse (h=180, l=60, d=30, debug=false)

DePulseC with default settings:

AviSource("Blah.avi")
DePulseC (h=180, l=60, d=30, debug=false)
  • DePulseC Hint: First, adjust h to around h=50, l=200 and adjust d (about 20 to 50?).
    You may have some side effects. After that, gradually increase h and lower l to reduce side effects.


[edit] Archived Downloads

Version Download Mirror
v1.01 Depulse_25_26_x86_x64_dll_v1.01_20210901.zip Depulse_25&26_x86_x64_dll_v1.01_20210901.zip
v1.0 Depulse_25_dll_v1.0_20170803.zip Depulse_25_dll_v1.0_20170803.zip
2005/04/11 depulse.zip

DePulseC05061403.zip

depulse.zip

DePulseC05061403.zip


[edit] External Links




Back to External Filters


Personal tools