Einführung in die medizinische Bildverarbeitung SS 2013

Größe: px
Ab Seite anzeigen:

Download "Einführung in die medizinische Bildverarbeitung SS 2013"

Transkript

1 Einführung in die medizinische Bildverarbeitung SS 213 Stephan Gimbel 1

2 Kurze Wiederholung Kurven- und oberflächenbasierte Registrierung Rand- und Oberflächen, z.b. durch Meshes repräsentiert Genauigkeit hängt von der Genauigkeit der Segmentierungsergebnisse ab ICP-Algorithmus Eingabe: zwei Oberflächen A und B Ausgabe: an B angepasste Oberfläche A verwendet Punktkorrespondenzen zwischen den Oberflächen iterative Annäherung über Berechnung einer Transformation Konturbasierte Registrierung Abbildung zweier korrespondierender Konturpunkt in zwei Datensätzen Aussenkonturen aus Atlas wird in den Patientendatensatz eingeblendet iterative Annäherung Exkursion Wahrscheinlichkeit Definition P(A) = N(A) / N Beispiele: Coin-Toss & Würfel 2

3 Kurze Wiederholung Mutual Information und Entropie Messung des Informationsgehaltes eines Bildes über den Informationsgehalt kann die Ähnlichkeit zu einem anderen Bild bestimmt werden Aus der Nachrichtentechnik (Hartley, Gleichverteilung) H H = m log n = log n m Shannon hat eine Gewichtung des Auftretens der Symbole eingeführt und deren Informationsgehalt summiert: H S = p i log 1 p i = p i log p i i die Entropie beschreibt den Informationsgehalt eines Bildes unter Einbeziehung der Häufigkeit des Auftretens eines Symbols (Grauwert) und deren Verteilung Markov Random Fields - Beispiel i 3

4 Resampling von Bilder Resampling ist ein wichtiger Teilbereich in der Bildverarbeitung, speziell in der Registrierung ITK implementiert des dies als Filter in itk::resampleimagefilter unter Verwendung von itk::transforms der Input des Filter erwartet ein Bild eine Transformation ein Interpolator die räumlichen Koordinaten des Bildes werden dabei durch eine Transformation auf ein neues Bild abgebildet Ausdehnung und Spacing des neuen Bildes werden vom Benutzer bestimmt Resampling verwendet räumliche Koordinaten, keine Pixel/Grid Koordinaten (!!!) der Interpolator sorgt dafür, dass auch Grauwerte außerhalb von Pixel/Grid Koordinaten verarbeitet werden können Dimension und PixelType für das Ein- und Ausgabebild müssen gesetzt werden (wie gewohnt) TransformType muss durch Dimension und Datentyp der Koordinatenrepräsentation festgelegt werden typedef itk::affinetransform<double, Dimension> TransformType; 4

5 die Parameter der Transformation sind per Default auf eine Identitäts-Transformation eingestellt TransformType::Pointer transform = TransformType::New(); filter->settransform(transform); der InterpolatorType wird durch den ImageType und den Datentyp repräsentiert, der für die räumlichen Koordinaten verwendet wird typedef itk::nearestneighborinterpolateimagefunction<inputimagetype, double> InterpolatorType; da es möglich ist, dass einige Pixel im Ausgabebild außerhalb der räumlichen Koordinaten des Eingabebildes gemappt werden, muss diesen ein Default-Wert zugewiesen werden filter->setdefaultpixelvalue(); das Sampling Grid im Ausgabebild wird durch das Spacing und Origin bestimmt double spacing[dimension]; spacing[] = 1.; // 1 mm Pixel Spacing in X-Richtung spacing[1] = 1.; //... in Y-Richtung filter->setoutputspacing(spacing); double Origin[Dimension]; origin[] =.; // X origin[1] =.; // Y filter->setoutputorigin(origin); 5

6 die Größe des Ausgabebildes wird durch einen SizeType bestimmt InputImageType::SizeType size; size[] = 3; // Pixel in X-Richtung size[1] = 3; // Pixel in Y-Richtung filter->setsize(size); der Input des Filters kann dabei wie gewohnt von einem anderen Filter bzw. einem Reader kommen der Output des Filters kann analog einem anderen Filter bzw. einem Writer übergeben werden ein Update() in einem nachgeschalteten Filter sorgt für die Ausführung des Filters 6

7 226 Chapter 6. Filtering Beispiel für eine Identitätstransformation x 3 pixels x 217 pixels Identity Transform Input Image Resampled Image Figure 6.4: Analysis of the resample image done in a common coordinate system. Eingabebild 181 x 217 Pixel Origin (.,.) Spacing (1mm x 1mm) Ausgabebild 3 x 3 Pixel Origin (.,.) Spacing (1mm x 1mm) 7

8 Beispiel für eine Transformation TransformType::OutputVectorType translation; translation[] = -3; // in mm entlang X translation[1] = -5; // in mm entlang Y transform->translate(translation); 6.9. Geometric Transformations x 3 pixels x 217 pixels T={ 3, 5} 25 2 Translation Transform 2 (15,188) (75,138) Input Image Resampled Image Figure 6.42: ResampleImageFilter. Analysis of a translation by ( 3, 5). die Transformation wird genutzt um Punkte aus dem Ausgabebild in das Eingabebild zu mappen The(!!!) output image resulting from the translation can be seen infigure6.41. Again,itisbetterto interpret the result in a common coordinate system as illustrated in Figure der Grauwert am Punkt P im Ausgabebild wird dabei vom Punkt T(P) im Eingabebild bezogen Probably the most important thing to keep in mind when resampling images is that the transform is used to map points from the output image space into the input image space. In this case, Figure 6.42 shows that the translation is applied to every point of the output image and the resulting position is used to read the intensity from the input image. In this way, the gray level of the point P in the output image is taken from the point T(P) in the input image. Where T is 8

