Aller au contenu

GreenScreenVideotoAlphaPNGs : Un pipeline d’images transparentes

GreenScreenVideotoAlphaPNGs sépare acquisition vidéo, extraction des images et suppression du fond de l’encodage final. Les PNG RGBA servent de sortie intermédiaire vers un GIF ou une vidéo avec canal alpha.

Application et outils
  • Mis à jour
  • 1
  • C++ · 57.96%
  • MIT
Langages du dépôtC++ 57.96%5

Parts calculées à partir des octets GitHub Linguist.

Langage%Octets
C++57.96%41 566
Python32.32%23 177
JavaScript7.93%5 687
PowerShell0.94%673
Shell0.85%610

GitHub · README · Statistiques de langages

Aperçu

Pourquoi il existe

Pipeline de traitement OpenCV convertissant des vidéos fond vert en séquences PNG avec canal alpha.

Cas d’usage

Préparation d'assets d'animation 2D pour la réalité augmentée.

Démarrage

Ces commandes viennent de la documentation du dépôt. Elles n’ont pas été exécutées pendant cette revue.

README.md · Quick start (uv)
.\install.ps1
uv run greenscreen --help
README.md · Quick start (uv)
bash install.sh
uv run greenscreen --help
README.md · APNGLib (optional C++ extension)
$env:SKIP_APNGLIB='1'; uv sync --extra dev
README.md · APNGLib (optional C++ extension)
$env:SKIP_APNGLIB='0'; uv sync --extra dev

Références du dépôt

Extraits des guides du dépôt, dans leur langue d’origine. Les liens ouvrent la version du code consultée.

Prérequis et premier essai

Quick start (uv)

README.md

Install dev tools: uv sync –extra dev
Lire les instructions complètes ↗

Prerequisites

README.md

  • Python 3.12+ (repo pins .python-version to 3.12 for uv).
  • ffmpeg on PATH for fast frame extract and for gif –fast-ffmpeg / video. A fallback binary can come from imageio-ffmpeg if PATH has no ffmpeg.
Lire les instructions complètes ↗
Configuration et utilisation

CLI

README.md

Legacy entry points still work and forward to the same CLI:

  • python GreenVideotoAlphaPNGs.py → greenscreen convert
  • python GIFGenerator.py → greenscreen gif
  • python VideoGenerator.py → greenscreen video
Lire les instructions complètes ↗
Documentation source

1 documents lus parmi 1 candidats.

Fonctions et composants 2

Étape de conversion
La commande Typer convert délègue à run_convert. Elle accepte une vidéo locale ou un lien et peut privilégier FFmpeg ou imposer OpenCV. Le module chroma traite la transparence séparément de l’acquisition.
Choix d’encodage
gif et video prennent un dossier de PNG. Le GIF propose une palette FFmpeg; video accepte qtrle ou prores_4444. Cette étape permet de changer cadence et format sans recommencer l’acquisition.

Architecture

Les composants et leurs liens restent lisibles en texte. Le diagramme ajoute une vue interactive.

Contexte système Contexte
  1. Vidéo ou lien
  2. Extraction des images
  3. Suppression du fond
  4. Séquence PNG RGBA
  5. Encodeur GIF
  6. Encodeur vidéo alpha

Liens vérifiés dans le dépôt.

Mermaid Diagramme interactif (chargement à l’ouverture)

Vue générale des composants et des échanges vérifiés dans le dépôt.

Vue statique de l’architecture de GreenScreenVideotoAlphaPNGs
Aperçu statique. Le diagramme interactif le remplace après le chargement de Mermaid.
flowchart LR
  n0["Vidéo ou lien"]
  n1["Extraction des images"]
  n2["Suppression du fond"]
  n3["Séquence PNG RGBA"]
  n4["Encodeur GIF"]
  n5["Encodeur vidéo alpha"]
  n0 --> n1
  n1 --> n2
  n2 --> n3
  n3 --> n4
  n3 --> n5
Version texte du diagramme
  • Vidéo ou lien → Extraction des images
  • Extraction des images → Suppression du fond
  • Suppression du fond → Séquence PNG RGBA
  • Séquence PNG RGBA → Encodeur GIF
  • Séquence PNG RGBA → Encodeur vidéo alpha
Suivre un parcours dans le code

Suivez cmd_convert vers run_convert, puis utilisez ses PNG dans cmd_video. Conserver ces images permet d’inspecter les contours de transparence avant que la compression les masque.

Types et structure des fichiers

2 types déclarés, dont 2 dans l’aperçu des relations de base.

Diagramme des types
classDiagram
direction TB
class t6f7d26235a07["CHUNK"] {
  <<struct>>
}
class t05c53bd05b93["APNGFrame"] {
  <<struct>>
}

Les bases non résolues restent identifiées; les signatures complètes ne sont pas reconstruites.

Index des types

Référence

21 / 21 fichiers admissibles lus (45 dans l’arbre); 0 trop volumineux, 0 échec de lecture et 0 diagnostic de syntaxe.

Ce que couvre l’analyse

Les dossiers connus de dépendances et de compilation, les fichiers d’identifiants et les binaires sont exclus. La collecte couvre les README, les manifestes reconnus et les fichiers source pris en charge.

Les statistiques Linguist couvrent l’ensemble du dépôt et peuvent inclure d’autres langages.

Carte des fichiers
flowchart TD
  root["GreenScreenVideotoAlphaPNGs"]
  f0["src/greenscreen/chroma.py"]
  root --> f0
  f1["src/greenscreen/cli.py"]
  root --> f1
  f2["src/greenscreen/video_pipeline.py"]
  root --> f2
  f3["GIFGenerator.py"]
  root --> f3
  f4["GreenVideotoAlphaPNGs.py"]
  root --> f4
  f5["README.md"]
  root --> f5
  f6["VideoGenerator.py"]
  root --> f6
  f7["install.sh"]
  root --> f7
  f8["pyproject.toml"]
  root --> f8
  f9["requirements.txt"]
  root --> f9
  f10["setup.py"]
  root --> f10
  f11["tests/test_chroma.py"]
  root --> f11
  f12["tests/test_cli_smoke.py"]
  root --> f12
  f13["lib/APNGLib_fix/setup.py"]
  root --> f13
  f14["src/greenscreen/__init__.py"]
  root --> f14
  f15["src/greenscreen/convert.py"]
  root --> f15

Fichiers à lire 3

Références