Pages

page 1 de 7

linux-debian.jpg  MANRES (haacheuur) - références

12 10 2017

Tous les logiciels présentés ici sont Libres. Il constituent ma boite à outil de développement artistique et logiciel.

 

Debian GNU/Linux

Debian est un système d'exploitation qui se veut universel : https://www.debian.org/

Sommaire du Contrat social avec la communauté des logiciels libres :

  1. Debian demeurera totalement libre.
  2. Nous donnerons nos travaux à la communauté des logiciels libres.
  3. Nous ne dissimulerons pas les problèmes.
  4. Nos priorités sont nos utilisateurs et les logiciels libres.
  5. Travaux non conformes à nos standards sur les logiciels libres.

Sommaire des principes du logiciel libre selon Debian :

  1. Redistribution libre et gratuite.
  2. Code source.
  3. Applications dérivées.
  4. Intégrité du code source de l'auteur.
  5. Aucune discrimination de personne ou de groupe.
  6. Aucune discrimination de champ d'application.
  7. Distribution de licence.
  8. La licence ne doit pas être spécifique à Debian.
  9. La licence ne doit pas contaminer d'autres logiciels.

Le contrat social de Debian :

https://www.debian.org/social_contract

Le code de conduite :

https://www.debian.org/code_of_conduct

 

Python

Python est un langage de programmation qui permet de travailler vite et permet d'intégrer facilement ses programme dans un système d'exploitation.
Haacheuur et Horizontal sont écris en Python.
https://www.python.org/

 

Haacheuur

Haacheuur est un programme écrit en python, qui décomposent, puis recomposent une image en une suite contrôlée de séquences, séquences plus ou moins grandes, plus ou moins répétées, plus ou moins fragmentées.
http://fichiers.cumulonimbus.fr/120___Projet_Hachage/

 

Horizontal

Horizontal est le fruit d'un travail dédié à la relation entretenue entre une fréquence lumineuse et une fréquence sonore, une exploration du, vaste, domaine de la synesthésie. Chercher ce qui relie sensations sonores et visuelles, essayer de mettre au jour, de façon objective, sensible et harmonieuse, ce point de convergence.
http://cumulonimbus.fr/index.php?post/2015/09/24/horizontal
http://fichiers.cumulonimbus.fr/100___Projet_Horizontal/

 

Enscribe

Les données de l'image sont converties en fréquences sonores en utilisant une Transformée de Fourrier Rapide.
http://www.coppercloudmusic.com/enscribe.html

 

PureData

Pure Data est un logiciel de programmation visuelle pour le multimedia.
https://puredata.info/

 

Steghide

Steghide est un outil de stéganographie qui est capable de cacher diverses données dans des fichiers images et audio.
http://steghide.sourceforge.net/

 

OpenMVG

Bibliothèque C++ pour la géométrie multi-vues en vision par ordinateur
https://github.com/openMVG/openMVG

 

OpenMVS

OpenMVS permet de calculer des nuages de points denses, des surfaces et des surfaces texturées provenant de scenes OpenMVG.
https://github.com/cdcseacave/openMVS

 

FFmpeg

FFmpeg est une collection de logiciels libres destinés au traitement de flux audio ou vidéo : enregistrement, lecture ou conversion d'un format à un autre.
https://www.ffmpeg.org/

 

Image Magick

Image Magick est utile pour créer, éditer, composer ou convertir des images.
https://www.imagemagick.org/script/index.php


  MANRES - vues d'exposition

06 10 2017

'DecompressionBombWarning', impression numérique, 2017

 

'DecompressionBombWarning' (détail), impression numérique, 2017

 

'DecompressionBombWarning' (détail), impression numérique, 2017, a gauche : installation 'Suck It Up' de Didier Hébert Guillon

 

3 'Haacheuur', impressions numérique, 2017

 

Lors de l'exposition collective 'Bricodrama' à Lieu-Commun, Toulouse
Lieu-Commun : http://www.lieu-commun.fr/
bricodrama : https://bricodrama.wordpress.com/


  MANRES ressources

20 09 2017

Recherches et résultats

http://cumulonimbus.fr/index.php?post/2017/09/14/DecompressionBombWarning
http://cumulonimbus.fr/index.php?post/2017/09/09/MANRES-STEGA
http://cumulonimbus.fr/index.php?post/2017/09/06/MANRES-III-%28.py-code%29
http://cumulonimbus.fr/index.php?post/2017/08/28/MANRES
http://cumulonimbus.fr/index.php?post/2017/07/11/photogrammetrie
http://cumulonimbus.fr/index.php?post/2017/04/11/paul-klee
http://cumulonimbus.fr/index.php?post/2016/10/25/zoom1bit%5B01%5D
http://cumulonimbus.fr/index.php?post/2016/10/25/zoom1bit
http://cumulonimbus.fr/index.php?post/2015/11/13/HH.screencap.replay
http://cumulonimbus.fr/index.php?post/2015/11/11/HH-1-bit
http://cumulonimbus.fr/index.php?post/2015/11/11/HH
http://cumulonimbus.fr/index.php?post/2015/09/29/HH_
http://cumulonimbus.fr/index.php?post/2015/09/24/horizontal
http://cumulonimbus.fr/index.php?post/2015/07/23/haacheuur-sncf

 