9 Beispiel für eine Transformation um die Translation besser sehen zu können, empfiehlt es sich den Default-Wert für Pixel auf einen höheren Wert zu setzen 228 Chapter 6. Filtering x 3 pixels x 217 pixels T={ 3, 5} 25 2 Translation Transform (3,5) (,) Input Image Resampled Image Figure 6.43: ResampleImageFilter highlighting image borders with SetDefaultPixelValue(). Importance of Spacing and Origin The source code for this section can be found in the file Examples/Filtering/ResampleImageFilter2.cxx. During the computation of the resampled image all the pixels in the output region are visited. Stephan GimbelThis visit is performed Einführung using ImageIterators in die medizinische which Bildverarbeitung walk in the integer grid-space of the image. For each pixel, we need to convert grid position to space coordinates using the image spacing and origin. 9

10 bei der Berechnung des Ausgabebildes werden alle Pixel in der Ausgaberegion besucht. Dies geschieht durch ImageIterators, die sich durch den Grid-Space des Bildes bewegen Ein Pixel am Index I = (2, 5) in einem Bild mit Origin O = (19., 29.) und Pixel Spacing S = (1.3, 1.5) korrespondiert mit der räumlichen Position P[i] = I[i] x S[i] + O[i] P = (2 x , 5 x ) P = (45., 14.) die räumlichen Koordinaten von P werden durch die Transformation T gemappt um den Punkt P auf den räumlichen Punkt Q = T(P) im Eingabebild zu mappen 1

11 Beispiel Punkt im Ausgabebild an Index I = (, ) hat die räumlichen Koordinaten P = (3, 4) die Indentitätstransformation mappt diesen Punkt auf Q = (3, 4) im Eingabebild da das Eingabebild ein Spacing von (1., 1.) und Origin (.,.) hat mappt der physical Point Q = (3, 4) auf den Pixel mit dem Index I = (3, 4) 23 Chapter 6. Filtering Size=3x3 Spacing=(1.,1.) 3 3 DefaultPixelValue 25 Size=181x217 Spacing=(1.,1.) Identity Transform Origin=(,) Index=(,) Origin=(3,4) Index=(,) Input Image Resampled Image Figure 6.44: ResampleImageFilter selecting the origin of the output image. 11

12 2 Registrierung 15 1 Identity Transform Beispiel 5 5 Punkt im Ausgabebild an Index Origin=(,) Origin=(3,4) Index=(,) I = (, ) hat die räumlichen Index=(,) Koordinaten P = (6, 3) die Indentitätstransformation mappt diesen Punkt auf Q = (6, 3) im Eingabebild da das Eingabebild Input Image ein Spacing von (1., 1.) und Resampled Origin Image (.,.) hat mappt der physical Point Q = (6, 3) auf den Pixel mit dem Index I = (6, 3) Figure 6.44: ResampleImageFilter selecting the origin of the output image Size=181x217 Spacing=(1.,1.) 25 Size=15x2 Spacing=(1.,1.) DefaultPixelValue Identity Transform 1 5 Origin=(,) Index=(,) 5 Origin=(6,3) Index=(,) Input Image Resampled Image Figure 6.45: ResampleImageFilter selecting the origin of the output image. 12

13 Beispiel das Eingabebild hat nun ein Origin von O = (5, 7) angewendet wird die Identitätstransformation der Pixel mit Index I = (56, 12) im Ausgabebild hat die Koordinaten P = (116, 15) im Physical Space die Transformation mappt P auf den Punkt Q = (116, 15) im Input Image 6.9. die Geometric Koordinaten Transformations Q werden assoziert mit dem Index I = (66, 8) im Eingabebild Size=181x217 Spacing=(1.,1.) Size=15x2 Spacing=(1.,1.) I=(66,8) Identity Transform 15 I=(56,12) DefaultPixelValue Origin=(5,7) Index=(,) 5 Origin=(6,3) Index=(,) Input Image Resampled Image Figure 6.46: Effect of selecting the origin of the input image with ResampleImageFilter. Stephan Gimbel image in this case happens Einführung to have in spacing die medizinische (1.,1.) and Bildverarbeitung origin (.,.), thephysicalpoint Q =(6,3) maps to the pixel with index I =(6,3). 13

14 Beispiel non-unit Spacing von (2., 3. in mm) reduzierte Auflösung (8 x 5) im Ausgabebild (da die Pixel nun 2.mm x 3.mm abdecken) Physical Space des Ausgabebildes 16mm x 15mm Formate wie PNG sind ungeeignet, ebenso wie triviale Viewer, die das Spacing nicht berücksichtigen 232 Chapter 6. Filtering Figure 6.47: Resampling with different spacing seen by a naive viewer (center) and a correct viewer (right), input image (left). Input Trivial Korrekt size[] = 8; // number of pixels along X size[1] = 5; // number of pixels along Y filter->setsize( size ); 14

15 Beispiel Pixel I =(33, 27) des Ausgabebildes liegt bei den Koordinaten P = (66., 81.) im Physical Space die Identitätstransformation mappt diesen Punkt auf Q = (66., 81.) im Input Image Physical Space 6.9. Geometric Transformations 233 dieser Punkt im Input Image wird dann mit Index I = (66, 81) assoziiert, da das Bild Zero Origin und Unit Spacing aufweist 3 Size=181x217 3 Size=8x5 Spacing=(1.,1.) Spacing=(2.,3.) 25 Physical extent=(181.,217.) 25 Physical extent=(16.,15.) Identity Transform 15 I=(33,27) 1 1 P=(66.,81.) 5 I=(66,81) Q=(66.,81.) Input Image Resampled Image Figure 6.48: Effect of selecting the spacing on the output image. 15

16 Rechenbeispiel Origin Ausgabebild O = (25., 35. in mm), Spacing (4., 4.5 in mm) und Size (4, 45 in Pixel) Pixel an Index I = (1, 1) im Ausgabebild wird assoziiert mit den räumlichen Koordinaten P = (1 x , 1 x ) = (65., 8.) Identitätstransformation mappt diesen Punkt auf Q = (65., 8.) im Eingabebild Punkt Q wird assoziiert mit dem Pixel an Index I = ((65. -.)/2., (8. -.)/3.) = (32.5, 26.6) dieser 6.9. Geometric Pixel fällt Transformations nicht in eine Grid-Position, der Wert der dem Ausgabebild 235 zugewiesen wird muss interpoliert werden 3 Size=9x72 Spacing=(2.,3.) 3 Size=4x45 Spacing=(4.,4.5) 25 Physical extent=(18.,216.) 25 Physical extent=(16.,22.5) Identity Transform 15 I=(1,1) 1 1 P=(65.,8.) 5 I=(32.5,26.6) Q=(65.,8.) 5 Origin=(25.,35.) Input Image Resampled Image Figure 6.5: Effect of non-unit spacing on the input and output images. 16

