EdgeFixer repairs bright and dark line artifacts near the border of an image.
Project description
EdgeFixer
ContinuityFixer(clip clip, int "left", int "top", int "right", int "bottom", int "radius")
ReferenceFixer(clip clip, clip ref, int "left", int "top", int "right", int "bottom", int "radius")
edgefixer.Continuity(clip clip, int "left", int "top", int "right", int "bottom", int "radius")
edgefixer.Reference(clip clip, clip ref, int "left", int "top", int "right", int "bottom", int "radius")
EdgeFixer repairs bright and dark line artifacts near the border of an image. When an image is resampled with a negative-lobe kernel, such as Bicubic or Lanczos, a series of bright and dark lines may appear around the image borders. These lines need not be cropped, as they contain spatial information that can be recovered. EdgeFixer uses least squares regression to correct the offending lines based on a reference line. ContinuityFixer uses the adjacent line as the reference, whereas ReferenceFixer uses an external reference image.
- left, right, top, bottom - the number of lines to filter along each edge
- radius - limit the window used for the least squares regression, useful in the presence of overlaid content
Examples
This example image (4x magnification) is taken from a commercial Blu-ray Disc. The use of bicubic image resizing has left an artifact on the outermost row and column. This is easily corrected by using ContinuityFixer to match the brigthness against the next row/column.
edgefixer.Continuity(clip, top=1, right=1)
Before:
After:
If the image contains many bright or dark line artifacts, the nearest artifact-free row may have a substantially different luminance, and thus be unsuitable for ContinuityFixer. This example image (4x magnification) is taken from a commercial DVD. A poor film transfer has left a beating pattern of alternating bright and dark lines on the border. The 10th pixel column has substantially different average brightness than the first column, as can be seen from the image shift.
edgefixer.Continuity(clip, left=10)
In this case, an alternative luminance reference can be applied through ReferenceFixer. Since the bright and dark pixels alternate in the image, a 3-pixel box blur can be used to smooth out the luminance. This successfully reduces the visible pattern when used as the reference image. The blurred image is only used statistically, so the resulting image does not suffer from detail loss.
ref = std.BoxBlur(hradius=1, hpasses=1, vpasses=0)
edgefixer.Reference(clip, ref, left=10)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vapoursynth_edgefixer-2.1.tar.gz.
File metadata
- Download URL: vapoursynth_edgefixer-2.1.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
476046e1934fb06dc03439ed14687a122b25da244bafa73a119d72cf8a6efe02
|
|
| MD5 |
1894f7ffb5b17b8f71fd3c38812704c2
|
|
| BLAKE2b-256 |
786544885156db2b43f34011e0dca76e6f0efe9c95a6acedd73c9e1778b969ba
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1.tar.gz:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1.tar.gz -
Subject digest:
476046e1934fb06dc03439ed14687a122b25da244bafa73a119d72cf8a6efe02 - Sigstore transparency entry: 1348266392
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-win_amd64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-win_amd64.whl
- Upload date:
- Size: 30.5 kB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6135ef970e48034d58ad23302f9b2eeccefdef1641d244fd54fc3155c7e26c75
|
|
| MD5 |
090660df3ba2022a8b23c85dfbe4483e
|
|
| BLAKE2b-256 |
f34c933caf8aeae2081e07005ea7fc02d6f691ef1bb2014d99e8297702495ea1
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-win_amd64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-win_amd64.whl -
Subject digest:
6135ef970e48034d58ad23302f9b2eeccefdef1641d244fd54fc3155c7e26c75 - Sigstore transparency entry: 1348266834
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e1e7f18776ff2f5344935958653edca62a153eecad30b4d1bc34180e9362f37
|
|
| MD5 |
f3efb830ad594d46c082d2988e5292cb
|
|
| BLAKE2b-256 |
92ff565bc54e04ded8d9c506cb81571bf28b75a3ca7008f26759412eb1cfa30b
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_x86_64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_x86_64.whl -
Subject digest:
8e1e7f18776ff2f5344935958653edca62a153eecad30b4d1bc34180e9362f37 - Sigstore transparency entry: 1348266451
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 10.1 kB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc4a603185d90db5139fec8db0ad3b425f4c01a8c2d8eb1ed4723a179dd4c671
|
|
| MD5 |
78d13a26417864feb4f61ed3c098c51c
|
|
| BLAKE2b-256 |
9974d13afab9528fd66ffe59e063ec8caf086abcaf6833563604e85ba2b3d255
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_aarch64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-musllinux_1_2_aarch64.whl -
Subject digest:
bc4a603185d90db5139fec8db0ad3b425f4c01a8c2d8eb1ed4723a179dd4c671 - Sigstore transparency entry: 1348266620
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 10.0 kB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a3c19ed588e1484534dc70ba42feb7451b66f9caad3ac02ce84c110a49ef44de
|
|
| MD5 |
c07619350ef4c34557d875c52bb53208
|
|
| BLAKE2b-256 |
28835806123bf87582e3eeb5194819e4d06beef1a791d02ad119bcb9997954d2
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl -
Subject digest:
a3c19ed588e1484534dc70ba42feb7451b66f9caad3ac02ce84c110a49ef44de - Sigstore transparency entry: 1348266891
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3, manylinux: glibc 2.28+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dacf9c3c64e52ffb56d0afc6a45a68c083e6fd2bacaa4cd0d03f51e0397e94b1
|
|
| MD5 |
b3d49f985d9c95079e2fe1019d446987
|
|
| BLAKE2b-256 |
b808a27ee18b6f852538bf709792d8d288370ddaf562847cda32519912b66241
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl -
Subject digest:
dacf9c3c64e52ffb56d0afc6a45a68c083e6fd2bacaa4cd0d03f51e0397e94b1 - Sigstore transparency entry: 1348266529
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_x86_64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_x86_64.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3, macOS 15.0+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
02fb318cef35a36dd910d3bd627f301947c45597d9cfb5fd13dc44e1bb85a1c8
|
|
| MD5 |
644327a9de10bdab71a166bcceea9052
|
|
| BLAKE2b-256 |
5faacc4af8c0f516104befdef99497c246a9a3d4fdf9c76472a83f05cec69562
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_x86_64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_x86_64.whl -
Subject digest:
02fb318cef35a36dd910d3bd627f301947c45597d9cfb5fd13dc44e1bb85a1c8 - Sigstore transparency entry: 1348266777
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type:
File details
Details for the file vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_arm64.whl.
File metadata
- Download URL: vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_arm64.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3, macOS 15.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62c68b0e6a65e9a01a9093b67acc03e2a3490837a5ff7001648e024b78dabdbf
|
|
| MD5 |
49d13f8620e370faec9e3875991dee4c
|
|
| BLAKE2b-256 |
56ee167666666234f23ca3c669c7b6052e257f237d0770a59530b106a321d2a8
|
Provenance
The following attestation bundles were made for vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_arm64.whl:
Publisher:
build.yml on vapoursynth/EdgeFixer-pypi
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vapoursynth_edgefixer-2.1-py3-none-macosx_15_0_arm64.whl -
Subject digest:
62c68b0e6a65e9a01a9093b67acc03e2a3490837a5ff7001648e024b78dabdbf - Sigstore transparency entry: 1348266704
- Sigstore integration time:
-
Permalink:
vapoursynth/EdgeFixer-pypi@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Branch / Tag:
refs/tags/r2.1 - Owner: https://github.com/vapoursynth
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
build.yml@894955ab65a2b52583cbdefbeb7afc0893b0281b -
Trigger Event:
push
-
Statement type: