| Operatoren |
depth_from_focus — Bestimmung der Tiefe aus mehreren Fokusebenen.
depth_from_focus(MultiFocusImage : Depth, Confidence : Filter, Selection : )
depth_from_focus bestimmt aus mehreren Bildern einer Fokusserie die Tiefe. Die Bilder der Fokusserie werden dabei als ein mehrkanaliges Bild in MultiFocusImage übergeben. Die Tiefe für jeden Bildpunkt wird als die Nummer des Kanals in Depth zurückgeben. Der Parameter Confidence gibt die Sicherheit an, mit der die Tiefe für die Bildpunkte geschätzt werden konnte. Große Werte bedeuten dabei eine große Zuverlässigkeit der Schätzung.
Es wird dasjenige Pixel einer Fokusebene ausgewählt, das lokal am schärfsten ist. Das verwendete Verfahren wird über die Parameter Filter und Selection festgelegt.
Dem Parameter Filter können die Werte 'highpass' und 'bandpass' übergeben werden. Um die Schärfe im Bild zu bestimmen, kann entweder ein Highpassfilter oder ein Bandpassfilter verwendet werden. Je größer der resultierende Wert ist, desto schärfer ist das Bild an dieser Stelle. Beim Bandpassfilter werden - im Vergleich zum Highpassfilter - die ganz hohen Frequenzen unterdrückt. Dies ist z.B. bei stark verrauschten Bildern nützlich.
Das gefilterte Bild kann optional noch mit dem Mittelwertfilter geglättet werden, indem man zwei zusätzliche Integer-Werte für die Maskengröße im Parameter Filter übergibt (z.B. ['highpass', 7, 7]). Dadurch wird die Schärfeinformation über die benachbarten Pixel "verschmiert", so dass texturlose Bereiche im Bild überbrückt werde können. Bitte beachten Sie, dass diese Glättung kein Rauschen in den Originalbildern unterdrückt, da sie erst nach der High- oder Bandpassfilterung angewendet wird.
Der Parameter Selection bestimmt, wie die optimale Fokusebene ausgewählt wird. Wenn der Wert 'next_maximum' übergeben wird, wird das nächstliegende Schärfemaximum in der Umgebung jedes Pixels verwendet. Bei 'local' werden dagegen die für das Pixel ermittelten Schärfewerte aller Fokusebenen verwendet. Mit 'next_maximum' erhält man i.d.R. ein etwas robusteres und leicht geglättetes Ergebnis.
Eine solche zusätzliche Glättung ist nützlich, wenn zur Aufnahme der Fokussequenz keine telezentrische Optik verwendet wird. In diesem Fall verändert sich die Position eines Punktes innerhalb der Sequenz leicht. Durch geeignete Wahl einer zusätzlichen Glättung kann dieser Effekt teilweise kompensiert werden.
Besteht die Fokusserie MultiFocusImage aus mehr als 255 Fokusleveln (Kanälen) so wird die Tiefe für Werte über 255 abgeschnitten, d.h. Tiefenwerte größer als 255 werden ignoriert.
Werden für die Filtermaske von Filter gerade statt ungerade Werte übergeben, verwendet die Routine an ihrer Stelle die nächstgrößeren ungeraden Werte (damit ist der Schwerpunkt der Filtermaske immer eindeutig bestimmt).
Wird Selection auf 'local' gesetzt und als Filter 'highpass' oder 'bandpass' gewählt, kann depth_from_focus auf OpenCL-Geräten ausgeführt werden. Wird die zusätzliche Glättung aktiviert, gelten die selben Einschränkungen und Voraussetzungen wie für mean_image.
Beachten Sie, dass Filteroperatoren eventuell unerwartete Resultate ausgeben, wenn ein Bild mit einer reduzierten Domäne als Input übergeben wird. Weitere Informationen können im Kapitel Filter gefunden werden.
Mehrkanaliges Graubild bestehend aus meheren Fokusebenen.
Tiefenbild.
Sicherheit der Tiefenschätzung.
Filter, um scharfe Pixel zu finden.
Defaultwert: 'highpass'
Wertevorschläge: 'highpass', 'bandpass', 3, 5, 7, 9
Methode scharfe Pixel zu finden.
Defaultwert: 'next_maximum'
Werteliste: 'local', 'next_maximum'
Werteliste (für Compute Devices): 'local'
compose3(Focus0,Focus1,Focus2,&MultiFocus); depth_from_focus(MultiFocus,&Depth,&Confidence,'highpass','next_maximum'); mean_image(Depth,&Smooth,15,15); select_grayvalues_from_channels(MultiChannel,Smooth,SharpImage); threshold(Confidence,HighConfidence,10,255); reduce_domain(SharpImage,HighConfidence,ConfidentSharp);
compose2, compose3, compose4, add_channels, read_image, read_sequence
select_grayvalues_from_channels, mean_image, binomial_filter, gauss_filter, threshold
3D Metrology
| Operatoren |