QR CODE

fabolous35 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
fabolous35 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Étudiant en Master 1 Électronique, Gestion de l'Énergie et Automatique à
l'université de Nantes,
j'ai choisi comme projet informatique de créer un générateur de QR code.
C'est pour cela que je me permets de vous demander conseil afin d'avancer dans mon projet.
Ma seule contrainte est de programmer à l'aide de Matlab.
Je suis vraiment en difficulté...

Voici ce que j'ai commencé à faire:
AAA=input('donner une chaine de caracteres\n ','s')
BBB=uint16(unicode2native(AAA)-55)
[imin,jmax]=size(AAA)
taille=length(AAA)
debut=dec2bin(2,4)
NBC=dec2bin(taille,9)
CC=dec2bin(30,9)
debut=[CC debut]
debut=[debut NBC]
for i=1:2:jmax

valeur=(BBB(i)*45+BBB(i+1))
valbin=dec2bin(valeur,11)
debut=[debut valbin]

end

Merci pour votre aide



1 réponse

fabolous35 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
a=zeros(26,26);

a(1:7,7)=1;
a(7,1:7)=1;
a(1,1:7)=1;
a(1:7,1)=1;

a(19:25,1:6:7)=1;
a(19:6:25,1:7)=1;
a(19:6:25,19:25)=1;
a(19:25,19:6:25)=1;
a(3:5,3:5)=1; %carré en bas a gauche
a(21:23,3:5)=1; %carré en haut gauche; ligne 21 à 23 colonne 3 à 5
a(21:23,21:23)=1; % carré en haut à droite
a(9:2:17,7)=1;
a(19,9:2:17)=1;
a(5:4:9,17:21)=1;
a(5:9,17:4:21)=1;
a(7,19)=1;
pcolor(a);
view(0,90)

blocy(1,1:2)=4; %BLOC 1 Y
blocy(1,3:4)=3;
blocy(1,5:6)=2;
blocy(1,7:8)=1;

blocx(1:4,1:2:7)=24; %BLOC 1:4 X
blocx(1:4,2:2:8)=25;

blocy(2,1:2)=8; %BLOC 2 Y
blocy(2,3:4)=7;
blocy(2,5:6)=6;
blocy(2,7:8)=5;

blocy(3,1:2)=12;
blocy(3,3:4)=11; %BLOC 3 Y
blocy(3,5:6)=10;
blocy(3,7:8)=9;

blocy(4,1:2)=16; %BLOC 4 Y
blocy(4,3:4)=15;
blocy(4,5:6)=14;
blocy(4,7:8)=13;


blocy(5,1:2)=13; %BLOC 5 Y
blocy(5,3:4)=14;
blocy(5,5:6)=15;
blocy(5,7:8)=16;

blocy(6,1:2)=9;
blocy(6,3:4)=10; %BLOC 6 Y
blocy(6,5:6)=11;
blocy(6,7:8)=12;

blocy(7,1:2)=5;
blocy(7,3:4)=6; %BLOC 7 Y
blocy(7,5:6)=7;
blocy(7,7:8)=8;

blocy(8:9,1:2)=4; %BLOC 8:9 Y
blocy(8:9,3:4)=3;
blocy(8:9,5:6)=2;
blocy(8:9,7:8)=1;

blocx(5:8,1:2:7)=22; %BLOC 5:8 X
blocx(5:8,2:2:8)=23;


blocy(10,1:2)=13; %BLOC 10 Y
blocy(10,3:4)=12;
blocy(10,5:6)=11;
blocy(10,7:8)=10;


blocx(9:10,1:2:7)=20; %BLOC 9:10 X
blocx(9:10,2:2:8)=21;

blocy(11,1:4)=16; %BLOC 11 y
blocy(11,5:6)=15;
blocy(11,7:8)=14;

blocx(11,1)=18; %BLOC 11 X
blocx(11,2)=19;
blocx(11,3:7)=20;
blocx(11,4:8)=21;

blocy(12,1:2)=12; %BLOC 12 Y
blocy(12,3:4)=13;
blocy(12,5:6)=14;
blocy(12,7:8)=15;

blocx(12:13,1:2:7)=18; %BLOC 12:13 X
blocx(12:13,2:2:8)=19;