Artistes
http://www.leafar-izen.com/doc/hypothesedutout.pdf
https://www.franceculture.fr/conferences/institut-francais-de-la-mode/paul-klee-une-oeuvre-ou-musique-et-peinture-sentrelacent
http://artkillart.org/aka-10-logfordata/
https://nimon.org/matryoshka.php

 

Outils

OpenMVG + OpenMVS
Hugin
Enscribe
Python
Steghide
(à completer...)

 

 

 


linux-debian.jpg  DecompressionBombWarning

14 09 2017

Python :
DecompressionBombWarning : Image size (125798034 pixels) exceeds limit of 89478485 pixels,
could be decompression bomb DOS attack.
 

Atari ST TOS :

  • 1 bomb: Reset, Initial PC2
  • 2 bombs: Bus Error
  • 3 bombs: Address Error
  • 4 bombs: Illegal Instruction
  • 5 bombs: Division by zero
  • 6 bombs: CHK Instruction
  • 7 bombs: TRAPV Instruction
  • 8 bombs: Privilege Violation
  • 9 bombs: Trace
  • 10 bombs: Line 1010 Emulator
  • 11 bombs: Line 1111 Emulator
  • 12–13 bombs: Reserved
  • 14 bombs: Format Error
  • 15 bombs: Uninitialized Interrupt Vector
  • 16–23 bombs: Reserved
  • 24 bombs: Spurious Interrupt
  • 25 bombs: Level 1 Interrupt Autovector
  • 26 bombs: Level 2 Interrupt Autovector
  • 27 bombs: Level 3 Interrupt Autovector
  • 28 bombs: Level 4 Interrupt Autovector
  • 29 bombs: Level 5 Interrupt Autovector
  • 30 bombs: Level 6 Interrupt Autovector
  • 31 bombs: Level 7 Interrupt Autovector
  • 32–47 bombs: Trap Instruction Vectors
  • 48–63 bombs: Reserved
  • 64–255 bombs: User Interrupt Vectors[2]

linux-debian.jpg  MANRES STEGA

09 09 2017

steghide embed -ef script.py -cf image_in.jpg -sf image_out.jpg -Z

steghide extract -sf image_out.jpg -xf steganofile.txt

lien :
http://steghide.sourceforge.net/


  MANRES III (.py code)

06 09 2017

 

#!/usr/bin/python
# coding: utf-8

import sys
import Image
import random
import os
import ImageDraw
import ImageFont
import ImageFilter
from time import gmtime, strftime
import time
import ImageEnhance
import pickle

# MILLISECONDES
from datetime import datetime
dt = datetime.now()
dt.microsecond
heure = str(dt.hour)+"h"+str(dt.minute)+"m"+str(dt.second)+"s"+str(dt.microsecond)+"ms"

print dt

# MODE COULEUR RGBA OU 1 BIT
mode_couleur = "1"

# AGRANDISSEMENT
allongement = 2

# IMAGES
im1 = Image.open(str(sys.argv[1])).convert(mode_couleur)
im2 = Image.new(mode_couleur,(im1.size[0], im1.size[1]))
im3 = Image.new(mode_couleur,(im1.size[0], im1.size[1]))
im4 = Image.new(mode_couleur,(im1.size[0], im1.size[1]))
im5 = Image.new(mode_couleur,(im1.size[0], im1.size[1]))
im6 = Image.new(mode_couleur,(im1.size[0]*allongement, im1.size[1]))

# LARGEUR HAUTEUR
Larg = im1.size[0]
Haut = im1.size[1]
loadfile = False

# EMPLACEMENT SCRIPT
scriptpy = str(sys.argv[1])
script = scriptpy[:-4]


def randHaut():
	return random.randint(0, im1.size[1]/8)*8

randomCoupeHauteurSRC = [0, \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
randHaut(),randHaut(),randHaut(),randHaut(), \
im1.size[1]]
# NETTOYAGE ET RANGEMENT
randomCoupeHauteur = set(randomCoupeHauteurSRC)
randomCoupeHauteur = list(randomCoupeHauteur)
randomCoupeHauteur.sort()
	
