Comments on: Où il est présenté une méthode en Python pour afficher de la vidéo 3-bit dans son terminal. http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/ Du code, du cul Sat, 07 Nov 2015 11:08:18 +0000 hourly 1 http://wordpress.org/?v=4.1 By: Aeyos http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-72612 Thu, 26 Jun 2014 15:15:27 +0000 http://sametmax.com/?p=10535#comment-72612 Merci pour cet article magnifique, tu à solutionner mon problème de traitement d’image depuis mon serveur unix. Pour le coup je n’ai pas encore eu le temps de tester (mais j’ai quand même pris celui de vérifier qu’opencv soit soit porté sur freebsd :p ).
Si je parvient à réalisé mon rêve je ferais une prière pour toi :)

]]>
By: cendrieR http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-72326 Thu, 26 Jun 2014 09:08:17 +0000 http://sametmax.com/?p=10535#comment-72326 Merci pour l’article l’invité !

]]>
By: batisteo http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-66491 Sun, 22 Jun 2014 19:56:20 +0000 http://sametmax.com/?p=10535#comment-66491

Et là qu’est qu’on remarque ?
Que cela respecte la synthèse additive si on attribue 1 au rouge, 2 au vert et 4 au bleu, bien entendu !

Oh, on pourrait faire un chmod en couleur.
La sortie de ls serait très jolie ! :·)

]]>
By: kontre http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-62768 Fri, 20 Jun 2014 13:33:55 +0000 http://sametmax.com/?p=10535#comment-62768 Pour récupérer un pixel dans un tableau à plusieurs dimensions, il faut indexer sur plusieurs dimensions. im[ligne][colonne][0] est lent parce que python fait en réalité ((im[ligne])[colonne])[0]. La méthode item marche, mais im[ligne, colonne, 0] est plus court et plus parlant.

Sinon, ça me choque de parcourir un tableau numpy élément par élément, mais comme y’a une liste en sortie c’est inévitable.

# À faire avant les boucles
import numpy as np
couleurs = np.array([4, 2, 1])
 
# ...
 
# À faire dans les boucles
# On vérifie si chaque composante de couleur est supérieure au seuil
# is_color est booléen
is_color = img[ligne, colonne, :] > seuil
 
# On récupère les indices de couleurs si la couleur y est
colors = couleurs[is_color]
 
# On somme les couleurs sélectionnées
indice_couleur = np.sum(colors)

Bien sûr ça peut se faire en une ligne, mais c’est moins compréhensible:

indice_couleur = np.sum(couleurs[img[ligne, colonne, :] > seuil])

Voilà, ça ne rend pas le truc plus utile, mais c’est un truc inutile optimisé !

(et puis largeurIn c’est pas pep8 :p)

]]>
By: Al http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61822 Thu, 19 Jun 2014 20:45:04 +0000 http://sametmax.com/?p=10535#comment-61822 @01ivier : Bah dommage alors =/. Je pensais franchement que ça atténuerait au moins un peu le scintillement, vu que chez moi sous Konsole ça scintille très peu, en général surtout quand y’a un lag, un changement de bureau ou autre réduire dans la barre des tâches/pouf réapparition vaudou. Franchement, le coup de remplacer le clear par autre chose est sans doute bien plus efficace que ma pseudolution (les néologismes baveux sont la vie).

Après, franchement, j’adore ton script, je m’éclate avec comme un petit fou =3. Tu m’as inspiré, l’ami ^^ !

]]>
By: k3c http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61547 Thu, 19 Jun 2014 15:23:18 +0000 http://sametmax.com/?p=10535#comment-61547 Chouette article, bravo.
Mais je me fais l’effet d’un dinosaure, moi qui ai commencé à programmer à coups d’escapes séquences, avec plein de “j’efface du curseur à la fin de la ligne”, et autres “je me positionne ligne 32 position 14″.

]]>
By: 01ivier http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61463 Thu, 19 Jun 2014 14:15:11 +0000 http://sametmax.com/?p=10535#comment-61463 @bob : Merci… :-)

@Eliot : Merci… :-D

@Al : Merci… :-P
…mais, urxvt (que je ne connaissais pas) n’a pas résolu le pb… :-/

@tmonjalo: MERCIII !! \o/
Putain oui… c’est ça le truc !
Pas sûr qu’on gagne beaucoup en performance, mais le scintillement disparaît puisque que l’image n’est jamais effacée entièrement.

Il suffit de juste de faire un ‘clear’ avant de définir la position de référence et zou… c’est propre à souhait !
Bien entendu, passé une certaine définition, ça lag… mais au moins le pb est inhérent au code.

Je vais faire une mise à jour du script et de l’article dans la soirée.

Merci encore !

@nderambure : Rhooo tu exagères… on va dire 15h00 du matin, au plus tard… :-p

]]>
By: nderambure http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61358 Thu, 19 Jun 2014 12:37:32 +0000 http://sametmax.com/?p=10535#comment-61358 @Eliot, je peux t’affirmer que cette sensation se lie directement dans les yeux d’Olivier quand il entre joyeusement dans le bureau la matin, vers 15h30.

]]>
By: tmonjalo http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61250 Thu, 19 Jun 2014 11:20:50 +0000 http://sametmax.com/?p=10535#comment-61250 Plutôt que de faire un “clear”, il est probablement plus efficace de ramener le curseur au début de l’image, grâce à 33[s et 33[u, comme dans ce script :
https://github.com/tmonjalo/choose/blob/master/choose#L165

]]>
By: Al http://sametmax.com/ou-il-est-presente-une-methode-en-python-pour-afficher-de-la-video-3-bit-dans-son-terminal/#comment-61083 Thu, 19 Jun 2014 10:17:05 +0000 http://sametmax.com/?p=10535#comment-61083

Donc, si vous avez une idée pour que ça ne scintille plus au delà de 25 lignes de hauteur, je suis preneur, sachant que je suis tout à fait à même d’entendre que j’ai fait n’importe quoi dès le début.

Utiliser une autre console.

Nan, sérieusement.

En fait, au niveau performances, les consoles ne sont pas toutes égales, et malheureusement elles partagent souvent pas mal de code, ce qui fait que toutes les consoles Gnome que je connaissent ont des perf pas terribles (vu qu’elles sont toutes basées sur le même code). Xterm, c’est pareil. Ne parlons même pas des TTY, je pense que c’est lié au fait qu’ils n’utilisent pas de pile graphique très avancée, mais leur lenteur est indécente. Les deux meilleures consoles que je connaisse sont Konsole et dérivés (genre Yakuake) qui sont peut-être un peu gourmand en RAM (pas vérifié personnellement) et pour KDE, et URxvt qui ressemble vachement à Xterm niveau tronche, mais il paraît qu’il est pas mal configurable.

Pour plus d’information, lire cet article et tester avec le script qu’il propose.

Article très intéressant sinon, la démarche est super sympa =).

]]>