Je me suis mal exprimé pour mon traîtement :
S'il doit faire partie de DScaler, ce sera gratuitement, c'est évident ! Mais à condition que cette partie du code ne soit pas accessible.
Pourquoi ? Parce que si mes recherches me conduisent là où je le souhaite, je protègerai ma création.
Ce traîtement pourrait être interressant pour DScaler quand des programmes entrelacé sont restitué : La résolution de base fait 240 ou 288 lignes, mon algo la ferait passer à 480 et 576 lignes...
Actuellement mon implémentation (prototype) permet d'atteindre environ 5 images/seconde mais il s'agit de la version de recherche sans aucune optimisation, voire même parfois une programmation "douteuse" pour la rapidité... Je pense qu'il est possible de multiplier la vitesse par 20 ou 30 sans trop forcer grâce à des implémentations RISC, CISC, FPU, 3DNow!, SSE ou SSE2...
Pour conclure, j'espère terminer complètement mon traîtement d'ici la fin de l'année...
|
59 messages • Accèder à une page • 1, 2, 3, 4
|
Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 51 invités
Règles du forum
Avant de poster, merci de prendre connaissance des règles du forum : à lire avant de poster
Par ailleurs, il n'est pas possible de créer un nouveau sujet : merci de le faire dans un autre forum.
Avant de poster, merci de prendre connaissance des règles du forum : à lire avant de poster
Par ailleurs, il n'est pas possible de créer un nouveau sujet : merci de le faire dans un autre forum.
ATTENTION AUX YEUX : Upsampling de qualité !!!
- Blade
- Messages: 1092
- Inscription Forum: 08 Nov 2002 22:43
- Localisation: 84
Oublie tout de suite... la license Open Source de DScaler n'authorise pas qu'une partie du code ne soit pas accessible c'est la base du logiciel libre sur Internet. Elle n'authorise pas non plus le fait d'appeler du code (genre Plug-In ou DLL) qui n'est pas Open Source (excepté Windows).
Voir ici la license GNU GPL :
http://www.fsf.org/licenses/gpl.html
Je serais par contre très curieux de faire une comparaison entre le scaling effectué par une Radeon et par ton algo pour vraiment voir la différence. C'est hélas assez compliqué à montrer...
G_ROM
Voir ici la license GNU GPL :
http://www.fsf.org/licenses/gpl.html
Je serais par contre très curieux de faire une comparaison entre le scaling effectué par une Radeon et par ton algo pour vraiment voir la différence. C'est hélas assez compliqué à montrer...
G_ROM
- G_ROM
- Messages: 1073
- Inscription Forum: 12 Oct 2000 2:00
- Localisation: Paris 17
G_ROM> Si tu me fournis une image source que je puisse doubler verticalement, tu pourras la comparer avec ce que tu souhaites.
Mais sois patient, car pour l'heure, ça va être dur, je continu à travailler sur mon prog et je ne peux sortir d'exemple "utilisable". Donc, si tu postes une image aujourd'hui ou demain, tu auras un retour avec l'ancienne version demain ou lundi et un retour avec la nouvelle dans la semaine...
Pour la licence GNU/GPL, je verrais ça après.
Sauf si on peut faire des plug-in extérieurs comme avec winamp sans tout recompiler...
Mais pour l'instant ce n'est pas dans mes objectifs.
Mais sois patient, car pour l'heure, ça va être dur, je continu à travailler sur mon prog et je ne peux sortir d'exemple "utilisable". Donc, si tu postes une image aujourd'hui ou demain, tu auras un retour avec l'ancienne version demain ou lundi et un retour avec la nouvelle dans la semaine...
Pour la licence GNU/GPL, je verrais ça après.
Sauf si on peut faire des plug-in extérieurs comme avec winamp sans tout recompiler...
Mais pour l'instant ce n'est pas dans mes objectifs.
- Blade
- Messages: 1092
- Inscription Forum: 08 Nov 2002 22:43
- Localisation: 84
G_ROM j'ai l'impression que l'algo utilisé par les Radeon et GEForce donne des résultats proches (mais pas identiques) aux approximations bicubiques de Photo Shop ou PSP.
Ce qui donne un premier élément de comparaison avec l'algo de BladeRunner.
Sinon il faut passer par des photos d'écran.
Cependant d'une implémentation à l'autre du même algorithme il y a des différences.
Certaines pouvant être assez moyennes.
Je pense qu'il est assez difficile de trouver le bon équilibre entre lissage et définition.
Michel
Ce qui donne un premier élément de comparaison avec l'algo de BladeRunner.
Sinon il faut passer par des photos d'écran.
Cependant d'une implémentation à l'autre du même algorithme il y a des différences.
Certaines pouvant être assez moyennes.
Je pense qu'il est assez difficile de trouver le bon équilibre entre lissage et définition.
Michel
-
MLill - Membre d'Honneur - Contributeur
- Messages: 19154
- Inscription Forum: 08 Déc 1999 2:00
Je serais malgré tout curieux de voir le résultat avec autre chose. Je vous donne donc les images sources.
A vos pinceaux, claviers, souris…
A vos pinceaux, claviers, souris…
- Blade
- Messages: 1092
- Inscription Forum: 08 Nov 2002 22:43
- Localisation: 84
Salut.
Effectivement, pour DScaler, tout le code doit être accessible en même temps que les binaires.
Sinon, ce qui serait intéressant pour DScaler, ce serait de remplacer le scaling de la carte graphique par un scaling logiciel si ce dernier peut être meilleur. Mais ce scaling serait très certainement appliquer en dernière étape donc après désentrelacement et filtres. Et puis il nous faudrait quelque chose de plus sophistiqué qu'un simple doublement de ligne si on veut remplacer le scaling de la carte graphique.
Laurent - team DScaler
Effectivement, pour DScaler, tout le code doit être accessible en même temps que les binaires.
Sinon, ce qui serait intéressant pour DScaler, ce serait de remplacer le scaling de la carte graphique par un scaling logiciel si ce dernier peut être meilleur. Mais ce scaling serait très certainement appliquer en dernière étape donc après désentrelacement et filtres. Et puis il nous faudrait quelque chose de plus sophistiqué qu'un simple doublement de ligne si on veut remplacer le scaling de la carte graphique.
Laurent - team DScaler
- LaurentG
- Messages: 4873
- Inscription Forum: 31 Aoû 1999 2:00
ffdshow le fait :
il y a une fct pour changer la résolution d'un clip avant envoi a la carte graphique et tout une flopé d'algo dont lanczos qui est apparut dans avisynth il y a peu.
mais bon question charge processeur cela ne suit pas avec mon amd 1.2ghz.
par contre faire un simple upsampling fast bilinear suivit d'un unsharpen mask donne un résultat superbe.
il y a une fct pour changer la résolution d'un clip avant envoi a la carte graphique et tout une flopé d'algo dont lanczos qui est apparut dans avisynth il y a peu.
mais bon question charge processeur cela ne suit pas avec mon amd 1.2ghz.
par contre faire un simple upsampling fast bilinear suivit d'un unsharpen mask donne un résultat superbe.
- ppierre
- Membre HCFR
- Messages: 933
- Inscription Forum: 18 Juin 2002 22:09
- Localisation: montbeliard doubs
commence deja a faire un plugin pour photoshop ou de te faire acheter quelque millier de france ton code source pour qu'il lintegre dans une futur version
bizznes is bizznes
bizznes is bizznes
- MaXx
- Messages: 856
- Inscription Forum: 31 Oct 2002 22:14
- Localisation: ici !
Pour voir ce que donne la mise à l'échelle de la carte graphique il suffit d'utiliser dScaler qui, grâce à Laurent, est capable d'afficher des fichiers en format TIFF et JPEG (j'en oublie peut-être).
Sur les images en question on obtient des résultats très proches de PSP et Photo Shop.
Michel
Sur les images en question on obtient des résultats très proches de PSP et Photo Shop.
Michel
-
MLill - Membre d'Honneur - Contributeur
- Messages: 19154
- Inscription Forum: 08 Déc 1999 2:00
Ben non le problème c'est que la capture est faite dans DScaler avant d'envoyer l'image à l'overlay, donc on a une capture de la source désentrelacée mais non scalée...
G_ROM
G_ROM
- G_ROM
- Messages: 1073
- Inscription Forum: 12 Oct 2000 2:00
- Localisation: Paris 17
Salut.
G_ROM, ce que tu dis est vrai, mais sans rapport avec ce que dit Michel
Pour tester la mise à l'échelle de la carte graphique, le mieux est d'utiliser la mire que j'ai créé pour ça (génération automatique dans l'overlay). En jouant sur la taille de la mire (cf les paramètres) + la résolution d'écran, on est capable de tester toutes les combinaisons.
Très instructif quand j'avais testé avec ma GeForce. On se rend compte que la mise à l'échelle de la carte graphique est loin d'être parfaite. Faut que je reteste ça avec la Radeon 9000 maintenant pour voir s'il y a un mieux (dans mon cas c'est du downscaling).
Laurent
G_ROM, ce que tu dis est vrai, mais sans rapport avec ce que dit Michel
Pour tester la mise à l'échelle de la carte graphique, le mieux est d'utiliser la mire que j'ai créé pour ça (génération automatique dans l'overlay). En jouant sur la taille de la mire (cf les paramètres) + la résolution d'écran, on est capable de tester toutes les combinaisons.
Très instructif quand j'avais testé avec ma GeForce. On se rend compte que la mise à l'échelle de la carte graphique est loin d'être parfaite. Faut que je reteste ça avec la Radeon 9000 maintenant pour voir s'il y a un mieux (dans mon cas c'est du downscaling).
Laurent
- LaurentG
- Messages: 4873
- Inscription Forum: 31 Aoû 1999 2:00
Exact j'ai lu en travers , il n'empèche que je ne sait pas comment capturer le scaling fait par la Radeon...
G_ROM
G_ROM
- G_ROM
- Messages: 1073
- Inscription Forum: 12 Oct 2000 2:00
- Localisation: Paris 17
Pas besoin de capturer, tes yeux sont suffisants
Laurent
Laurent
- LaurentG
- Messages: 4873
- Inscription Forum: 31 Aoû 1999 2:00
Sur le moniteur de gauche une des images ci-dessus avec mise à l'échelle par photo shop.
Sur celui de droite la mise à l'échelle par Radeon via dScaler.
Du pareil au même
Michel
Sur celui de droite la mise à l'échelle par Radeon via dScaler.
Du pareil au même
Michel
-
MLill - Membre d'Honneur - Contributeur
- Messages: 19154
- Inscription Forum: 08 Déc 1999 2:00
ACCROCHEZ VOS CEINTURES
Qualité du rendu améliorée
Cet algorithme peut servir à deux choses :
- Augmenter la résolution d'une image en X et Y (x2, x3, x4…)
- Doubler la résolution des images de chacun des champs (pair et impair) lorsqu'un désentrelacement correct est impossible.
Je vais encore travailler sur l'amélioration de la qualité "visuelle", puis je m'attaquerais à l'optimisation de la routine pour une utilisation temps-réel.
Il est probable que je fasse une version spéciale de DScaler intégrant cet algorithme. Sa diffusion sera restreinte et aura uniquement pour but de montrer les capacités de cet algo. Cependant il faut que je regarde les infos légales...
Comment ça marche et comment ça marche pas ?
3 + 2 = 5. C'est vrai
3+2 c'est l'image originale, et 5, c'est l'image à résolution réduite.
Dans ce cas de figure l'opération inverse n'est pas possible…
5 = A + B
A = ?
B = ?
Pourtant ce cas de figure est partiellement résolvable en travaillant sur des éléments d'images plutôt que sur des pixels. Cependant, on ne saura jamais si c'était 3+2 (avec certitude). On n'en approchera tout au plus. Le but de l'algo est de s'en approcher au plus près ! 5 = 3+2 et 5 = 2+3…
Pour mes tests, j'ai récupéré deux images : Honda Integra Type R 2002 et Evangelion - Noel.
Ces deux images ont tout d'abord été réduites sous Photoshop en 720x576 en respectant le ratio original (les bandes noires). Enfin, j'ai supprimé une ligne sur deux pour bien montrer les capacités de recréation (les images aplaties ont déjà été postées, mais les revoici).
Il reste encore quelques artefacts, mais l'amélioration est nette.
Voici donc les deux images rendu (compression JPEG assez importante) :
Cet algorithme peut servir à deux choses :
- Augmenter la résolution d'une image en X et Y (x2, x3, x4…)
- Doubler la résolution des images de chacun des champs (pair et impair) lorsqu'un désentrelacement correct est impossible.
Je vais encore travailler sur l'amélioration de la qualité "visuelle", puis je m'attaquerais à l'optimisation de la routine pour une utilisation temps-réel.
Il est probable que je fasse une version spéciale de DScaler intégrant cet algorithme. Sa diffusion sera restreinte et aura uniquement pour but de montrer les capacités de cet algo. Cependant il faut que je regarde les infos légales...
Comment ça marche et comment ça marche pas ?
3 + 2 = 5. C'est vrai
3+2 c'est l'image originale, et 5, c'est l'image à résolution réduite.
Dans ce cas de figure l'opération inverse n'est pas possible…
5 = A + B
A = ?
B = ?
Pourtant ce cas de figure est partiellement résolvable en travaillant sur des éléments d'images plutôt que sur des pixels. Cependant, on ne saura jamais si c'était 3+2 (avec certitude). On n'en approchera tout au plus. Le but de l'algo est de s'en approcher au plus près ! 5 = 3+2 et 5 = 2+3…
Pour mes tests, j'ai récupéré deux images : Honda Integra Type R 2002 et Evangelion - Noel.
Ces deux images ont tout d'abord été réduites sous Photoshop en 720x576 en respectant le ratio original (les bandes noires). Enfin, j'ai supprimé une ligne sur deux pour bien montrer les capacités de recréation (les images aplaties ont déjà été postées, mais les revoici).
Il reste encore quelques artefacts, mais l'amélioration est nette.
Voici donc les deux images rendu (compression JPEG assez importante) :
- Blade
- Messages: 1092
- Inscription Forum: 08 Nov 2002 22:43
- Localisation: 84
|
59 messages
• Page 2 sur 4 • 1, 2, 3, 4
|