IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Subscripted assignment dimension mismatch [Débutant]


Sujet :

MATLAB

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Subscripted assignment dimension mismatch
    bonjour ;
    j'ai besoin de votre aide pour débloquer mon programme s'il vous plait.
    Je souhaites superposer 3 matrices de taille différentes en comblant les lignes ou colonnes manquantes par des zéros ;ci dessous mon programme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    nombreligne=2031;
    nombrecolonne=1271;
     
    fid=fopen('emplacement de ma première image','rb');
    A=fread(fid,[nombrecolonne,nombreligne-1],'float'); %première matrice
    fclose(fid);
    image(rot90(fliplr(A)))
     
    fic=fopen('emplacement de ma deuxième image','rb');
    B=fread(fic,[nombrecolonne-1,nombreligne],'float'); %deuxième matrice
    fclose(fic);
    image(rot90(fliplr(B)))
     
    C=(-1)*ones(2032,1271); %troisième matrice 
     
     
    % après je fais ça pour écrire la nouvelle matrice issue de la superposition des 3 précédentes que j'appelle N
     
    N=zeros(3,1:1271*2031); 
    N(1,1:length(A)=A;
    N(2,1:length(B)=B;
    N(3,1:length(C)=C;
    quand j'exécute il m'affiche ce message d'erreur:

    Warning:Input arguments must be scalar.
    ??? Subscripted assignment dimension mismatch.
    je ne sais pas ce qu'il faut faire pour corriger.

    Merci d'avance pour vos suggestions

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Regarde ce que retourne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    length(A)
    size(A)
    numel(A)
    Je t'invite de plus à consulter la FAQ Subscripted assignment dimension mismatch.

  3. #3
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 53 163
    Points
    53 163
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour, j'ai pu résoudre mon problème en utilisant la syntaxe suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    N=zeros(3,1271,2031);
    C=-ones(1271,2031);
     
    N(1,1:size(A,1),1:size(A,2))=A;
    N(2,1:size(B,1),1:size(B,2))=B;
    N(3,1:size(C,1),1:size(C,2))=C;

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Subscripted assignment dimension mismatch.
    Par syki.mail dans le forum Images
    Réponses: 13
    Dernier message: 29/03/2012, 12h17
  2. [Débutant] Subscripted assignment dimension mismatch
    Par Youni92 dans le forum MATLAB
    Réponses: 4
    Dernier message: 19/05/2010, 10h05
  3. erreur "Subscripted assignment dimension mismatch.
    Par lena_87 dans le forum MATLAB
    Réponses: 1
    Dernier message: 21/04/2009, 22h13
  4. Réponses: 4
    Dernier message: 28/04/2008, 18h06
  5. Réponses: 8
    Dernier message: 27/04/2007, 19h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo