QR CODE

Fermé
fabolous35 Messages postés 2 Date d'inscription jeudi 6 décembre 2012 Statut Membre Dernière intervention 7 décembre 2012 - Modifié par fabolous35 le 6/12/2012 à 15:58
fabolous35 Messages postés 2 Date d'inscription jeudi 6 décembre 2012 Statut Membre Dernière intervention 7 décembre 2012 - 7 déc. 2012 à 00:57
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



A voir également:

1 réponse

fabolous35 Messages postés 2 Date d'inscription jeudi 6 décembre 2012 Statut Membre Dernière intervention 7 décembre 2012
7 déc. 2012 à 00:57
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