17 Beispiel wenn eine Rotation als Transformation an den itk::resampleimagefilter übergeben wird, dann handelt es sich um eine Rotation im Uhrzeigersinn die Transformation rotiert das Koordinatensystem im Uhrzeigersinn wenn Ein- und Ausgabebild in einem Koordinatensystem dargestellt werden, dann sieht es so aus, als ob das Bild im Uhrzeigersinn rotiert wurde wird das Ausgabebild jedoch anhand eines vertikal ausgerichteten Koordinatensystem 236 Chapter 6. Filtering gezeigt, so wird der Bildinhalt rotiert entgegen dem Uhrzeigersinn dargestellt Figure 6.51: Effect of a rotation on the resampling filter. Input image at left, output image at right. 17

18 Beispiel (Fortsetzung) Figure 6.51: Effect of a rotation on the resampling filter. Input image at left, output image at right. Size=7x6 3 Spacing=( 2., 3. ) Physical extent=( 14., 18. ) 3 Size=5x4 Spacing=( 4., 3. ) Physical extent=( 2., 12. ) Rotation 3 Transform Origin=(6.,7.) Origin=(5.,13.) Input Image Resampled Image Figure 6.52: Input and output image placed in a common reference system. Ziel: Output Space 4 x kleiner und Anzahl der Pixel 4 x größer, jeweils in beiden Dimensionen double spacing[dimension]; spacing[] = 4./4.; spacing[1] = 3./4.; filter->setoutputspacing(spacing); double origin[dimension]; origin[] = 5.; origin[1] = 13.; filter->setoutputorigin(origin); InputImageType::SizeType size; size[] = 5 * 4; size[1] = 4 * 4; filter->setsize(size); 18

19 Beispiel (Fortsetzung) Ziel: Output Space 4 x kleiner und Anzahl der Pixel 4 x größer, jeweils in beiden Dimensionen Origin für Ausgabebild O = (5., 13.) Index I = (, ) Größe des Ausgabebildes (4 x Beispielbild) S = (2, 16) die Rotation wird um den Ursprung des physikalischen Koordinatensystems durchgeführt, nicht um den Ursprung des Bildes oder des Bildzentrums um eine Positionierung des Bildes wie im Beispiel zu erreichen, bedarf es drei Schritte 1. Translation des Bildursprungs in den Ursprung des physikalischen Koordinatensystems (Translation um die negativen Werte des Bildursprungs) TransformType::OutputVectorType translation; translation[] = -origin[]; translation[1] = -origin[1]; transform->translate(translation); 2. Rotation um 3. Die Rotationen in itk::affinetransform sind in Radian spezifiziert const double degreestoradians = atan(1.)/45.; transform->rotate2d(-3. * degreestoradians, false); Rotation nach Translation 19

20 Beispiel (Fortsetzung) 3. Transformation des Bildursprungs zurück an seine alte Position 236 TransformType::OutputVectorType translationback; translationback[] = origin[]; translationback[1] = origin[1]; transform->translate(translationback); filter->settransform(transform); Chapter 6. Filtering Figure 6.51: Effect of a rotation on the resampling filter. Input image at left, output image at right. 2