blocy(13,1:2)=3; %BLOC 13 Y
blocy(13,3:4)=4;
blocy(13,5:6)=10;
blocy(13,7:8)=11;

blocy(14,1:2)=1; %BLOC 14 Y
blocy(14,7:8)=1;
blocy(14,3:4)=2;
blocy(14,5:6)=2;

blocx(14,1:2:3)=16; %BLOC 14 X
blocx(14,2:2:4)=17;
blocx(14,5:2:7)=18;
blocx(14,6:2:8)=19;


%BLOC 15

blocy(16,1)=13;
blocy(16,2:3)=12; %BLOC 16 Y
blocy(16,4:5)=11;
blocy(16,6:7)=10;
blocy(16,8)=9;

blocx(16:18,2:2:8)=16; %BLOC 16:18 X
blocx(16:18,1:2:7)=17;


blocy(17,1)=17;
blocy(17,2:3)=16; %BLOC 17 Y
blocy(17,4:5)=15;
blocy(17,6:7)=14;
blocy(17,8)=13;


blocy(18,1)=22;
blocy(18,2:3)=21; %BLOC 18 Y
blocy(18,4:5)=20;
blocy(18,6:7)=18;
blocy(18,8)=17;

%BLOC 19


blocy(20,1)=21;
blocy(20,2:3)=22; %BLOC 20 Y
blocy(20,4:5)=23;
blocy(20,6:7)=24;
blocy(20,8)=25;

blocx(20:24,2:2:8)=14; %BLOC 20:24 X
blocx(20:24,1:2:7)=15;

blocy(21,1)=16;
blocy(21,2:3)=17; %BLOC 21 Y
blocy(21,4:5)=18;
blocy(21,6:7)=20;
blocy(21,8)=21;


blocy(22,1)=12;
blocy(22,2:3)=13; %BLOC 22 Y
blocy(22,4:5)=14;
blocy(22,6:7)=15;
blocy(22,8)=16;

blocy(23,1)=8;
blocy(23,2:3)=9; %BLOC 23 Y
blocy(23,4:5)=10;
blocy(23,6:7)=11;
blocy(23,8)=12;

blocy(24,1)=4;
blocy(24,2:3)=5; %BLOC 24 Y
blocy(24,4:5)=6;
blocy(24,6:7)=7;
blocy(24,8)=8;


blocy(25,1:3)=1; %BLOC 25 Y
blocy(25,4:5)=2;
blocy(25,6:7)=3;
blocy(25,8)=4;

blocx(25,1)=13; %BLOC 25 X
blocx(25,2:2:8)=14;
blocx(25,3:5:7)=15;

blocy(26,1)=5;
blocy(26,2:3)=4; %BLOC 26 Y
blocy(26,4:5)=3;
blocy(26,6:7)=2;
blocy(26,8)=1;

blocy(27,1)=9;
blocy(27,2:3)=8; %BLOC 27 Y
blocy(27,4:5)=7;
blocy(27,6:7)=6;
blocy(27,8)=5;

blocy(27,1)=13;
blocy(27,2:3)=12; %BLOC 28 Y
blocy(27,4:5)=11;
blocy(27,6:7)=10;
blocy(27,8)=9;

blocx(26:28,2:2:8)=12; %BLOC 26:28 X
blocx(26:28,1:2:7)=13;



chaine=input('Entrer une chaine de caractère\n', 's');
conversion=uint16(unicode2native(chaine)-55);
[imin,jmax]=size(chaine);
taille=length(chaine)
codage=dec2bin(2,4)
T=dec2bin(taille,9)
TT=dec2bin(30,9)
codage=[TT codage]
codage=[codage T]

for i=1:2:jmax

val_dec=conversion(i)*45+conversion(i+1)
val_bin=dec2bin(val_dec,11)
codage_final=[codage val_bin]

end

nb_bit=length(codage_final)

for i=1:8:nb_bit
for j=1:8
if (codage_final(i+j-1)=='1')
a(blocy(i,j),blocx(i,j))=1;
else
a(blocy(i,j),blocx(i,j))=0;
end
end
end


pcolor(a);
view(0,90)
0