Conversion matrice bit en décimal sous matlab

Résolu
Bonjour,
est ce que quelqu'un saurait comment convertir une matrice de bits 1 0 en une matrice d'éléments décimaux sous matlab?
merci d'avance
Seanty
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. Apparement, il existe en matlab des fonction permettant de passer du binaire au decimal et inversement.

    Bin => dec : bi2de
    Dec => bin : de2bi

    il te suffit donc de parcourir ta matrice stocker des bits et les passer dans la fonction bi2de.

    Petit lien sur le même sujet : https://www.developpez.net/forums/d105238/general-developpement/algorithme-mathematiques/algorithmes-structures-donnees/algo-conversion-decimal-binaire/

    bon courage pour la suite.

    Cdt
    1. Ca a peut être changé depuis mais maintenant c'est bin2dec (et inversement).
  2. T'as matrice est de quelle type ?

    Genre ça :

    +---------------+
    | 1 | 0 | 0 | 1 |
    | 0 | 1 | 0 | 1 |
    | 1 | 0 | 1 | 1 |
    +---------------+

    ou ça :

    +------------------------------------------------+
    | 1011001 | 1011001 | 1011001 |1011001 |
    | 1011001 | 1011001 | 1011001 |1011001 |
    | 1011001 | 1011001 | 1011001 |1011001 |
    +------------------------------------------------+

    Donc si ceux sont des bits ou des octets ?
    1. Bonsoir,
      j'ai une matrice d'octet. (plusieurs lignes et 8 colonnes). Elle se présente ainsi:
      1 0 1 0 1 0 0 0
      1 1 1 1 1 1 1 1
      et ainsi de suite.
      Merci d'avance
      1. oublie pas de mettre "résolu", ça pourrait aider d'autres personnes ;-)
        1. bonsoir ,
          j'ai deux image en décimal ,je veut k'additionner ses deux matrice
          clear all;close all;clc;
          a=[0 15 135;10 100 200; 20 50 150];
          b=[100 105 110; 60 80 90;40 10 120];
          c=zeros(size(a));
          [m,n]=size(a);
          for i=1:m
          for j=1:n
          c=dec2bin(a(i,j),7),pause
          end
          end

          k=zeros(size(b));
          [m,n]=size(b);
          for i=1:m
          for j=1:n
          k=dec2bin(b(i,j),7),pause
          end
          end
          g=uint8([0000000 0001111 10000111;0001010 1100100 11001000;0010100 0110010 10010110]);
          r=uint8([1100100 1101001 0001010;1111000 1010000 1011010;0101000 0001010 1111000]);
          TT = bitand(g,r)

          mais ,il donne le resultat faux
          svp aide moi merci :)