21 Beispiel die Iteration durch das Ausgabebild ist die einzige Möglichkeit, wie das Bild ohne Lücken oder redundante Werte berechnet werden kann immer vom Ausgabebild zum Eingabebild gehen Gegeben sei der Pixel an Index I = (1, 2) im Ausgabebild die physikalischen Koordinaten dieses Punkten liegen bei P = (1 x , 2 x ) = (9., 19. in mm) dieser Punkt wird nun durch eine affine Transformation in das Eingabebild gemappt 1. Subtraktion des Ursprungs 2. durchführen einer 3 Rotation 3. addieren des Ursprungs P P1 = (4., 6.) (Schritt 1) P1 P2 = (4. x cos(3.) + 6. x sin(3.), 4. x sin(3.) - 6. x cos(3.) = (64.64, 31.96) (Schritt 2) P2 P3 = (114.64, ) 21

22 Beispiel (Fortzsetzung) der Punkt P3 (114.64, ) befindet sich nun im Koordinatensystem des Eingabebildes der Pixel im Eingabebild der mit der physikalischen Position dieses Punktes assoziiert wird, berechnet sich wie folgt anhand des Ursprungs und des Spacings des Eingabebildes: I = (( )/2., ( )/3.) I = (2.7, 3.) dabei handelt es sich um eine non-grid Position, daher muss der Grauwert der dem Pixel I = (1, 2) zugewiesen wird interpoliert werden der hier Figure verwendete 6.51: Effect of a rotation Interpolator on the resampling verwendet filter. Input image at left, output image at right. itk::nearestneighborinterpolateimagefunction und weisst den Grauwert von dem Pixel zu, der dem Berechneten Wert am nähesten liegt (in diesem Fall (3, 3)) Size=7x6 3 Spacing=( 2., 3. ) Physical extent=( 14., 18. ) 3 Size=5x4 Spacing=( 4., 3. ) Physical extent=( 2., 12. ) Rotation 3 Transform Origin=(6.,7.) Origin=(5.,13.) Input Image Resampled Image Figure 6.52: Input and output image placed in a common reference system. 22

23 Registrierung in ITK Komponenten des Registrierungsprozesses in ITK 316 Chapter 8. Registration Fixed Image pixels Metric fitness value Moving Image pixels pixels Interpolator points Transform Optimizer Transform parameters Figure dabei 8.2: muss The basic festgelegt components werden of the registration framework are two input images, a transform, a metric, an interpolator Input- und and an Output optimizer. ImageType TransformType der den Fixed Image Space in den Moving Image Space mappt These various Optimizer ITK registration um den components Parameterraum will be described der Transformation inlatersections. zu durchsuchen, First,webegin um so die with some simple optimalen registration Werte examples. der Metric zu finden Metric die vergleicht wie gut die beiden Bilder aufeinander abgestimmt sind Interpolator der Grauwerte ausserhalb der Grid-Positionen liefert 8.2 Hello World Registration Registrierungsmethode die alle Komponenten miteinander verbindet The source code for this section can be found in the file Examples/Registration/ImageRegistration1.cxx. metric, transform, optimizer, interpolator und registration werden dabei wie This example immer illustrates mit der the use New() of the Methode image registration erstellt und framework ihrem jeweiligen in Insight. ItSmart-Pointer should be read as a Hello zugewiesen World for ITK registration. Which means thatfornow,youdon task why?. Instead, use the example as an introduction to the elements that are typically involved in solving Stephan Gimbel an image registrationeinführung problem. in die medizinische Bildverarbeitung Aregistrationmethodrequiresthefollowingsetofcomponents: two input images, a trans- 23

24 Registrierung in ITK jede Komponente wird dann mit der Registrierungsmethode verbunden die Registrierung kann für das gesamte Bild oder aber nur eine Region durchgeführt werden die Transformation wird als Array übergeben, wobei eine Translation mit die Identitätstransformation ist sobald alle Parameter übergeben sind, kann die Registrierung durchgeführt werden der Optimizer ist dabei die Komponente, welche die Registrierung voran treibt die Parameter des Optimizers sollten angepasst werden, da sie maßgeblich die Optimierungsstrategie beinflussen so kann z.b. die Schrittweite beim Gradient Descent Verfahren eingestellt werden (Präzision) ebenso kann die Anzahl der Iterationen festgelegt werden der Registrierungsprozess wird durch ein Update() ausgelöst das Ergebnis der Registrierung ist ein Array von Parametern, das die räumliche Transformation beschreibt das Ergebnis kann man mit GetLastTransformParameters() abfragen 24

25 Registrierung in ITK im Falle von itk::translationtransform kann man die finalen Parameter wie folgt auslegen const double TranslationAlongX = finalparameters[]; const double TranslationAlongY = finalparameters[1]; durch den Optimizer lässt sich die Anzahl der Iterationen abfragen ( GetCurrentIteration() ). Eine hohe Anzahl an Iterationen kann ein Indiz dafür sein, dass die Stepsize zu niedrig eingestellt wurde, was sich in erhöhter Rechenzeit auswirkt der Wert der Metric die mit den letzten Satz Parameter übereinstimmt erhält man mit der Methode GetValue() im letzten Schritt wird das Moving Image durch eine Transformation auf das Fixed Image gemappt ResampleFilterType::Pointer resampler = ResampleFilterType::New(); resampler->setinput(movingimagerreader->getoutput()); resampler->settransform(registration->getoutput()->get()); 25

26 Registrierung in ITK durch einen itk::subtractimagefilter können die Bilder vor und nach der Registrierung miteinander vergleichen werden zu beachten ist, dass der Filter zwei Inputs hat DifferenceFilterType::Pointer difference = DifferenceFilterType::New(); difference->setinput1(fixedimagereader->getoutput()); difference->setinput2(resampler->getoutput()); da die Differenzen zwischen den Bildern u.u. sehr gering ausfallen, wird ein itk::rescaleintensityimagefilter verwendet um Chapter die Strukturen 8. Registration besser hervorzuheben 8.4: Mapped Stephan moving Gimbel image and its difference Einführung with in die themedizinische fixed imagebildverarbeitung before and after registration 26

27 Registrierung in ITK die Pipeline für eine vollständige Registrierung sieht wie folgt aus 8.2. Hello World Registration 323 Reader Fixed Image Registration Method Metric Optimizer Interpolator Parameters Resample Filter Transform Subtract Filter Writer Reader Moving Image Transform Resample Filter Subtract Filter Writer Figure 8.5: Pipeline structure of the registration example. typedef itk::subtractimagefilter< FixedImageType, FixedImageType, FixedImageType > DifferenceFilterType; DifferenceFilterType::Pointer difference = DifferenceFilterType::New(); 27

28 Registrierung in ITK 326 Chapter 8. Registration Koordinatensysteme j j Fixed Image Grid i Moving Image Grid i y T1 y T2 Space Transform y x Fixed Image Fixed Image Physical Coordinates x Moving Image Physical Coordinates x Figure 8.7: Different coordinate systems involved in the image registration process. Note that the transform being optimized is the one mapping from the physical space of the fixed image into the physical space of the moving image. 28

29 Registrierung in ITK tures of the Registration Framework Es ist hilfreich sich die Werte/Parameter des Registrierungsprozesses vor Augen zu halten besseres Verständnis Hilfe beim finden von Problemen Y Translations (mm) X Translations (mm) Y Translations (mm) 1 8 Mean Squares Metric X Translations (mm) Iteration No. 4 Figure 8.6: The sequence of translations and metric values at each iteration of the op 35 tric 3 29

30 Registrierung in ITK Monitoring zur Optimierung und Analyse der einzelnen Schritte kann der Registrierungsprozess beobachtet werden dies geschieht mittels Observer/Command Pattern und dem Event-System in ITK Filter in ITK lösen periodisch einen itk::progressevent aus Objekte die sich dafür registriert haben, werden benachrichtgt (function callback, method invocation, etc.) Events in ITK sind Unterklassen von EventObject (mehr in itkeventobject.h) Objekte in ITK rufen spezielle Events auf, während sie ausgeführt werden this->invokeevent(progressevent()); um ein Event abzufangen wird eine Registrierung erwartet die ein Command mit einem Event assoziiert unsigned long progresstag = filter->addobserver(progressevent(), itk::command*); wenn das Event ausgeführt wird, werden alle registrierten Observer benachrichtigt itk::object ist die Basisklasse für die meisten Objekte, enthalten ist eine verkettete Liste von Pointern zu Observern Observer entsprechen Objekten vom Typ itk::command Observer müssen sich bei einem Objekt registrieren es gibt verschiedene Arten von Events, Beispiele sind z.b. Start, End, Progress und Iteration da die Registrierung vom Optimizer gesteuert wird, löst dieser ein itk::iterationevent am Ende jedes Iterationsschrittes aus 3

31 Registrierung in ITK Monitoring (Fortsetzung) wenn ein Event ausgelöst wird von einem Objekt, geht das Objekt durch die Liste aller Observer und prüft ob ein Observer für dieses Event Interesse angemeldet hat. In einem solchen Fall wird die Execute() Methode aufgerufen (callback) für Callbacks sollte man sich an die üblichen Regeln halten 8.4. Monitoring Registration 331 Fixed Image Metric Registration Method AddObserver() itk::command Moving Image Interpolator Transform Optimizer Invoke( IterationEvent ) Command Update Iteration Execute() Figure 8.8: Interaction between the Command/Observer and the Registration Method. The next step is to verify that the event invoked is actually the one in which we are interested. This is checked using the RTTI 4 support. The CheckEvent() method allows us to compare the actual type of two events. In this case we compare the type of the received event with an IterationEvent. Thecomparisonwill returntrueif event is of type IterationEvent or derives from IterationEvent. IfwefindthattheeventisnotoftheexpectedtypethentheExecute() 31

32 Registrierung in ITK Monitoring (Fortsetzung) Beispiel #include "itkcommand.h" class CommandIterationUpdate : public itk::command { public: typedef CommandIterationUpdate Self; typedef itk::command Superclass; typedef itk::smartpointer<self> Pointer; itknewmacro(self); // Macro kümmert sich um New() (-> itkmacro.h) protected: CommandIterationUpdate() {}; typedef itk::regularstepgradientdescentoptimizer OptimizerType; typedef const OptimizerType *OptimizerPointer; void Execute(itk::Object *caller, const itk::eventobject &event) { // const Version aufrufen Execute( (const itk::object*)caller, event); } void Execute(const itk::object *object, const itk::eventobject &event) { // wir kennen den Objecttyp OptimizerPointer optimizer = dynamic_cast<optimizerpointer>(object); if (!itk::iterationevent().checkevent(&event)) // RTTI nutzen um Typ zu prüfen return; } } // Ausgabe z.b. mit std::cout, fstream, etc. 32

33 Registrierung in ITK Monitoring (Fortsetzung) Observer wie gewohnt erstellen CommandIterationUpdate observer = CommandIterationUpdate::New(); und registrieren optimizer->addobserver(itk::iterationevent(), observer); danach die Registrierung starten registration->startregistration(); Try/Catch nicht vergessen! 33

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software Artologik EZ-Equip Plug-in für EZbooking version 3.2 Artologik EZbooking und EZ-Equip EZbooking, Ihre webbasierte Software zum Reservieren von Räumen und Objekten, kann nun durch die Ergänzung um ein oder

Mehr

Künstliches binäres Neuron

Künstliches binäres Neuron Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte

Mehr

Einführung in die medizinische Bildverarbeitung WS 12/13

Einführung in die medizinische Bildverarbeitung WS 12/13 Einführung in die medizinische Bildverarbeitung WS 12/13 Stephan Gimbel Kurze Wiederholung Mutual Information und Entropie Messung des Informationsgehaltes eines Bildes über den Informationsgehalt kann

Mehr

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!. 040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl

Mehr

Sichere E-Mail Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere E-Mail. der

Sichere E-Mail Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere E-Mail. der Sichere E-Mail der Nutzung von Zertifikaten / Schlüsseln zur sicheren Kommunikation per E-Mail mit der Sparkasse Germersheim-Kandel Inhalt: 1. Voraussetzungen... 2 2. Registrierungsprozess... 2 3. Empfang

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Einführung in die Programmierung (EPR)

Einführung in die Programmierung (EPR) Goethe-Center for Scientific Computing (G-CSC) Goethe-Universität Frankfurt am Main Einführung in die Programmierung (EPR) (Übung, Wintersemester 2014/2015) Dr. S. Reiter, M. Rupp, Dr. A. Vogel, Dr. K.

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

https://portal.microsoftonline.com

https://portal.microsoftonline.com Sie haben nun Office über Office365 bezogen. Ihr Account wird in Kürze in dem Office365 Portal angelegt. Anschließend können Sie, wie unten beschrieben, die Software beziehen. Congratulations, you have

Mehr

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera

Getting Started General Workflow. Anlegen von Schablonen Ausrichtung 3.2. Atoms Precision V2 Tutorial. Working with Images Direct from Camera Getting Started General Workflow Anlegen von Schablonen Ausrichtung 3.2 Atoms Precision V2 Tutorial Working with Images Direct from Camera Die Ausrichtungseinstellungen ermöglichen die Ausrichtung der

Mehr

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

5 DATEN. 5.1. Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu Daten Makro + VBA effektiv 5 DATEN 5.1. Variablen Variablen können beliebige Werte zugewiesen und im Gegensatz zu Konstanten jederzeit im Programm verändert werden. Als Variablen können beliebige Zeichenketten

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

5.2 Neue Projekte erstellen

5.2 Neue Projekte erstellen 5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort

Mehr

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Vollständigkeit halber aufgeführt. Gehen wir einmal davon aus, dass die von uns angenommenen 70% im Beispiel exakt berechnet sind. Was würde

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort: Tangentengleichung Wie Sie wissen, gibt die erste Ableitung einer Funktion deren Steigung an. Betrachtet man eine fest vorgegebene Stelle, gibt f ( ) also die Steigung der Kurve und somit auch die Steigung

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Registrierungsprozess des Boardgeräts (OBU) Inhalt. 1.1. Registrierung auf der Online-Benutzeroberfläche HU-GO

Registrierungsprozess des Boardgeräts (OBU) Inhalt. 1.1. Registrierung auf der Online-Benutzeroberfläche HU-GO Registrierungsprozess des Boardgeräts (OBU) Inhalt 1. Einloggen... 1 1.1. Registrierung auf der Online-Benutzeroberfläche HU-GO... 1 1.2. Einloggen in das System HU-GO... 4 1.3. Auswahl des Kontos... 5

Mehr

Das neue Volume-Flag S (Scannen erforderlich)

Das neue Volume-Flag S (Scannen erforderlich) NetWorker 7.4.2 - Allgemein Tip 2, Seite 1/5 Das neue Volume-Flag S (Scannen erforderlich) Nach der Wiederherstellung des Bootstraps ist es sehr wahrscheinlich, daß die in ihm enthaltenen Informationen

Mehr

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista

Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Installation des Authorware Webplayers für den Internet Explorer unter Windows Vista Allgemeines: Bitte lesen Sie sich diese Anleitung zuerst einmal komplett durch. Am Besten, Sie drucken sich diese Anleitung

Mehr

Einführung in die medizinische Bildverarbeitung WS 12/13

Einführung in die medizinische Bildverarbeitung WS 12/13 Einführung in die medizinische Bildverarbeitung WS 12/13 Stephan Gimbel Kurze Wiederholung Landmarkenbasierte anhand anatomischer Punkte interaktiv algorithmisch z.b. zur Navigation im OP Markierung von

Mehr

Dokumentation für das Spiel Pong

Dokumentation für das Spiel Pong Dokumentation für das Spiel Pong BwInf - Turnierserver Didaktik der nformatik BWINF KI Wettbewerbs-Plattform Stand: 02.09.2014 Grundlagen In diesem KI-Turnier programmiert ihr einen Schläger für das Retro-Spiel

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich?

KURZANLEITUNG. Firmware-Upgrade: Wie geht das eigentlich? KURZANLEITUNG Firmware-Upgrade: Wie geht das eigentlich? Die Firmware ist eine Software, die auf der IP-Kamera installiert ist und alle Funktionen des Gerätes steuert. Nach dem Firmware-Update stehen Ihnen

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

Autorisierung von ArcGIS 10.3 for Server mit Internetverbindung

Autorisierung von ArcGIS 10.3 for Server mit Internetverbindung Autorisierung von ArcGIS 10.3 for Server mit Internetverbindung (Februar 2015) Copyright 2015 Esri Deutschland GmbH Inhalt 1 Einleitung... 3 2 Voraussetzungen... 3 3 Aktualisierungsprozess... 3 4 Überprüfung

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1

Abiturprüfung Mathematik 2008 (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe 1 Abiturprüfung Mathematik (Baden-Württemberg) Berufliche Gymnasien ohne TG Analysis, Aufgabe Für jedes t f t () + t R ist die Funktion f t gegeben durch = mit R. Das Schaubild von f t heißt K t.. (6 Punkte)

Mehr

Fachhochschule Deggendorf Platzziffer:...

Fachhochschule Deggendorf Platzziffer:... Sommersemester 2008 Zahl der Blätter: 9 Fachbereich: Betriebswirtschaft WI Bachelor Hilfsmittel: alles ohne Computer Zeit: 90 Minuten 1 Betrachten Sie die drei markierten Zeilen. 1. Angenommen Sie hätten

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus:

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: If-clauses - conditional sentences - Nie mehr Probleme mit Satzbau im Englischen! Das komplette Material finden Sie hier: School-Scout.de

Mehr

Wenn Russland kein Gas mehr liefert

Wenn Russland kein Gas mehr liefert Ergänzen Sie die fehlenden Begriffe aus der Liste. abhängig Abhängigkeit bekommen betroffen bezahlen Gasspeicher Gasverbrauch gering hätte helfen importieren liefert 0:02 Pläne politischen Projekte Prozent

Mehr

Anwendungsbeispiele Buchhaltung

Anwendungsbeispiele Buchhaltung Rechnungen erstellen mit Webling Webling ist ein Produkt der Firma: Inhaltsverzeichnis 1 Rechnungen erstellen mit Webling 1.1 Rechnung erstellen und ausdrucken 1.2 Rechnung mit Einzahlungsschein erstellen

Mehr

Mobile-Szenario in der Integrationskomponente einrichten

Mobile-Szenario in der Integrationskomponente einrichten SAP Business One Konfigurationsleitfaden PUBLIC Mobile-Szenario in der Integrationskomponente einrichten Zutreffendes Release: SAP Business One 8.81 Alle Länder Deutsch November 2010 Inhalt Einleitung...

Mehr

Lösungshinweise zur Einsendearbeit 2 SS 2011

Lösungshinweise zur Einsendearbeit 2 SS 2011 Lösungshinweise zur Einsendearbeit 2 zum Kurs 41500, Finanzwirtschaft: Grundlagen, SS2011 1 Lösungshinweise zur Einsendearbeit 2 SS 2011 Finanzwirtschaft: Grundlagen, Kurs 41500 Aufgabe Finanzierungsbeziehungen

Mehr

Text Formatierung in Excel

Text Formatierung in Excel Text Formatierung in Excel Das Aussehen des Textes einer oder mehrerer Zellen kann in Excel über verschiedene Knöpfe beeinflusst werden. Dazu zuerst die betroffenen Zelle(n) anwählen und danach den entsprechenden

Mehr

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Bedienungsanleitung für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof Matthias Haasler Version 0.4 Webadministrator, email: webadmin@rundkirche.de Inhaltsverzeichnis 1 Einführung

Mehr

PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer

PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer PROSTEP AG: Anmelden für eine mehrtägige Schulung für Opel-Zulieferer Für eine reibungslose Zusammenarbeit fordert Opel von jedem seiner Zulieferunternehmen, dass es für das General Motors-Zulieferer-Portal

Mehr

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER Abamsoft Finos in Verbindung mit der Webshopanbindung wurde speziell auf die Shop-Software shop to date von DATA BECKER abgestimmt. Mit

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

Inkrementelles Backup

Inkrementelles Backup Inkrementelles Backup Im Gegensatz zu einer kompletten Sicherung aller Daten werden bei einer inkrementellen Sicherung immer nur die Dateien gesichert, die seit der letzten inkrementellen Sicherung neu

Mehr

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

IBM Software Demos Tivoli Provisioning Manager for OS Deployment Für viele Unternehmen steht ein Wechsel zu Microsoft Windows Vista an. Doch auch für gut vorbereitete Unternehmen ist der Übergang zu einem neuen Betriebssystem stets ein Wagnis. ist eine benutzerfreundliche,

Mehr

Kurzanleitung MAN E-Learning (WBT)

Kurzanleitung MAN E-Learning (WBT) Kurzanleitung MAN E-Learning (WBT) Um Ihr gebuchtes E-Learning zu bearbeiten, starten Sie bitte das MAN Online- Buchungssystem (ICPM / Seminaris) unter dem Link www.man-academy.eu Klicken Sie dann auf

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Excel Funktionen durch eigene Funktionen erweitern.

Excel Funktionen durch eigene Funktionen erweitern. Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion

Mehr

Log xmllog textlog Log() start(filename) add(message) end() instance() Abbildung 7-10: Die Protokollierungs-API mit einer einfachen Fassade

Log xmllog textlog Log() start(filename) add(message) end() instance() Abbildung 7-10: Die Protokollierungs-API mit einer einfachen Fassade HACK #76 Hack APIs mit dem Façade-Muster vereinfachen Durch die Verwendung des Façade-Entwurfsmusters können Sie die anderen Programmierern zugängliche API vereinfachen. #76 Dies ist ein Muster, von dem

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen der Theoretischen Informatik, SoSe 2008 1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Lehrer: Einschreibemethoden

Lehrer: Einschreibemethoden Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder

Mehr

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala

Das Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:

Mehr

Der große VideoClip- Wettbewerb von Media Markt.

Der große VideoClip- Wettbewerb von Media Markt. Der große VideoClip- Wettbewerb von Media Markt. Zeig was du drauf hast! Am 1. Juli startet eine Aktion, wie sie die Schweiz noch nicht gesehen hat. Unter dem Motto Zeig was Du drauf hast! suchen wir den

Mehr

Objektorientierte Programmierung mit C++ Vector und List

Objektorientierte Programmierung mit C++ Vector und List Vector und List Ziel, Inhalt Wir lernen die Klassen vector und list aus der Standard-C++ Library kennen und anwenden. In einer Übung wenden wir diese Klassen an um einen Medienshop (CD s und Bücher) zu

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12 Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben

Mehr

Mitarbeiter IVR - Wozu

Mitarbeiter IVR - Wozu Mitarbeiter IVR - Wozu Da alle Fahrzeuge auch mit GSM-Telefonen ausgestattet sind, ist es naheliegend, dass ein Großteil der Kommunikation zwischen Fahrzeugen (Mitarbeitern) und der Leitstelle über das

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

BSV Software Support Mobile Portal (SMP) Stand 1.0 20.03.2015

BSV Software Support Mobile Portal (SMP) Stand 1.0 20.03.2015 1 BSV Software Support Mobile Portal (SMP) Stand 1.0 20.03.2015 Installation Um den Support der BSV zu nutzen benötigen Sie die SMP-Software. Diese können Sie direkt unter der URL http://62.153.93.110/smp/smp.publish.html

Mehr

Die neue Aufgabe von der Monitoring-Stelle. Das ist die Monitoring-Stelle:

Die neue Aufgabe von der Monitoring-Stelle. Das ist die Monitoring-Stelle: Die neue Aufgabe von der Monitoring-Stelle Das ist die Monitoring-Stelle: Am Deutschen Institut für Menschen-Rechte in Berlin gibt es ein besonderes Büro. Dieses Büro heißt Monitoring-Stelle. Mo-ni-to-ring

Mehr

Artikel Schnittstelle über CSV

Artikel Schnittstelle über CSV Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte

Mehr

Wir arbeiten mit Zufallszahlen

Wir arbeiten mit Zufallszahlen Abb. 1: Bei Kartenspielen müssen zu Beginn die Karten zufällig ausgeteilt werden. Wir arbeiten mit Zufallszahlen Jedesmal wenn ein neues Patience-Spiel gestartet wird, muss das Computerprogramm die Karten

Mehr

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x + 400 y = 520 300x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x + 400 y = 520 300x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775, Aufgabenpool für angewandte Mathematik / 1. Jahrgang V B, C, D Drinks Ein gastronomischer Betrieb kauft 300 Dosen Energydrinks (0,3 l) und 400 Liter Flaschen Mineralwasser und zahlt dafür 50, Euro. Einen

Mehr

Zwischenablage (Bilder, Texte,...)

Zwischenablage (Bilder, Texte,...) Zwischenablage was ist das? Informationen über. die Bedeutung der Windows-Zwischenablage Kopieren und Einfügen mit der Zwischenablage Vermeiden von Fehlern beim Arbeiten mit der Zwischenablage Bei diesen

Mehr

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt? Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt? Behandelte Fragestellungen Was besagt eine Fehlerquote? Welche Bezugsgröße ist geeignet? Welche Fehlerquote ist gerade noch zulässig? Wie stellt

Mehr

der Eingabe! Haben Sie das Ergebnis? Auf diesen schwarzen Punkt kommen wir noch zu sprechen.

der Eingabe! Haben Sie das Ergebnis? Auf diesen schwarzen Punkt kommen wir noch zu sprechen. Medizintechnik MATHCAD Kapitel. Einfache Rechnungen mit MATHCAD ohne Variablendefinition In diesem kleinen Kapitel wollen wir die ersten Schritte mit MATHCAD tun und folgende Aufgaben lösen: 8 a: 5 =?

Mehr

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test?

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test? Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test? Auch wenn die Messungsmethoden ähnlich sind, ist das Ziel beider Systeme jedoch ein anderes. Gwenolé NEXER g.nexer@hearin gp

Mehr

Backup der Progress Datenbank

Backup der Progress Datenbank Backup der Progress Datenbank Zeitplandienst (AT): Beachten Sie bitte: Die folgenden Aktionen können nur direkt am Server, vollzogen werden. Mit Progress 9.1 gibt es keine Möglichkeit über die Clients,

Mehr

Algorithms & Datastructures Midterm Test 1

Algorithms & Datastructures Midterm Test 1 Algorithms & Datastructures Midterm Test 1 Wolfgang Pausch Heiko Studt René Thiemann Tomas Vitvar

Mehr

INNER WHEEL DEUTSCHLAND

INNER WHEEL DEUTSCHLAND INNER WHEEL DEUTSCHLAND INTERNATIONAL INNER WHEEL 90. DISTRIKT Liebe Inner-Wheel-Freundin, IIW-Headquarters hat Ihnen ein Schreiben zugesandt mit der Bitte, sich dort registrieren zu lassen. Was möchte

Mehr

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08

Security Patterns. Benny Clauss. Sicherheit in der Softwareentwicklung WS 07/08 Security Patterns Benny Clauss Sicherheit in der Softwareentwicklung WS 07/08 Gliederung Pattern Was ist das? Warum Security Pattern? Security Pattern Aufbau Security Pattern Alternative Beispiel Patternsysteme

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Internet Explorer Version 6

Internet Explorer Version 6 Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

Mehr

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München

Dynamisches SQL. Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München Kapitel 4 Dynamisches SQL Folien zum Datenbankpraktikum Wintersemester 2009/10 LMU München 2008 Thomas Bernecker, Tobias Emrich unter Verwendung der Folien des Datenbankpraktikums aus dem Wintersemester

Mehr

Noten ausrechnen mit Excel/Tabellenkalkulation. 1) Individuellen Notenschlüssel/Punkteschlüssel erstellen

Noten ausrechnen mit Excel/Tabellenkalkulation. 1) Individuellen Notenschlüssel/Punkteschlüssel erstellen Noten ausrechnen mit Excel/Tabellenkalkulation online unter: www.lehrerfreund.de/in/schule/1s/notenschluessel-excel Dies ist eine Einführung in die Funktionen von Excel, die Sie brauchen, um Noten und

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Aufgabe 3: Konto Um Geldbeträge korrekt zu verwalten, sind zwecks Vermeidung von Rundungsfehlern entweder alle Beträge in Cents umzuwandeln und

