ich würde gerne ein Bild einlesen (RGB) und dieses verzeichnen.
Ich bin absoluter Matlab-Neuling und komme deshalb nicht weiter. Folgendes habe ich bisher hinbekommen.
Wie Dir durch das syntax highlighting vielleicht aufgefallen ist, benutzt Du einen Funktionsnamen als Variablen-Namen (
image
). Das sollte man nicht tun.
Ansonsten fällt auf, dass Du
image
überhaupt nicht veränderst. Du lässt das Bild ausgeben, rechnest dann irgendwas und danach lässt Du Dir das gleiche Bild wieder ausgeben...
Da kommt ebenfalls eine Fehlermeldung. Wie gesagt, bin Neuling und komme derzeit nicht weiter.
Vielen Dank!
Grüße
Marc
Edit: Problem gelöst. Habe das Bild zuerst in ein double image umwandeln müssen. Jetzt funktioniert es auch mit inter2...
Dennoch vielen Dank für die Hilfe!
Am besten kann man sich doch immer noch selbst helfen ;-)
Beim nächsten Mal bitte gleich die Fehlermeldung mit posten, in der Regel sagt das Matlab da sehr genau, was man an welcher Stelle falsch gemacht hat...
Mein erzeugtes Bild (1028x749) ich kleiner, als mein Ausgangsbild (1280x980). An was liegt das? Und wie kann ich es erzwingen, dass die Größe beibehalten wird?
auch das Problem hat sich nun erledigt. Es scheint zu funktionieren.
Ich würde das ganze nun gerne in Simulink umsetzen. Letztendlich soll es dann bei einem Video funktionieren. Und zwar will ich ein Video einlesen, die Berechnung auf Pixelbasis (Matrix) durchführen und das veränderte Video speichern und anzeigen lassen.
Einfügen des Bildes (vorerst noch Bild) über einen "Image From File" Block und anzeigen über einen "Video Viewer" funktioniert schon mal.
Ich dachte, dass ich über eine Matlab function einfach den Code verwenden kann, aber so einfach scheint es nicht zu sein. Hat jemand eine Idee, wie ich dies verwirklichen kann?
Weil ich ja nicht einfach den kompletten m-file Code kopieren und in ein Matlab function Block einfügen kann. Da kommen dann lauter Fehlermeldungen weil viele Variablen nicht bekannt sind.
Ne, das geht natürlich nicht. Ist nämlich ein Matlab-Function-Block und kein Matlab-Script-Block. Der Block macht einen Funktionsaufruf mit einer Reihe von Eingabewerten und einer Reihe von Rückgabewerten. Da musst Du Dein Skript entsprechend auch als Funktion formulieren...
Hmm, ok. Und wie kann ich so eine Funktion umformulieren? Also ein Zugriff auf eine Bildmatrix und Neuberechnung der Pixel und die Neuausgabe? Komme da nicht so klar.
Nachdem ich die Verzeichnung meinen Wünschen entsprechend hinbekommen habe, würde ich gerne nur einen Bereich aus dem Bild auswählen. Grund hierfür ist, dass durch die Verzeichnung der Rand schwarz (bzw. NaN) ist und ich diesen nicht verwenden will. Das Bild soll quasi zugeschnitten werden, und zwar an allen Seiten gleich, so dass ich eine neue Bildgröße von l x b bekomme (z.B. 1280 x 960).
Wie sieht das vorgehen im Allgemeinen aus?
Nachdem ich dies nun auf ein Bild angewendet habe, möchte ich es auch auf ein Video anwenden. Das scheint mir jedoch etwas komplizierter zu sein. Als Ziel sollen die Videodaten als Matrix in Simulink eingelesen werden und das Video durch den obigen Effekt verzeichnet werden.
Wie gehe ich für dieses Vorhaben am besten vor?
Vielen Dank für die super Unterstützung, ihr seid echt super!
Problem ist die Interpolation. Dort gibt es eine Fehlermeldung (Sample values must be a single or double array).
Weiteres Problem ist, dass das Bild auf dem Kopf und gespiegelt dargestellt wird. Ich habe allerdings die Ursache nicht ausfindig gemacht. Das seltsame dabei ist, dass das 'traffic.avi' das bei Matlab dabei ist, funktioniert. Mein Originalvideo ist aber definitiv nicht gespiegelt, das habe ich bereits mit einem Windowsplayer überprüft.
Ist es überhaupt so möglich, die Pixel jedes Frames so zu bearbeiten?
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
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.