aumentata dimensione rete neurale, verificata immagine mnist con visualizzatore, messe 1000 epoche

This commit is contained in:
2025-02-14 15:34:18 +01:00
parent 2488b37d35
commit e49dcb42b7
9 changed files with 57 additions and 23 deletions

View File

@@ -1,9 +1,14 @@
#include <allegro.h>
#include <time.h>
#include "percettroni.h"
#include "mnist/mnist_manager.h"
#define IMAGE_WIDTH 32
#define IMAGE_HEIGHT 32
//CIFAR_10
/* #define IMAGE_WIDTH 32
#define IMAGE_HEIGHT 32 */
//MNIST
#define IMAGE_WIDTH 28
#define IMAGE_HEIGHT 28
#define SCALE_FACTOR 2
//Cavalli
@@ -27,7 +32,8 @@ void main()
{
init_allegro();
set = get_dataset("cifar-10-batches/test_batch.bin");
//get_dataset("cifar-10-batches/test_batch.bin");
set = get_dataset("mnist/t10k-images.idx3-ubyte", "mnist/t10k-labels.idx1-ubyte");
if (set == NULL) {
printf("Errore nel caricare il dataset\n");
return;
@@ -67,7 +73,8 @@ void init_allegro() {
show_mouse(screen);
}
void carica_immagine(int indice_set)
//cifar_10
/* void carica_immagine(int indice_set)
{
printf("Immagine indice: %d, categoria: %d, previsione: %d\n", indice_set, set->istanze[indice_set].categoria, prevedi(indice_set));
@@ -81,6 +88,29 @@ void carica_immagine(int indice_set)
putpixel(image, x, y, makecol(r, g, b));
}
}
} */
//MNIST
void carica_immagine(int indice_set)
{
// Stampa informazioni sull'immagine
printf("Immagine indice: %d, categoria: %d\n", indice_set, set->istanze[indice_set].categoria);
// Itera su ogni pixel dell'immagine
for (int y = 0; y < IMAGE_HEIGHT; y++)
{
for (int x = 0; x < IMAGE_WIDTH; x++)
{
// Ottieni il valore del pixel (scala di grigi, quindi un solo canale)
int gray_value = set->istanze[indice_set].immagine[y * IMAGE_WIDTH + x];
// Converti il valore in scala di grigi in un colore RGB (r = g = b = gray_value)
int color = makecol(gray_value, gray_value, gray_value);
// Disegna il pixel sull'immagine
putpixel(image, x, y, color);
}
}
}
void disegna_interfaccia()