Mehr

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler Downloadfehler in DEHSt-VPSMail Workaround zum Umgang mit einem Downloadfehler Downloadfehler bremen online services GmbH & Co. KG Seite 2 Inhaltsverzeichnis Vorwort...3 1 Fehlermeldung...4 2 Fehlerbeseitigung...5

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf

Mehr

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version: 1.0 09.06.2009 Testen von Software Systemen Übung 02 SS 2009 Version: 1.0 09.06.2009 Komponententest Kunde: Dr. Reinhold Plösch Dr. Johannes Sametinger Kundenreferenz: 259.019 Team 19 Mitarbeiter: Christian Märzinger

Mehr

Anleitung über den Umgang mit Schildern

Anleitung über den Umgang mit Schildern Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen von x-y-diagrammen in OpenOffice.calc Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei

Mehr

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11 Kurzanleitung MEYTON Aufbau einer Internetverbindung 1 Von 11 Inhaltsverzeichnis Installation eines Internetzugangs...3 Ist mein Router bereits im MEYTON Netzwerk?...3 Start des YAST Programms...4 Auswahl

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

.NET Code schützen. Projekt.NET. Version 1.0

.NET Code schützen. Projekt.NET. Version 1.0 .NET Code schützen Projekt.NET Informationsmaterial zum Schützen des.net Codes Version 1.0 Autor: Status: Ablage: Empfänger: Seiten: D. Hoyer 1 / 6 Verteiler : Dokument1 Seite 1 von 1 Änderungsprotokoll