# HAACHEUUR
def Hacheur(haut, bas) :
	n = 0
	i = 0
	
	while n<im6.size[0] :
		i+=1
		loop = 0
		
		# PROPORTIONS
		proportions = [\
		(2,64),(2,128),(2,256),(2,512),(2,1024),(2,2048),\
		(4,32),(4,64),(4,128),(4,256),(4,512),(4,1024),\
		(8,16),(8,32),(8,64),(8,128),(8,256),(8,512),\
		(16,8),(16,16),(16,32),(16,64),(16,128),(16,256),\
		(32,4),(32,8),(32,16),(32,32),(32,64),(32,128),\
		(64,2),(64,4),(64,8),(64,16),(64,32),(64,64),\
		(128,1),(128,2),(128,4),(128,8),(128,16),(128,32),\
		(256,1),(256,2),(256,4),(256,8),(256,16),\
		(512,1),(512,2),(512,4),(512,8),(512,8),\
		(1024,1),(1024,2),(1024,4),\
		(2048,1),(2048,2),\
		(4096,1)]
	
		# COPY POS X 
		choix_rnd = random.randint(0, len(proportions)-1)
		largeur = proportions[choix_rnd][0]
		repeat = proportions[choix_rnd][1]
		
		copyPosX = random.randint(0, (im1.size[0]-largeur))
		
		
		pixelSizeList = [1 ,1 ,1 ,1 ,2 ,4 ,8, 16, 64, 512]		
		pixelSizeIndex = random.randint(0,len(pixelSizeList)-1)		
		pixelSize = pixelSizeList[pixelSizeIndex]
		
		hauteur = bas-haut
		cropfinal = [largeur,hauteur]
		
		# truc bourrin pour ne pas faire que la taille du pixel soit 
		# plus grande que l'image en question'
		if pixelSize > largeur :
			pixelSize = largeur
		if pixelSize > hauteur :
			pixelSize = hauteur
		# /truc bourrin
		
		im2 = im1.crop((copyPosX,haut,copyPosX+largeur,haut+hauteur))
		im3 = im2.resize((im2.size[0]/pixelSize, im2.size[1]/pixelSize), Image.NEAREST)
		im4 = im3.resize((im3.size[0]*pixelSize, im3.size[1]*pixelSize), Image.NEAREST)
		im5 = im4.crop((0,0,cropfinal[0],cropfinal[1]))
				
		while loop<repeat:
			px1 = n
			px2 = n + cropfinal[0]
			im6.paste(im5, (px1, haut, px2, bas))
			
			n = n + cropfinal[0]
			loop = loop + 1



for j in range(len(randomCoupeHauteur)-1):
	Hacheur(randomCoupeHauteur[j], randomCoupeHauteur[j+1])


im6.convert(mode_couleur)
im6.save(script+"."+heure+".png",'PNG', quality=100, dpi=(100,100))
 

  MANRES II [EXPLODE]

28 08 2017


SERNAM_2017_39-SERNAM_2017_43.jpg  MANRES

24 08 2017

SERNAM_2017_39-SERNAM_2017_43.jpg


tl09.jpg  sécurité

13 08 2017

Quelques commandes cools pour sécuriser son serveur.

Voir quels ports sont ouverts sur la machine en question :

nmap -sT -O localhost

Éditer la configuration de fail2ban :

nano /etc/fail2ban/jail.local

Connaître qui utilise le port 25 :

netstat -anp | grep 25

Vérifier les filtres fail2ban :

fail2ban-client status


  photogrammetrie (le retour)

11 07 2017

Les 2 logiciels suivant nécessitent quand on veut les compiler, qu'on le fasse aussi avec toutes les bibliothèques nécessaire. Il y a donc de fortes chances pour que vous cloniez le dépôt git en utilisant l'option '--recursive' (du genre : git clone --recursive https://github.com/openMVG/openMVG.git)
Mattez bien la doc : elle est bien faite pour les 2 logiciels, et pour la compilation, si vous suivez bien la documentation, ça se fait sans aucun soucis.

OpenMVG
site : http://imagine.enpc.fr/~moulonp/openMVG/
code : https://github.com/openMVG/openMVG
doc : http://openmvg.readthedocs.io/en/latest/

OpenMVS
site : http://cdcseacave.github.io/openMVS/
code : https://github.com/cdcseacave/openMVS
doc : https://github.com/cdcseacave/openMVS/wiki


Pour une reconstruction simple, la suite de commandes ci dessous est tirée des documentation des logiciels respectifs :


python /data/Sources/OpenMVG/openMVG_Build/software/SfM/SfM_SequentialPipeline.py /input/images/folder/ /output/folder/

/data/Sources/OpenMVG/openMVG_Build/Linux-x86_64-RELEASE/openMVG_main_openMVG2openMVS -i sfm_data.bin -o scene.mvs

/usr/local/bin/OpenMVS/DensifyPointCloud scene.mvs

/usr/local/bin/OpenMVS/ReconstructMesh scene_dense.mvs

/usr/local/bin/OpenMVS/RefineMesh scene_dense_mesh.mvs

/usr/local/bin/OpenMVS/TextureMesh scene_dense_mesh.mvs
 

crédits illustration :
https://pfalkingham.wordpress.com/2016/09/14/trying-all-the-free-photogrammetry/



page 1 de 7

S'abonner


Cumulonimbus.fr - 2015 - license cc by-nc-sa 3.0 fr
Dernière mise à jour : 2017-10-16 17:37:24