Hallo,
ich möchte ein Assembler-Programm erstellen welches ein Bild lädt und auf der Konsole ausgibt.
Zuerst soll das Originalbild ausgegeben werden, dann soll ein 2 Pegelbild mit einer festen Schwelle ermittelt und ausgegeben werden.
Danach sollen die Objekte mit zB. FloodFill markiert werden und dann erneute Bildausgabe.
Zwischen den Schritten soll das Programm auf eine Tastatureingabe warten.
Ich weiss nun leider nicht wie ich überhaupt eine Bilddatei laden und auf der Konsole ausgeben kann.
Hat da jemand eine Idee? Danke im Voraus für Tipps.
Gruß Tom
Objekterkennung
Moderatoren: crack, Krüsty, Marwin
- crack
- Administrator
- Beiträge: 280
- Registriert: Dienstag 21. Dezember 2004, 15:02
- Wohnort: 53783 Eitorf
- Kontaktdaten:
Re: Objekterkennung
Es buchstäblich auf der 'Konsole' (Textmodus 80x25 Zeichen) auszugeben ist so wahrscheinlich nicht möglich, aber Du kannst es ausgeben indem Du den Videomodus entsprechend setzt (z.B. 800x600 Pixel SVGA bzw. jeder Modus nach VESA Spezifikation) und das Bild Byte für Byte (lodsb und stosb) in den Videospeicher überträgst.
mit freundlichen grüssen,
with best regards,
crack
with best regards,
crack
Re: Objekterkennung
Ja das stimmt, das Darstellen des Bildes und umschalten des Videomodus habe ich hinbekommen, doch nun weiss ich nicht wie ich aus dem originalbild dieses 2 schwellenbild als ein bild mit lediglich schwarz und weis, ohne grautöne, machen soll.
Da muss ich doch quasi jedes pixel einlesen, den Helligkeitswert ermitteln und dann per verzweigung bei einer mir festgelegten schwelle sagen: fülle dieses Pixel mit schwarz und wenn es über der schwelle ist, mit weiss.
Grob gedacht...aber das zu implementieren... da hab ich noch keinen Ansatz...
Gruß Tom
Da muss ich doch quasi jedes pixel einlesen, den Helligkeitswert ermitteln und dann per verzweigung bei einer mir festgelegten schwelle sagen: fülle dieses Pixel mit schwarz und wenn es über der schwelle ist, mit weiss.
Grob gedacht...aber das zu implementieren... da hab ich noch keinen Ansatz...
Gruß Tom
- crack
- Administrator
- Beiträge: 280
- Registriert: Dienstag 21. Dezember 2004, 15:02
- Wohnort: 53783 Eitorf
- Kontaktdaten:
Re: Objekterkennung
Ich versuchs mal als Papier und Bleistiftcode:Tommy1169 hat geschrieben:Ja das stimmt, das Darstellen des Bildes und umschalten des Videomodus habe ich hinbekommen, doch nun weiss ich nicht wie ich aus dem originalbild dieses 2 schwellenbild als ein bild mit lediglich schwarz und weis, ohne grautöne, machen soll.
Da muss ich doch quasi jedes pixel einlesen, den Helligkeitswert ermitteln und dann per verzweigung bei einer mir festgelegten schwelle sagen: fülle dieses Pixel mit schwarz und wenn es über der schwelle ist, mit weiss.
Grob gedacht...aber das zu implementieren... da hab ich noch keinen Ansatz...
Gruß Tom
Code: Alles auswählen
.data
Schwellwert: db 080h ;nur als Beispiel
.code
...
einsprung:
lodsb ;bildpunkt laden
cmp al, byteptr[Schwellwert]
jge weiss
mov al, 0
stosb
loop einsprung
weiss:
mov al, 0ffh
stosb
loop einsprung
...
rest_des_Programms Y=(R+B+G)/3
Dann sollte das doch eigentlich funktionieren ...
mit freundlichen grüssen,
with best regards,
crack
with best regards,
crack