Mehr

Einführung in die Robotik Kinematik. Mohamed Oubbati Institut für Neuroinformatik. Tel.: (+49) 731 / 50 24153 mohamed.oubbati@uni-ulm.de 20. 11.

Einführung in die Robotik Kinematik. Mohamed Oubbati Institut für Neuroinformatik. Tel.: (+49) 731 / 50 24153 mohamed.oubbati@uni-ulm.de 20. 11. Einführung in die Robotik Kinematik Mohamed Oubbati Institut für Neuroinformatik Tel.: (+49) 731 / 50 24153 mohamed.oubbati@uni-ulm.de 20. 11. 2012 Die Klausur findet am 12 März 2013 im H20 um 11h. Dauer:

Mehr

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage Inhaltsverzeichnis 1. Anmeldung... 2 1.1 Startbildschirm... 3 2. Die PDF-Dateien hochladen... 4 2.1 Neue PDF-Datei erstellen... 5 3. Obelix-Datei

Mehr

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten Das große x -4 Alles über das Wer kann beantragen? Generell kann jeder beantragen! Eltern (Mütter UND Väter), die schon während ihrer Elternzeit wieder in Teilzeit arbeiten möchten. Eltern, die während

Mehr

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005 trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005 2 Inhalt 1. Anleitung zum Einbinden eines über RS232 zu steuernden Devices...3 1.2 Konfiguration

