WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Hilfestellung bei Mittelwertfilter/operator

 

tompson
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 12.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.01.2014, 13:03     Titel: Hilfestellung bei Mittelwertfilter/operator
  Antworten mit Zitat      
Hallo,

momentan versuche ich einen Mittelwertfilter zu programmieren. Jedoch fehlt mir dabei ein bisschen das verständnis von Matlab

Zur theoretischen Erläuterung.
Eingangsbild A, Filtermatrix F,(bestehend aus 1sen) nA= Größe A, nF= Größe F

Randbehandlung:
Spiegeln von A an allen kanten --> A'

Eigentliche Operation:
Multiplikation von F mit A'(Zentralteilchen der Filtermaske liegt auf dem ehemaligen Punkt 0,0 von A) --> bildung der Mittelwerte --> Neuer Bildpunkt
Filtermaske F wird eins weitergeschoben usw.

Danach sollte ein Neues Bild entstehen A'', welches aus den Mittelwerten besteht.

Ich habe aber die größten Probleme mit dem spiegeln, die befehle mit flip sind mir wohlbekannt aber wie mache ich das die matrizen dann zusammenhängen?

p.s. hab weiter gearbeitet nun kommt ne fehlermeldung das der index der matrix überschritten wird(bei der formel B(i,j)..., hab alles manuel(für i werte eingesetzt z.B. 1,2..) ausprobiert und sollte funktionieren tuts aber nicht)) :(
Mein Code schaut momentan so aus ...
Code:
A = randi(3,3)

h = ones(3,3)

A = double(A)

n = numel(A) ;
%Filter Größe
[mh,nh] = size(h);
zH = size(h)
%Bild Größe
[mA , nA] = size(A);

A1 = flipud(A);
A2 = fliplr(A) ;
A12 = [A1 , A2] ;
A3 =[ A , A2 ; A12 ] ;


for i = 1 : 1 : mA ;
    for j = 1 : 1 : nA ;
        B(i,j) = (1/nh)*( sum(sum(A3((i:1:i + (nh - 1)), (j :1: j (mh - 1)))))) ;
       
    end
end
 


Vielen dank schonmal ;-)
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.