Forum: FPGA, VHDL & Co. Bild resamplen - flexible Skalierung


von Z.H. (Gast)


Lesenswert?

Ich muss ein Bild in einem FPGA resamplen, dass vom Erzeuger in 768x256 
oder 768 x 256 x 1.5 geliefert wird. Beides sind dieselbe Auflösung, nur 
von einem CCD mit einem seltsamen Ausleseverfahren.

Wie kann ich daraus ein 320x200 Bild machen und auch ein 480x320 
(jeweils unter Hinzufügen von Leerzeilen/Spalten) damit das Format 
passt?

Ich muss das Ganze ja neu sampeln, stosse aber an das Problem, eine 
Menge Aliaseffekte zu sehen, weil die Relationen nicht statisch sind.

Z.B. habe ich einmal eine 3:2 Abbildung aber auch eine 5:3.

Jeweils an den Grenzen eines solchen 3er und 5er Blocks sieht man 
Stufen.

von PittyJ (Gast)


Lesenswert?

Damit es richtig schön wird, hilft es nicht nur ein paar Zeilen/Spalten 
wegzulassen oder zu verdoppelt.
Resampling ist schon der richtige Weg. Allerdings wird es mathematisch: 
um eine Zeile an der Position 50.8 zu erzeugen, braucht man 0.8 * die 
Zeile 51 und 0.2 * die Zeile 50. Das geht dann mit Floating-Point zahlen 
besser. Und die Spalten spielen ja auch noch mit hinein.

Ich würde erst einmal einen Algorithmus auf einem Computer in einer 
'normalen' Hochsprache entwickeln. Da ist der Entwicklungszyklus 
schneller. Wenn der Algorithmus dann stabil läuft, dann sehen, wie ich 
ihn in einem FPGA realisieren könnte.

von Logibaer (Gast)


Lesenswert?

Man muss das Resampeln eben über genügend viele Pixel ausdehen, um 
ganzzahlig Rechnen zu können:

5:3 also mit 15 pixeln und entsprechenden Zwischenabbildungen.

Beim resampeln muss man allerdings nicht zwingend mit floating point 
arbeiten. Genügend gut aufgelöstes fixed point ist einfacher im 
handling.

von Stefan W. (wswbln)


Lesenswert?


von Haro (Gast)


Lesenswert?

Die TU Cottbus erforscht also Diamantfilter. Soso.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.