Mehr

Physik & Musik. Stimmgabeln. 1 Auftrag

Physik & Musik. Stimmgabeln. 1 Auftrag Physik & Musik 5 Stimmgabeln 1 Auftrag Physik & Musik Stimmgabeln Seite 1 Stimmgabeln Bearbeitungszeit: 30 Minuten Sozialform: Einzel- oder Partnerarbeit Voraussetzung: Posten 1: "Wie funktioniert ein

Mehr

10.3.1.10 Übung - Konfigurieren einer Windows-XP-Firewall

10.3.1.10 Übung - Konfigurieren einer Windows-XP-Firewall 5.0 10.3.1.10 Übung - Konfigurieren einer Windows-XP-Firewall Drucken Sie diese Übung aus und führen Sie sie durch. In dieser Übung werden Sie erfahren, wie man die Windows XP-Firewall konfiguriert und

Mehr

Herstellen von Symbolen mit Corel Draw ab Version 9

Herstellen von Symbolen mit Corel Draw ab Version 9 Herstellen von Symbolen mit Corel Draw ab Version 9 Einleitung : Icon Design-Überblick: 1) Gestalten in Corel Draw 10.0 3) Vorlage für Photopaint für Import von Corel 4) Einfügen in die PSD-Datei und Bearbeiten

Mehr

Einkommensaufbau mit FFI:

Einkommensaufbau mit FFI: For English Explanation, go to page 4. Einkommensaufbau mit FFI: 1) Binäre Cycle: Eine Position ist wie ein Business-Center. Ihr Business-Center hat zwei Teams. Jedes mal, wenn eines der Teams 300 Punkte

Mehr