fixed code styling issues
work related to [https://bugzilla.ipr.univ-rennes.fr/show_bug.cgi?id=3345]
This commit is contained in:
parent
e5cc65c015
commit
01a6973fbb
|
|
@ -5,65 +5,57 @@ Created on Wed Sep 25 14:19:41 2024
|
|||
@author: errobin
|
||||
"""
|
||||
|
||||
import numpy as np #pour faire du calcul matriciel
|
||||
from PIL import Image #pour lire une image
|
||||
import matplotlib.pyplot as plt #pour faire des tracer
|
||||
import numpy as np # pour faire du calcul matriciel
|
||||
from PIL import Image # pour lire une image
|
||||
# import matplotlib.pyplot as plt # pour faire des tracer
|
||||
|
||||
#lecture image ######################################
|
||||
# lecture image ######################################
|
||||
|
||||
image_file = Image.open("GAN.bmp")
|
||||
image_bmp = 1.*np.array(image_file) # on transforme le fichier en matrice nommée image_bmp
|
||||
image_file.close() #fermeture du fichier en lecture
|
||||
image_bmp = 1. * np.array(image_file) # on transforme le fichier en matrice nommée image_bmp
|
||||
image_file.close() # fermeture du fichier en lecture
|
||||
|
||||
#####################################################
|
||||
|
||||
|
||||
|
||||
|
||||
# code pour aider à comprendre une image
|
||||
################################################################################
|
||||
|
||||
# recupère les dimension de l'image ###############
|
||||
dim=image_bmp.shape
|
||||
dim = image_bmp.shape
|
||||
|
||||
nb_ligne=dim[0]
|
||||
nb_colonne=dim[1]
|
||||
image_traitee=np.zeros((nb_ligne,nb_colonne)) #déclaration d'un tableau au dimension de l'image
|
||||
nb_ligne = dim[0]
|
||||
nb_colonne = dim[1]
|
||||
image_traitee = np.zeros((nb_ligne, nb_colonne)) # déclaration d'un tableau au dimension de l'image
|
||||
###################################################
|
||||
|
||||
# Affecte les valeurs de la matrice image_bmp à image_traitee
|
||||
for colonne in range(0,nb_colonne):
|
||||
for ligne in range(0,nb_ligne):
|
||||
for colonne in range(0, nb_colonne):
|
||||
for ligne in range(0, nb_ligne):
|
||||
|
||||
image_traitee[ligne,colonne]=image_bmp[ligne,colonne]#regarder les tableaux avec variable explorer
|
||||
image_traitee[ligne, colonne] = image_bmp[ligne, colonne] # regarder les tableaux avec variable explorer
|
||||
|
||||
# if False:
|
||||
# plt.imshow(image_traitee,'gray')
|
||||
# plt.show()
|
||||
#################################################################################
|
||||
|
||||
#################################################################################
|
||||
# fin code pour comprendre une image
|
||||
|
||||
|
||||
|
||||
|
||||
# DS partie Data
|
||||
#complétez le code suivant pour créer votre database tq; x_train = position du pixel et y_target = couleur du pixel
|
||||
# complétez le code suivant pour créer votre database tq; x_train = position du pixel et y_target = couleur du pixel
|
||||
|
||||
# declaration des tableaux
|
||||
X_train = np.zeros((nb_colonne * nb_ligne, 2))
|
||||
Y_target = np.zeros((nb_colonne * nb_ligne))
|
||||
|
||||
compt = 0
|
||||
for colonne in range(0, nb_colonne):
|
||||
for ligne in range(0, nb_ligne):
|
||||
X_train[compt, 0] = colonne
|
||||
X_train[compt, 1] = ligne
|
||||
|
||||
Y_target[compt] = image_bmp[colonne, ligne] / 255.
|
||||
compt = compt + 1
|
||||
|
||||
#declaration des tableaux
|
||||
X_train=np.zeros((nb_colonne*nb_ligne,2))
|
||||
Y_target=np.zeros((nb_colonne*nb_ligne))
|
||||
|
||||
compt=0
|
||||
for colonne in range(0,nb_colonne):
|
||||
for ligne in range(0,nb_ligne):
|
||||
X_train[compt,0]=colonne
|
||||
X_train[compt,1]=ligne
|
||||
|
||||
Y_target[compt]=image_bmp[colonne,ligne]/255.
|
||||
compt=compt+1
|
||||
|
||||
#sauvagarde de la database
|
||||
# sauvagarde de la database
|
||||
np.savetxt("X_train.txt", X_train, delimiter=';')
|
||||
np.savetxt("Y_target.txt", Y_target, delimiter=';')
|
||||
|
|
|
|||
|
|
@ -6,20 +6,20 @@ Created on Wed Sep 25 14:38:32 2024
|
|||
"""
|
||||
|
||||
# DS partie Train
|
||||
#complétez/joué sur les hyperparamètres (vitesse d'apprentissage et nb epoch) et sur l'architecture du modèle pour l'entrainer et pour le sauver (une fois entrainé)
|
||||
# complétez/joué sur les hyperparamètres (vitesse d'apprentissage et nb epoch) et sur l'architecture du modèle pour l'entrainer et pour le sauver (une fois entrainé)
|
||||
# ASTUCE un loss inférieur à 0.005 permets déjà d'obtenir des résultats intéréssants
|
||||
|
||||
|
||||
import time
|
||||
import tensorflow as tf
|
||||
import numpy as np
|
||||
from PIL import Image #pour lire une image
|
||||
|
||||
|
||||
X_train = np.genfromtxt('X_train.txt',delimiter=';')
|
||||
Y_target = np.genfromtxt('Y_target.txt',delimiter=';')
|
||||
X_train = np.genfromtxt('X_train.txt', delimiter=';')
|
||||
Y_target = np.genfromtxt('Y_target.txt', delimiter=';')
|
||||
|
||||
#Partie ANN definition + entrainement
|
||||
#*****************************************
|
||||
# Partie ANN definition + entrainement
|
||||
# *****************************************
|
||||
model = tf.keras.models.Sequential()
|
||||
|
||||
model.add(tf.keras.layers.Dense(2048, activation="relu"))
|
||||
|
|
@ -37,17 +37,15 @@ model.compile(
|
|||
)
|
||||
|
||||
|
||||
|
||||
###### D'après à quoi peuvent servir le code des lignes 38 à 41
|
||||
def scheduler(epoch):# dans cette fonction il est possible de faire des test if en fonction de epoch pour retourner différente valeur de la ???
|
||||
def scheduler(epoch): # dans cette fonction il est possible de faire des test if en fonction de epoch pour retourner différente valeur de la ???
|
||||
return 0.0001
|
||||
|
||||
|
||||
callback_vitesse_apprentissage = tf.keras.callbacks.LearningRateScheduler(scheduler)
|
||||
###################################################################
|
||||
|
||||
import time
|
||||
start_time = time.time()
|
||||
model.fit(X_train, Y_target, epochs=3,verbose=1,callbacks=[callback_vitesse_apprentissage])
|
||||
model.fit(X_train, Y_target, epochs=3, verbose=1, callbacks=[callback_vitesse_apprentissage])
|
||||
end_time = time.time()
|
||||
temps_cal = end_time - start_time
|
||||
print(temps_cal)
|
||||
Loading…
Reference in New Issue