Home
ToolIP Documentation - Fraunhofer-Institut für Techno
Contents
1. Literature Bish2006 C M Bishop Pattern Recognition and Machine Learning Springer Science Business Media LLC 2006 8 12 7 Plugin ICA This plugin computes an Independent Component Analysis for given data Each row of the given data is a variable and each column an observation The routine assumes that the input data has zero mean 120 Algorithm Documentation 8 12 Matrix Plugins There are two output images of type IMAGE_GREY_F The first output image contains the data projected to the independent components The second output image contains the projection matrix e Inpin 1 Input images must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Contains data projected to the independent components It must be of typ IMAGE_GREY_F e Outpin 2 Contains projection matrix It must be of type IMAGE_GREY_F 8 12 8 Plugin Invert Node to invert the input matrix image e Inpin 1 Input matrix image of type IMAGE_GREY_F e Outpin 1 Output matrix image of type IMAGE_GREY_F Parameters mode string CYCLIC_QR default or QR_BACK_SUB e CYCLIC_QR performs n times the QR factorizatione for an mxn matrix to directly obtain dual basis This even works for non quadratic matrices with m gt n and yields the pseudoinverse in this case e QR_BACK_SUB only works for quadratic matrices therefor it is much faster than C YCLIC_QR 8 12 9 Plugin KMeans Class to perform the K Means clustering This
2. 8 9 10 Plugin Diffusion Node to perform the anisotropic diffusion or the topological gradient on the input image Performs the anisotropic diffusion or the topological gradient on the input image e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F 94 Algorithm Documentation 8 9 Filter Plugins Parameters mode string Defines the mode to be performed Possible values are e AD anisotropic diffusion e TG topological gradient select string Defines for each mode which intermediate result parameter will be selected Possible values are lambda c and u By default it is set to u AD Parameters for AD anisotropic diffusion mode ad_steps long Number of iterations By default it is set to 10 ad_dt double Length of time step By default it is set to 1 0 ad_ sigma double Variance of Gauss filter By default it is set to 1 0 ad_rho double Variance of Gauss filter after derivative By default it is set to 1 0 ad_mue double Threshold for Gauss filter By default it is set to 0 0001 TG Parameters for TG topological gradient mode tg_steps long Number of iterations By default it is set to 10 tg_dt double Length of time step By default it is set to 1 0 tg_ sigma double Variance of Gauss filter By default it is set to 1 0 tg_eps double Accuracy of computation By defau
3. Divide 1 Parame les Image gt Arithmetic gt Divide Parameters Mappings Comment Description order double 9 9 divide double 7 4456 Y Live upcast boo false Gan A Gonna Gaal Figure 5 6 The node parameter is now a subgraph parameter Sub Graph 1 Parameters Generic gt mablib2core gt Sub Graph Parameters Mappings Ui Port Mappings Xml Comment lt xml version 1 0 encoding iso 8859 1 gt lt config xmins schema http www itwm fhg de mab Mablib2Core xML2Schema xmins val http www itwm fhg de mab Mablib2Core XML2Validator xmins ser http www itwm fhg de mab Mablib2Core xXML2Serializer gt lt config gt Run Load from file oK Apply Figure 5 7 This is how the Xml tab should look like after the deletion of all mapped parameters If you execute the plugin while the parameter window is opened the plugin is executed with the parameters set in the Node Parameter Dialog If you click on Cancel inside the dialog box the parameters are set back to the inital state 40 Nodes and Specifications 5 1 Plugins Note Some plugins matrix Featurelmage classification SVM manipulation LabelToFeature use feature plugins as parameters The current implementation does not work properly when using drag and drop from the plugin window The trick is to specify the feature plugin parameter in advance This can be done by right clicking on the plugin in
4. Number_of_ Bives the number of iterations for which the filter is performed By default it is set to 10 iterations long diffusivity_ Choice for the diffusivity function used by the isotropic nonlinear diffusion Can be of type function string PeronaMalik PeronaMalik2 RegularisedTotalVariation Charbonnier and Weickert By de fault it is set to PeronaMalik Structure If set to a value larger than 0 0 a presmoothing of the image with a Gaussian of standard scale double deviation Structure scale will be performed By default it is set to 2 0 Integration If this parameter is set to a value larger than 0 0 a post smoothing of the structure tensor with scale double a Gaussian of standard deviation Integration scale will be performed By default it is set to 5 0 8 10 Manipulation Plugins 8 10 1 Plugin Append Combines two images by appending one to the other Appends two images of the same type in a given direction If the images do not have equal size the two dimensions of the append border of the smaller image are extended to the maximal size The additional space is filled with the value given in the parameter background_value e Inpin 1 First input image of type IMAGE _GREY_F IMAGE _GREY_8 IMAGE GREY_16 or IMAG E_GREY_32 e Inpin 2 Second input image of the same type as the first input image e Outpin 1 Output image with the same type as the first input image Parameters
5. radius long Tthe radius around the midpoint By default it is set to 1 neighbors long Number of points on the circle By default it is set to 8 rot bool Indicates if LBP should be invariant with respect to rotation By default it is set to false 8 9 18 Plugin LowCount Node to count the number of pixels in the neighborhood whose gray value is less than that of the pixel in the middle e Inpin 1 Input image must be of type IMAGE _GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of type IMAGE _GREY_F or IMAGE_GREY_8 Parameters shift double Value will be subtracted from the gray value of the middle pixel before performing the com parison By default it is set to 0 8 9 19 Plugin Median Node to perform the Median filter on the input image Performs the Median filter on the input image The Median filter checks whether each pixel is representative of 98 Algorithm Documentation 8 9 Filter Plugins its surroundings inside the rectangular filter window and replaces it with the median of those values The median 1s calculated by first sorting all the pixel values from the surrounding neighborhood into numerical order and then replacing the gray value of the pixel being considered with the gray value of the middle pixel e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of type IMAGE_GREY_F or IMAGE_GREY_8 Parameters step_x long
6. along string The direction in which the second input image is appended to the first one Available values are X Y or Z By default it is set to X background_ Pixel gray value for additional space value double By default it is set to 0 0 8 10 2 Plugin Autocrop Automatically crops an image to the smallest bounding box of its non zero foreground Performs automatic cropping on the input image i e the output image only contains the non zero inner part of the image Zero rows columns and slices at the image boundary are being cut off 103 8 10 Manipulation Plugins Algorithm Documentation e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of the same type as the input image e Outpin 2 Map with cropping details The map contains the following entries offset_x offset_y offset_z SIZe_X SIZe_y Size_z Note The map in the second output can be used as an input for Extract node 8 10 3 Plugin CartesianToPolar Transforms an image from cartesian to polar coordinates Transforms an image in cartesian coordinates x y to an image in polar coordinates r clockwise using the central pixel as origin and the x direction as starting point The output image has widthout 34 width height and heigthout Width oy X 277 The origin is assumed in the centre of the image and the gray values are bilinearly interpolated e Inpin 1 Input image of type IM
7. e 0 treated as zeros e 1 periodically extended e 2 mirrored on the image border 8 9 8 Plugin Covbin Node to perform an adaptive anisotropic smoothing by computing the local covariance Performs an adaptive anisotropic smoothing by computing the local covariance and splitting up the density into two factors foreground and background e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Parameters bg_ Determines the weight of the background pixels By default it is set to 0 0 weight double step long Determines the half size of the filter window By default it is set to 10 mode string Determines the operation mode of the smoothing filter COVBIN Computes the local covariance on a binary image and returns the smaller eigenvalue COVSMOOTH Performs a 1D smoothing in the direction of the largest variance DATAWEIGHT Computes the local covariance on a positive image and returns the smaller eigenvalue DATAWEIGHTFAST Same as above but faster PHIMAXSMOOTH Performs a 1D smoothing in the direction of biggest contribution By default this parametre is set to COVBIN weight_ The local covariance will only be computed for pixels above weight_th By default it is set to th double 0 0 dilation_ Determines the half size of the rectangular dilation filter applied to the input data the smooth step long ing COVSMOOTH or PHIMAXSM
8. e Inpin 1 input image of type IMAGE_GREY_F e Inpin 2 Optional label image of type IMAGE_GREY_F e Outpin 1 output image of type IMAGE_GREY_F 142 Algorithm Documentation 8 15 Utility Plugins Parameters number long number of local maxima to be detected By default it is set to 1 type string Defines the type of the output image Possible values are e STANDARD default The output image is filled with zeros and the desired number of local maxima are marked with value 255 e SMART The output image has three rows and number 1 columns containing the num ber largest local maxima sorted in descending order filled in the following way column_0 0 width of the original image column_0 1 height of the original image column_0 2 0 column_i 0 x coordinate of the i th local maximum column_i 1 y coordinate of the i th local maximum column_i 2 gray value of the i the local maximum label_ type string Type of the label image Possible values are e ARBITRARY default The labels can be arbitrary floating point numbers e INCREASING_NATURAL_NUMBERS The labels are natural numbers e g for im ages created with the plugin Labeling In this case the computation is much faster verbose bool print function feedback to log area See Also FindBalancePoint which detects the balance points of the labeled objects 8 15 10 Plugin GetCoordinates
9. number of columns e Outpin 2 Value vector contains the same information as the output image Parameters verbose bool Prints function feedback to log area By default it is false 88 Algorithm Documentation 8 9 Filter Plugins 8 8 Fast Fourier Transform Plugins 8 8 1 Plugin FFTW Node to compute the Fast Fourier Transform FFT of the input image s using the FFTW library Computes the FFT of the input image s using the FFTW library The normalization is 1 sqrt n where n number of pixel in the image Inpin 1 First input image that defines the real part Must be of type IMAGE_GREY_F e Inpin 2 Optional second input image that defines the imaginary part If no second image is provided the imaginary part is taken to be 0 Must be of type IMAGE GREY F e Outpin 1 First output image of type IMAGE_GREY_F that contains the real part of the FFT e Outpin 2 Second output image of type IMAGE_GREY F that contains the imaginary part of the FFT Note For 3D images the FFT2D is performed plane by plane For 2D images the FFT1D is performed row wise Parameters mode string Defines what kind of FFT is performed Available values are FFT D_FORWARD FFTID_ BACKWARD FFT2D_FORWARD FFT2D_BACKWARD FFT3D_FORWARD FFT3D_B ACKWARD By default it is set to FFT2D_FORWARD 8 9 Filter Plugins 8 9 1 Plugin Average1d Node to compute the average along a given line segment Comput
10. If set to a value larger than 0 0 the Gauss derivative filter will be applied along the y axis By default it is set to 0 0 thresh Determines the width of the filter window Only values above threshold are taken into account old double verbose bool Prints function feedback to log area By default it is set to false 8 9 15 Plugin IsoNonlinDiffusion Node to perform isotropic nonlinear diffusion on the input image Performs isotropic nonlinear diffusion on the input image 1 e solves the partial differential equation m div s Vuol Vu by Perona and Malik PM90 and Catt e et al CLMC92 with additive operator splitting AOS WHV98 96 Algorithm Documentation 8 9 Filter Plugins There are many different choices for the diffusivity function g for example g s 1 0 1 0 5 2 PERONA_MALIK If the input image is of type IMAGE_RGB_8 or IMAGE_RGB_8I the partial diffential equation is 3 we siv s Y Vuo Vui j l for i 1 2 3 each channel Inpin 1 Input image of type IMAGE_GREY_F IMAGE _RGB_8 or IMAGE_RGB_ 8I Outpin 1 Output image of type IMAGE_GREY_F IMAGE_RGB_8 or IMAGE_RGB 8I Parameters presmoothing_ Standard deviation for Gaussian pre smoothing kernel By default it is set to 1 0 sigma double presmoothing_ Cutoff precision for Gaussian kernel By default it is set to 3 0 precision double diffusivity_ Choi
11. Node to extract a list with coordinates of all non zero pixels The plugin returns the coordinates of all non zero pixels of the input image Each row in the output image corre sponds to one non zero pixel and contains its corresponding x and y coordinate e Inpin 1 input image of type IMAGE_GREY_F e Outpin 1 outrput image of type IMAGE_GREY_F containg pixel coordinates Parameters label bool defines whether the pixel values label from the input image will be stored in the first column of the result image e true result image consists of three columns label x y e false result image consists of two columns x y by default this parameter is set to false 3d bool use 2d coordinates false default or 3d coordinates Note Only 2d images are supported 8 15 11 Plugin GetlmageAttributes Node to extract the Attributes ValueMap from an image 143 8 15 Utility Plugins Algorithm Documentation This node extracts a copy of the internal Attributes ValueMap of the input image e Inpin 1 input image of an arbitrary type e Outpin 1 ValueMap containing a copy of all image attributes See Also SetImageAttributes 8 15 12 Plugin Histogram Node to compute a gray value histogram of the input image A gray value histogram of the input image with bin_count equally distributed bins is created on a user defined pixel range The output is a 1d column image which gray values correspond to the bin coun
12. e Outpin 1 vector of zones Parameters output_mode Determines the output mode or the for the zone list Possible values are VALUEVECTOR and IMAGE Both possibilities are described above Image has the advantage that it can be used as second input of a Box plugin to draw the regions of interest By default it is set to VALUEVECTOR x_offset Augments the size of a zone to the left and right by x_offset By default it is set to 0 160 Algorithm Documentation 8 16 Wavelets Plugins y_offset Augments the size of a zone to the top and bottom by y_ offset By default it is set to 0 downsample Allows to store the downsample ratio in the meta data of the result map it can be used by other plugins or applications to correctly resize the regions if the size of the label image and the input image are different By default it is set to 1 no resizing takes place 8 16 Wavelets Plugins 8 16 1 Plugin ModulusMaxima Class to performs multiscale modulus maxima of wavelet transforms Performs wavelet transforms modulus maxima on the inputs image This method is useful for dicrimination of different types of edges The theory of this method can be found in the article Characterization of signals from multiscale edges by S Mallat et al which appeared in IEEE Transactions on Pattern Analysis and Machine Intelligence Vol 14 No 7 pages 710 732 in July 1992 This algorithm is very similar to Canny
13. rn Ca Figure 5 4 Parameter window with sliders Add Mapping In the now opening menu choose the parameter you want to add to your subgraph The chosen parameter will now appear in the tab Mapping next to an input field see figure 5 5 1 Parameters bea Image gt Arithmetic gt Math Parameters Mappings Comment IF Description Parameter Subgraph parameter ra x Add mapping fin ox Figure 5 5 Choose a name for the parameter Please define a name for the variable by using this input field This name will be displayed in the parameter win dow of the subgraph see figure 5 6 You can un map a node parameter as subgraph parameter by clicking on the red X next to the respective mapped parameter in the parameter window of the plugin Graph parameters only make sense if there is at least one plugin inside the graph that actually maps its value to the subgraph Gray background lineedits at a parameter of a subgraph indicate that there is no plugin inside the graph that maps to this parameter This is a visual feedback to the user that means that this parameter of the graph is not anymore necessary or not mapped At the moment 39 5 1 Plugins Nodes and Specifications you can only delete this mapping as follows Choose the tab Xml You have to manually delete the line containing your chosen parameter name until the window looks like in figure 5 7
14. toolip itwm fraunhofer de It is also possible to use the algorithms from the software MAVI Modular Algorithms for Volume Images for volume image processing and analysis within ToolIP This toolbox is called MAVIkit and offers a comprehensive bandwidth of processing and analysis tools especially designed and useful for volume image data together with a geometrical characterization Its major field of application is data from materials science For obtaining more information concerning or for using ToolIP with MAVIkit please visit www itwm fraunhofer de mavi This manual is organized as follows The installation of ToolIP is explained in chapter 2 A first overview over the GUI of ToolIP is given in chapter 3 This chapter describes the first steps for building an image analysis graph The menus and functions of the software are explained in detail in chapter 4 Of special importance are the nodes of a graph since they model the basic algorithms How these nodes are represented how parameters are modified and which states the nodes can be in is shown in chapter 5 Some further examples in chapter 6 point out features of the tool useful in practice In chapter 7 the generation of runtime licenses is described The documentation of the algorithm nodes can be found in chapter 8 The manual is concluded with a short summary in chapter 9 Appendix A provides a list of useful shortcuts to make every day work more efficient Last but not least credits t
15. 8 7 25 Plugin ShiftHistVar Provides the histogram over the variance of an image and its shifted version This node provides the minimal variance over the 2d histogram of the original and the shifted labeled image If A is an input image and B its shifted version the following covariance is calculated between the two Var A Var B 4Var AB Var A Var B This is done in x and in y direction i e the features are e The minimal variance over the 2d histogram of original and shifted image in x direction e The minimal variance over the 2d histogram of original and shifted image in y direction e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m represents the x and y direction respectively e Outpin 2 Value vector with the same information Parameters shift_x long Number of pixels to shift the input image in x direction shift_y long Number of pixels to shift the input image in y direction verbose bool Prints function feedback to log area By default it is set to false 8 7 26 Plugin Statistics Computes the average variance maximum and minimum of gray value over image pixels This plugin provides features with statistical information of the label regions For each label these features are e average e varian
16. Calculates the roughness of each region by counting the number of pixels for which the difference between smoothed and original image exeeds some threshold For each region the smoothed image is obtained by simple summing along x and y direction and dividing by the number of foreground pixels The number of pixels of a region for which the difference between smoothed and original image exceeds a threshold here 11 is written in the line of this region e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 1 number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 22 Plugin SDistMedianqDiff Calculates the median and 75 25 quantile difference 20 output features are calculated at various distances from the object 84 Algorithm Documentation 8 7 Features Plugins e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns in this case 20 e Outpin 2 Value vector with the same information
17. Determines the gray value of the first of the two resulting image parts value double By default it is set to 1 bg_ Determines the gray value of the second of the two resulting image parts value double By default it is set to 0 verbose bool Determines whether slope and y intercept are printed out By default it is set to false 70 Algorithm Documentation 8 6 Data Plugins 8 6 6 Plugin Line Node to draw a line segment using simple Bresenham algorithm An input image of type IMAGE_GREY_F or IMAGE_GREY_8 amp is read to determine type and size of the output image A line segment with value fg_value is drawn through the input image connecting the two given points ax ay and bx by Optionally the remaining image pixels can be set to bg_ value A second optional input image can be used to draw a set of line segments Each row of the image data must contain exactly four entries ax ay bx by Those are denoting the starting point ax ay and the end point bx by for describing a line segment Example of the Line Plugin e Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional second input image encoding the coordinates of the lines to be drawn must be of type IMAGE_GREY_F e Outpin 1 Output image of same type and size as the input image Note The input image must be of type IMAGE_GREY_F or IMAGE_GREY
18. Determines the half width of the filter window By default it is set to 0 step_y long Determines the half height of the filter window By default 1t is set to O 8 9 20 Plugin Ranking Node to perform a generalized sorting in ascending order Performs a generalized sorting in ascending order The output image contains the gray values of the pixels at position rank in the locally sorted list of the filter window with specified step size e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of type IMAGE_GREY_F or IMAGE_GREY_8 Note In input images of type IMAGE_GREY_F gray values must be in the range 0 lt gray value lt 255 Parameters step long Determines the half size of the filter window for the local sorting By default it is set to 0 rank long Determines the position in the ordered list of the pixel values There are exactly 2 step 1 2 step 1 positions 8 9 21 Plugin RidgeDetector Node to perform ridge detection by using the Gaussian equation and its derivates Performs ridge detection by using the Gaussian equation and its derivates e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 First output image of type IMAGE_GREY_F containing the result of the ridge detection e Outpin 2 Second output image containing the original input image with Gaussian smoothing applied e Outpin 3 Third output image of type IMAGE
19. First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 11 Plugin FromGraph Calculates region features on labels using another ToolIP graph 78 Algorithm Documentation 8 7 Features Plugins Computes features for every region using the given graph For every region as defined by the label image the graph is called and the computed features are collected The graph must accept two float images the first one is the image data the second one is the region mask The result must be a float image with one row containing the feature values The feature names can be stored in the image Attributes map as a vector under the key feature_names e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters graph string Defining the path of the graph to be used verbose bool Prints function feedbac
20. IMAGE _GREY_ 32 or IMAGE _GREY_D e Outpin 1 The morphologically closed image of the same size and type as the input 126 Algorithm Documentation 8 13 Morphology Plugins Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 4 Plugin CutHill Remove regions of higher pixel values compared to the surrounding pixel value The cut hill algorithm uses morphological reconstruction by dilation to remove the local maxima from an image For a binary image it will cut the foreground regions that are not connected to the image border See node P Reconstruction for more details about morphological reconstruction e Inpin 1 The input image where local maxima will be removed must be of type IMAGE_GREY_8 or IMAGE_GREY_F e Outpin 1 The processed image of the same size and type as the input Note Connectivity here is implicitly defined by the implementation of the morphological reconstruction Since reconstruction will use a square structuring element connectivity will always go along axis and diagonal directions
21. Then hit enter Windows System32 cmd exe sc Desktop gt set ITWM_BU_LICENSE_FILE C Program Files Too1IP share con lic ers masc Desktop gt unlocklicense exe nse Unlock v 1 lt c 2013 Fraunhofer ITWM iC Users masc Desktop gt Figure 7 2 Set the evironment variable and unlock license file from dongle Second you have to type unlocklicense exe and again hit enter If there is no error message but the output as in figure 7 2 you are done Please note The license file now is unlocked from your dongle and bound to the current PC or notebook in use That is you can run ToolIP graphs without the dongle with that license file and the installed version of ToolIP on the current PC or notebook only 54 Chapter 8 Algorithm Documentation 8 1 Introduction Image processing is becoming a crucial technology in a variety of scientific and applied fields Computer vision automated quality assurance biological and medical research materials science and many others benefit from advanced image processing algorithms ToolIP s integrated library provides a large variety of image processing algorithms in a convenient and flexible framework It has been designed for ease of use and speed Available algorithms range from simple pixel oper ations and image filters to advanced data analysis and machine learning methods State of the art mathematical morphology and linear algebra are also included The algorithms are implemented to
22. the histogram counts will be only approximate 8 12 2 Plugin CovarianceMatrix Node to compute the covariance matrix of a given matrix The covariance matrix is normalized with n height of the input image e Inpin 1 Input image of type IMAGE_GREY_F with the vectors as columns 118 Algorithm Documentation 8 12 Matrix Plugins e Outpin 1 The covariance matrix as IMAGE_GREY_F with the size m x m where m is the width of the input image e Outpin 2 The mean value for each column of the input image as IMAGE_GREY_F with the width of the input image and height 1 8 12 3 Plugin Determinant Class to calculate the determinant of a matrix with the QR decomposition This function calculates the determinant of the input image A as matrix The matrix A must be a square matrix In case of 3D inputs only the first plane is processed e Inpin 1 Input image must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Value of type double 8 12 4 Plugin EVD Node to compute Eigenvalues and Eigenvectors This function computes the Eigenvalueas and Eigenvectors on image A as matrix The actual computation is per fomed using the TNT JAMA template library as described on ht tp math nist gov tnt documentation html Note The TNT algorithm works only for real valued matrices In the case of a not symmetric matrix the possible complex eigenvalues are returned as 2x2 blocks i e if the complex eigenvalues are for
23. 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Second input image of type IMAGE_GREY_F or IMAGE_GREY_8 Height has to be of the same size as width of first input image e Outpin 1 Output image of type IMAGE _GREY_F 8 12 11 Plugin PCA Node to perform the Principal Component Analysis PCA This node performs the Principal Component Analysis PCA of the input image The input image is considered as a matrix where the data is arranged in column vectors e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 First output image of type IMAGE_GREY_F containing the PCA projected data e Outpin 2 Second output image of type IMAGE_GREY_F containing the PCA projection matrix Parameters out_dim long Output dimension By default it is set to 1 8 12 12 Plugin QR Node to perform the QR decomposition This plugin performs the QR decomposition on the input image A as matrix The first output image contains the resulting matrix Q the second one the matrix R Both output images are of type IMAGE_GREY FF e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 First output image of type IMAGE_GREY_F containing the resulting matrix Q e Outpin 2 Second output image of type IMAGE_GREY_F containing the matrix R 8 12 13 Plugin RANSAC Node to apply the RANSAC algorithm to data provided by the input image and model provided by the graph The input image provides the data points to be fitted t
24. 4 328 339 2006 8 13 6 Plugin Erosion Class to perform the Erosion filter on the input image This plugin performs the morphological erosion f O B i e the grey value in a pixel is replaced by the minimum over all grey values inside the neighbourhood B of this pixel defined by the structuring element In this function the structuring element is a rectangle of size 2 nHalfWindowWidth 1 2 nHalfWindowHeight 1 x 2 nHalf WindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Input image to erosion allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GREY_ 16 IMAGE_GREY_ 32 or IMAGE_GREY_D e Outpin 1 The eroded image of the same size and type as the input Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 7 Plugin ExternalGradient External gradient with a rectangular structuring element where the pivot pixel is in the center This function computes the external gradient P f f8B f i e difference between the dilation and the input image f In this function the structuring ele
25. 5 Plugin RandomChain Node to simulate a random chain the result image contains in every pixel the number of times this pixel has been visited during the evolution This node simulates a simple random chain a string of connected links The motion of every link is partially random and partially influenced by the input image First for every link a random motion step is generated If this is such that the new position is better tha value of the input image is lower at this site it is accepted immediately if the new position is not better the step is accepted with probability 1 prob_th Next the links are moved in such a way that the chain stays connected if they moved too far away from their neighbour they are moved back one pixel The result image contains in every pixel the number of times this pixel has been visited e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of the same type as the input image Parameters prob_th probability threshold determines with what probability a random move will be accepted should be between 0 and 1 low values mean that almost all moves are accepted and thus the motion is more random high values make the motion less random and stronger influenced by the input image by default it is set to 0 9 137 8 15 Utility Plugins Algorithm Documentation iterate number of iterations by default set to 100 hold chain if set to true the links are connected a
26. 6 2 Characterizing objects and textures It is very common in practical applications that a segmentation yields certain objects that should be characterized geometrically Now we turn our attention to an example showing how label images can help to do this see figure 49 6 2 Characterizing objects and textures Further Examples y Threshold 1 Parameters Image gt Segmentation gt Threshold Parameters Mappings Comment Description upcast bool false run_once bool false threshold double 123 114 true_value double 4 0 false_value double 9 9 Figure 6 2 Parameter dialog of the Threshold plugin in live mode 6 3 and the corresponding graph file label1s t1p ConvertType Figure 6 3 Characterizing objects and textures Example graph For simplicity the segmentation part of the graph is represented by the well known threshold example from the previous section 6 1 This segmentation yields a binary image where the foreground is marked with 1 and the background with 0 After segmenting the objects they are now labeled in this examples That means we count the connected components in the foreground and each pixel inside a connected component is mapped to the number of its component We now show four ways to extract information out of this labeling 1 The topmost path extracts the size of the objects with the LabelToSize plugin The second path creates
27. 7 31 Plugin A YinteractionHist ou 202 sra raso eee 88 Past Fourier Transtorm PIBEIOS o s cs A Re ee Aa OA Be ee 89 So AA eka See Re g adie ee ae YER ed He amp ae Saw Ors 89 CONTENTS CONTENTS oot lo A A AIN 89 S91 PlugmAvemgeld ss car A a ER ANA 89 e O a ad A AN 90 333 Plugin BNDES 90 8 94 Plugin BoundaryR gion oo ss ee eS 90 3895 PluemCEShock sc o eoo 55658 eR RR RRR ER a ee ES 91 890 Phupin Canny cosa we eee a Dee a oe eee eo 91 e a AA A AA 92 596 PlugiiCoydBL 26k eee a Pea OES A HE SE eR RS 93 Seo PhenCode 2 5 4264 Pewee eo hee ee ee bse bo bes 93 S210 Plugin UUs lt lt ee EA ADs AA 94 S91 Plugin Distance 664k ee we a eee ee eo 95 89 12 Pluein PourConnected cos s saosa ao Se a eS ae we ee as 95 52 13 Plugin Gags 0 2 A OA ee 96 8 9 14 Plugin raussDerivalive s ss coa ee Bk 96 59 15 Plugin IsoNonlmiDittusion ociosos a AA 96 OP le is cy ad be ORE ee Oe we a Ee de we EE Eee ee ae eee et 97 5 917 Plugin LocalBinaryPaterns lt 64 5545 55 ba MS ee EE PE ee Ee eS 98 Sols Phuzn Lon onni 2s 6 es eed Bk we Sew eee he eS ee ee eS 98 89 19 Plugin Median e lt s coe bee rappa Bk o a o eS 98 8 9 20 Plugin Rankins gt ce sect hema bunka a e ae Eee 99 89 21 Plugin RidoeDeteci l usa aa a e E a aS SS as 99 8 9 22 Plugin RobertsCross lt ceset eepe a eee be 100 a Porn obel ger e k Ree ewe dew he e ea A ome es SS 100 5 924 Plugin SiuemwreTensor2D oo om e A EA ee es 101 29 25 Plugin Siruciute lento rENDZD oo ors ra
28. Outpin 1 Output image of the same type as the input image See Also Shrink reduces the size of an image by a factor of two in all directions 8 10 7 Plugin Extract Extracts a rectangle or cuboid from an image Extracts a rectangle or cuboid from an image e Inpin 1 Input image of type IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 IMAGE_GR EY_F or IMAGE_RGB_8 e Inpin 2 Map with cropping details The map can contain the following entries offset_x offset_y offset_z size_x size_y size_z Any entry found in this input map overrides the corresponding parameter e Outpin 1 Output image of the same type as the input image Parameters size_x long width of the extracted region If size_x lt 0 the region ends at the image boundary By default it is set to 1 which causes the region to end at the image boundary size_y long height of the extracted region If size_y lt O the region ends at the image boundary By default it is set to 1 which causes the region to end at the image boundary size_z long depth of the extracted region If size_z lt 0 the region ends at the image boundary By default it is set to 1 which causes the region to end at the image boundary offset_x long starting point of the extracted region in the x direction If offset_x lt 0 the offset is counted from the opposite side of the image By default it is set to 0 offset_y long starting point of the extra
29. Outpin 1 Smoothed image 161 8 16 Wavelets Plugins Algorithm Documentation e Outpin 2 Wavelet transforms in X direction edges e Outpin 3 Wavelet transforms in Y direction edges e Outpin 4 Modulus norm of transforms in X and Y directions edge strength e Outpin 5 Edge direction in polar coordinates radian in every pixel Parameters nScaleMax is the last scale It maust be greater than O and less or equal than log_2 N where N is minimum of number of pixels in x and y directions Literature e S Mallat et al which appeared in IEEE Transactions on Pattern Analysis and Machine Intelligence Vol 14 No 7 pages 710 732 in July 1992 8 16 3 Plugin OrthoFWT Class to perform the fast wavelet transform with orthogonal wavelets Performs the fast discrete wavelet transform with orthogonal wavelets Mal98 for the input image The transform considers the periodic extension of the image in all axes directions and uses tensor product wavelets in higher dimensions The ordering of the wavelet coefficients in the output image is given by the so called nonstandard decomposition GW02 That means the wavelet coefficients are stored in 2D as d Ch Cy Cd where d are the low pass coefficients and c Cy cq are the high pass coefficients in horizontal vertical and diagonal direction respectively In 3D this is extended analogously The output image has the same number of dime
30. Output image of type IMAGE_GREY_F Parameters step_x long Determines the half of the width of the filter cube in x direction By default it is set to 0 step_y long Determines the half of the height of the filter cube in y direction By default it is set to 0 step_z long Determines the half of the depth of the filter cube in z direction By default it is set to 0 ignore_ Determines whether zeros are taken into account By default it is set to false zero bool 8 9 3 Plugin BinNbh Node to compute the local binary 2x2 configurations in the input image Computes the local binary 2x2 configurations in the input image It can be used for texture analysis Note For 3D image data the function is being applied plane by plane e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of same type as the input image Parameters neighbour Determines what kind of neighbourhood has to be used possible values are 2x2 and 2x2x2 hood string By default it is set to 2x2 8 9 4 Plugin BoundaryRegion Node to get only regions of the input image that are touching image boundaries Node to get only the boundary regions of the input image The output image contains the objects at the boundaries for which the corresponding parameter is set to true Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of same type as the i
31. Port Incremental Sub Graph 4 Repeat condition is i lt 180 Repeat 1 Cast to bool Figure 5 17 Subgraph containing the Repeat node 45 5 3 Data Flow Control Nodes and Specifications place the incoming data onto the first or the second output pin Thus the branch node can be thought of as an if else statement Figure 5 18 Data flow Branch The bottom left input is the data input whereas the top left input represents the conditional input The conditional input has to be of type CValueBool If the condition evaluates to true the input data will be placed on the first output otherwise the data will be placed on the second output If the conditional input pin is not connected to any other node the data will be placed on the first output ReadASCI Paramete ReadImaqe ConvertType a 2 C doc examp ConvertType Figure 5 19 Graph using the data flow controls Branch and Merge Figure 5 19 shows how the branch node can be used in practice An input image is being read using ReadImage If the value of the input parameter is not equal to zero a gaussian smoothing is being performed on the image otherwise the image remains unchanged 5 3 3 Merge Node The merge node is the counterpart to the branch node It allows you to migrate two data streams into one The Figure 5 20 Data flow Merge merge node forwards its input data to its single output immediately when it arrives That is if
32. StaticSterage s coco RR RR ee ee a 157 5 1341 Plugin SISUS se d aos we ee ea ee ee lal oe eee ee 157 8 15 42 Plugin Sirme Manipulate lps HA Ae ee ee ee EL Ee HB Ge eed 158 S 15 43 Plugin Stma Tomas nk ER RS RE EES RS 158 8 15 44 Plugin Tlbloughtocdle oops eth eee et ee ood eS 159 S A Plugin Textsemazer 6G keke ee BAe A eS OES A ees 159 5 1346 Plugin TimerStart tao ee we ee ea ea ee eee 160 SS AT Plein TIO ci ge aoa ao AS aR ee Baa we we i 160 8 15 48 Plugin ZOMELASE coi A ee 160 Wavelets PUBIS e oi ceker r ept a AER ES BK ee ee a SR ee Go dos 161 6 16 1 Plugin Medolos Maxima oso AR eee eee eee oe Be eee es 161 10 2 Plugin Multistalewavelet y ca sae ate dee YES Ses te Ha Skee os 161 CONTENTS CONTENTS 5163 Plus OnnoPW ociosa da a a ee eS 162 8 164 a AIN 163 8 17 Display PMCS Sea a Oe REA EAE E eee Ee a Pa es 164 3 12 Puan DEPAY cia aS a Bae oe a Rae a Bee eS 164 317 2 Plugin Displey PTE ce OR ee ee be ee Pe a eS 166 8 17 3 Plugin Display_vikWindow 2 02 ereki detit ee ee 166 S174 Plugin Load cio e pege a SE ee A See ged 166 S19 PIS VIEW co a A PARAS RR AAN A A eee 166 o A RN 166 3 18 PIB FIOM oia a a a os Rha a ds 166 9 Summary 167 A Shortcuts 169 B Credits for Third Party Libraries 171 CONTENTS CONTENTS Chapter 1 Introduction This manual gives an introduction to the software ToolIP Tool for Image Processing ToolIP has been developed by the image processing department at Fraunhofer ITWM in Kai
33. User Interface 4 2 RAGBI Save Settings 7 Ask before closing unsaved graphs 9 Save plugins with original plugin paths Truncate directories from plugin paths Set plugin paths explicitly to Safe Mode Settings Path to the Safe Mode Plugin runner pluginwrapper PluginWrapper Node Dialog Settings Figure 4 7 The settings window 33 4 3 Plugin Menu Graphical User Interface 4 3 Plugin Menu Plugins px Display Data Image Generic Flow Control Port Utility Image Arithmetic Classification Color Data Filter Labellmage Low Level Vision 7 i Manipulation Load Library Graphs Matching e Remove Item Matrix Reload Library Morpholoay Seamentation Reset parameters Transformation Utility In Output File m Properties IE J amp E E E Save Configuration worn r a Plugin menu b Load plugins Figure 4 8 How to load Plugins in ToolIP After the first start of ToolIP a standard set of plugins is placed in the plugin menu see figure 4 8 a By right clicking in the plugin menu there is a context menu option Load Library Graphs allowing to load additional libraries see figure 4 8 b or graphs In the opening window all plugin libraries of interest can be selected As soon as all the additional plugins ar
34. and depth of the output image e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 Inpin 2 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of type IMAGE _GREY_F or IMAGE_GREY_8 8 12 17 Plugin SVD Class to perform the SVD singular value decomposition This class offers functions to perform the singular value decomposition SVD on the input image A considered as a matrix 124 Algorithm Documentation 8 13 Morphology Plugins With SVD A is decomposed into a product A USV where U and V are orthogonal matrices and S is a diagonal matrix containing the singular values There are three output images yielding U S and V Note For 3d data the operation is performed for every image plane e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F e Outpin 2 Output image of type IMAGE GREY_F e Outpin 3 Output image of type IMAGE _GREY_F 8 12 18 Plugin Transpose Node to transpose an image in matrix interpretation This node transposes i e exchanges rows and columns of an input image interpreted as a matrix For a given three dimensional image each z slice is transposed as a 2d image e Inpin 1 Input image of type IMAGE _GREY_F IMAGE GREY_8 IMAGE _GREY_16 or IMAGE_G REY_32 e Outpin 1 Output image of the same type as the input image 8 13 Morphology Plugins 8 13 1 Plugin BeucherGradient Computes the Beucher gradien
35. are CR correlation ratio or MV determinant of the covariance matrix By default it is set to CR correlation ratio wrap boolean switch to turn ON OFF the wrapping mode in translation By default it is set to false min_point_count determines the minimum number of points needed to estimate the conditional variance By default it is set to 20 117 8 12 Matrix Plugins Algorithm Documentation 8 11 4 Plugin TranslateAdd This plugin translates an image by the vectors specified by non zero pixels of the second input image template and add all translated images together can be used to find patterns similar to the template image This function enhances binary patterns present in the image similar to the given binary template The local maxima for possible matches result from summing translates of the original image by the vectors defined by the nonzero pixels of the second input imaage template The function works best with binary data e Inpin 1 Image which will be translated Must be of type IMAGE_GREY_F Input is mandatory e Inpin 2 Image specifying translation Must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Output image is also of type IMAGE_GREY_F and has the same size as the first input image Parameters normalize This parameter determines if the result image will be normalized by the number of non zero pixels in the reference image By default it is set to true i e normalization w
36. both inputs of the merge node are connected and if the first input receives data first it will immediately place this data on its output triggering the next node Once the second input receives its data it will again trigger the next node with the newly arrived data The merge node does not wait until all input data is available before it executes itself If being used in combination with the branch node either the first or the second output of the branch node will be further processed Another example showing the combined use of branch and merge can be seen in figure 5 21 For the input image is being checked whether the image width is larger than its height If this is the case the image is being transposed otherwise the image remains unchanged The merge node combines the two possible outputs and creates a single output stream 46 Nodes and Specifications 5 3 Data Flow Control PixelValue Transpose Sub Graph J a 4 etimage Figure 5 21 Graph using the data flow controls Branch and Merge 5 3 4 Switch Node The switch node is somewhat similar to the branch node Given some conditional input it will either forward all of its incoming data to corresponding output or block all execution of following nodes completely Thus it can be considered as a switch allowing you to turn data flow on or off The conditional input is the input at the top of the Figure 5 22 Data flow Switch switch node Again only CValueBool t
37. by integrating them into your own application framework Please note that this is only possible if you own a system builder license for ToolIP Please note that in all cases this procedure modifies the license file that you are using So be sure that you did store the original license file safely at another location Use the PC or notebook on which you want to be able to use the ToolIP graphs You need to install ToolIP first to do so follow the instructions in section 2 and use your own installer Use your own license file as well remember be sure it is stored safely in another spot After installation put your ToolIP Dongle into the USB slot Wait until it is recognized by the system then open a command shell as an administrator You can do this by pressing the windows key and typing cmd Then you have to right click on cmd at the top of the opening menu as shown in figure 7 1 Choose the option Run as administrator Programs 1 pP See more results fema Ea shutdown Estat a Figure 7 1 Run a command shell as administrator In the opened command shell you first have to set the path to your license file Type 53 Generation of Runtime Licenses set ITWM_BV_LICENSE_FILE C Program Files ToolIP share config toolip lic as you can see in figure 7 2 in the first prompt license file is by default stored at that location Please beware that there must not be any quotation marks in the file path
38. changes from inside the level set to outside and vice versa This method was proposed in A Fast Algorithm For Level Set Based Optimization 2002 by Chan and Song and it decreases the computation time dramatically The evolving of the contour the zeroline of is calculated by minimizing the following functional F c1 c2 H 9 H VH O y ldxdy v HO e y paxdy newline M lwo s y P HO 19 Ndxdy Aa uo x y c2PH 0 y dady where H z is a regularized version of the Heavyside function H z 5 1 2 arctan uo is the given image and c1 c2 are the means of the inner i e outer region The two steps of the algorithm Step 1 Initialize Construct an initial partition of phi one part for gt 0 one part for lt 0 Step 2 Advance For each point in the image if the energy F decreases when we change x to x then update this point by x x Otherwise x remains unchanged Here the initialization is a circle where the inner region is characterized by phi gt 0 and the outer region by phi lt 0 e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of same type as input image Parameters nu weight of the area of the inner region mu weight of the length of the zero set of the level set function radius radius of the circle of the initial phi x_coord x coordinate of the circle of the initial phi y_coord y coordinate of the circle of the initial
39. edge that means the node before this edge has already produced its output Black edges indicate that no data is available and the node after this edge will not be able to run You can see this in figure 3 4 in the middle and on the right The effect of the morphological opening on an example image is displayed in figure 3 5 The rectangular structuring element is clearly visible Analogously to setting the file name in the ReadImage plugin one can use the parameter dialog of the Opening plugin to use a larger structuring element and make the effect of the opening more apparent Now you have build your first graph in ToolIP You can save the result by clicking on the floppy disc symbol in the menu bar We hope that this chapter could give a first impression of the typical graph development process with ToolIP This first impression will be substanciated by the detailed descriptions of the graphical user interface and the nodes in the following chapters 23 3 2 Building Your Own Graph Overview a a j i j IGREY_8 512x512 128 63 210 0 255 113 802 54 7353 0 255 113 802 54 7353 GREY_8 512x512 3 75 81 0 251 98 8508 53 4072 0 251 98 8508 53 4072 Lent n aE e aen Figure 3 5 Effect of the morphological opening on the image BRIDGE PGM 24 Chapter 4 Graphical User Interface If ToolTP is started the user finds himself in the main window as shown in figure 4 1 Herein
40. edge detection but uses wavelets instead of partial derivatives Note Inputs image must be of type IMAGE _GREY_F The first and second input images are the wavelet transforms in X and Y directions respectively e Inpin 1 Wavelet transform in x direction WTX e Inpin 2 Wavelet transform in y direction WTY e Outpin 1 Edge strength measure after non maxima suppression e Outpin 2 Closed edge contours after applying hysteresis thresholding Parameters m_Angle is the tolerance value of the angle of wavelet transforms WTX WTY in the plane X Y It Tolerance is given in in degrees By default it is set to 15 m_threshold_ is the lower bound for hysteresis thresholding low m_threshold_ is the upper bound for hysteresis thresholding high Literature e S Mallat et al Characterization of signals from multiscale edges IEEE Transactions on Pattern Analysis and Machine Intelligence Vol 14 No 7 pages 710 732 in July 1992 8 16 2 Plugin MultiscaleWavelet Class to performs a multiscale edge detection based on wavelet transforms Performs multiscale edge detection based wavelet transforms on the input image This method is useful for di crimination of different types of edges The theory of this method can be found in the article Characterization of signals from multiscale edges by S Mallat et al e Inpin 1 Square input image of type IMAGE _GREY_F side length must be a power of 2 e
41. example u iv u iv a ib a ib x and y then the eigenvalue matrix looks like u v 0 0 0 0 v u 0 0 0 0 0 0 a b00 0 0 ba 0 0 0 0 0 0x 0 0 0 0 00 y e Inpin 1 Input images must be of type IMAGE_GREY_F or IMAGE_COMPLEX_F Input is mandatory Width and height must be the same e Outpin 1 Contains eigenvector image same type as input image e Outpin 2 Contains eigenvalue image same type as input image Parameters mode TNT only for real valued matrices LAPACK 8 12 5 Plugin Featurelmage Class to compute features of the input image Performs the feature computation of the labeled regions of the input image e Inpin 1 Input input image must be of type IMAGE_GREY_F Input is mandatory 119 8 12 Matrix Plugins Algorithm Documentation e Inpin 2 Input label image must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Output is of type IMAGE _GREY_F and of size 10x10x1 Parameters feature_plugin This parameter determines the feature plugin to be applied By default it is set to NULL verbose If this parameter is set to TRUE the feature count the region count and the scale of each region will be displayed By default it is set to FALSE 8 12 6 Plugin GaussianMixture Node to estimate the gaussian mixture or to evaluate it with given parameters The background to the algorithms implemented here can be found in section 9 2 of Bish2006 This plugin has
42. expression parameter Some example e input string Folder of images lena pgm and seperator expression il 4 the ouput string lena pgm expression il 1 the ouput string lena pgm expression il 1 2 the ouput string of images expression il 1 2 OutImg jpg the ouput string of images OutImg jpg e input string Folder of images lena pgm and seprator e new parameter with the name key1 and value jpg expression i1 0 10 result folder i1 12 15 _output key 1 the output will be Folder of images result folder _output jpg e Inpin 1 optional input string to be manipulated In the case of no input string the output will be the expression parameter itself e Outpin 1 output string based on the input string and the expression Parameters expres expression for the output string sion string By default it is set to 11 seprator char delimiter for splitting the input string By default it is In this case the input string will be splited character by character See example Graph 8 15 43 Plugin StringTolmage Node to read numerical data from a string into the output image Reads numerical data from a string and wirtes it into the output image The data has to be separated with blanks The output image size is determined automatically from the structure of the data in the input string e Outpin 1 output image of type IMAGE_GREY_F containing the da
43. function performs the standard K Means clustering procedure on the input image as matrix of data row vector the first output image is a column of cluster labels the second output image contains the cluster centers as a matrix of row vectors e Inpin 1 Input image must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Contains column of cluster labels type IMAGE_GREY_F e Outpin 2 Contains cluster centers as matrix of row vectors type IMAGE_GREY_F Parameters cluster_count number of clusters By default it is set to 2 iteration number of iterations By default it is set to 100 initial_centers defines how the cluster centers will be initialized The valid choices are RANDOM and LA ST_COLUMN in case of RANDOM every data point is assigned to some cluster at random In case of LAST_COLUMN the initial clusters are given be labels in the last column of the input image the dimension of the input data is then width of input image 1 121 8 12 Matrix Plugins Algorithm Documentation 8 12 10 Plugin Multiply Node to multiply to images as matrices This node multiplies two images considered as matrices The matrix sizes have to be compatible to have a defined matrix product i e the width of the left factor first input image has to be the height of the right factor second input image If the images are three dimensional the matrix product is calculated for each z plane independently e Inpin
44. g by dragging port linking Port reordering node parameter change only if this happens as a result of closing the parameter dialog changing the param eters during running is not saved graph comment change setting flash stop inside a node 4 1 12 Zoom The user has the opportunity to set the zoom factor in his workspace The preset value will be mh ly transmitted automatically to all tabs opened For large graphs it can be useful to choose a lower scale in order to see the complete graph With the adjustment fit graph the zoom settings will be fitted automatically to the current window size The setting of fit selection ensures that all the selected elements are visible 4 1 13 Search Search the current graph for nodes The search can be performed by label by name or both it s also possible to search explicitly for defect nodes 4 1 14 Auto Layout Arranges all nodes in the current graph automatically thereby creating an optimal structure for the B33 graph J 4 1 15 Create Subgraph Moves a selected part of the graph see Figure 4 5 a into a subgraph see figure 4 5 b A marked node can be recognized by a yellow border By Ctrl click or dragging with the mouse multiple node can be selected simultaneously By clicking on the small turquoise triangle of the subgraph node the subgraph opens in a new window see figure 4 5 d By clicking on the small green triangle at the left top corner of the open subgr
45. gt 0 the compared values are considered as equal if their absolute difference is smaller than epsilon By default it is set to 0 true_ Pixel value in output image indicating equality It is cast to double By default it is set to 1 0 value double long false_ Pixel value in output image indicating inequality It is cast to double By default it is set to value double long 0 0 8 3 7 Plugin Math Node to compute various unary math functions on the input image pixel wise Compute various unary math functions on the input image pixel wise Provides logarithmic exponential power and various trigonom etric functions e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional input image of type IMAGE_GREY_F or IMAGE_GREY_8 Needed as second argu ment for pow and atan2 61 8 3 Arithmetic Plugins Algorithm Documentation e Outpin 1 Output image of same type and size as the first input image Note Depending on the input pixel values and used function resulting pixel values can be infinity or NAN Executes pixel wise exactly the function with the same name from math and math2 C headers Parameters function string Indicates the chosen math function to be applied Available functions are LOG EXP POW SIN ASIN COS ACOS TAN ATAN ATAN2 SINH COSH TANH ASINH ACOSH and ATANH CEIL and FLOOR By default it is set to LOG upcast bool Indicates whether the output
46. handle 2D and 3D image data both gray scale and color types are supported This manual is intended as a comprehensive description of the image processing functions provided Related algorithms are grouped into separate modules realized technically as different libraries This structure is reflected in the sections of this manual 8 2 Toolbox Introductions 8 2 1 Arithmetic This group of algorithms provides basic arithmetic functions that can be applied either on singles images or to combine the pixel values from two images e Operations on single images These can be used e g to add or subtract constants to or from each pixel e Operations between two images e g add two images pixel wise to form the result A common application example for such pixel wise operations is the correction of shading artifacts One can apply a large Gaussian filter kernel and subtract the result from the original image This may help in situations with varying illumination conditions in images The basic arithmetic operations are supplemented by more advanced functions such as the RPNC node reverse polish notation calculator This allows to easily apply more complex mathematical expressions to pixel values in one step In order to invert an image one may use the Negative node which multiplies every pixel by 1 Furthermore basic binary valued arithmetic operations are available with the nodes And and Or 8 2 2 Classification Tools and algorithms re
47. i e if the amplitude exceeds a certain limit it draws a cone above this pixel The intersection of several cones could be the centre of the circle All pixels in the 3d Houghspace that exceed a certain threshold are given out as potential centres After the transform you may use the node FindMax to find the potential centers with a local maximum in the Houghspace e Inpin 1 Input image of type IMAGE_GREY_F 145 8 15 Utility Plugins Algorithm Documentation e Outpin 1 3d Houghspace image with the cones type is IMAGE_GREY_F e Outpin 2 2d image with potential circle centers type and size are the same as the input image e Outpin 3 2d image with circle radii which match the respective center point in second output image type and size are the same as the input image Parameters max_ maximal radius of the cone and thus decides the size of the 3d Houghspace radius long By default it is set to 100 limit double The amplitude must achieve this limit before the cone is drawn a marginal value By default it is set to 5 0 threshold long If a pixel in the 3d Houghspace exceeds this threshold it is marked as a potential centre in the second output image a marginal value By default it is set to 35 differentiation string Specifies the decision process for a cone to be drawn It can be one of the following cases e BINARY default the input image is a binary image The cone will be drawn if the value o
48. image is cast to float By default it is set to false 8 3 8 Plugin Maximum Node to compute the maximum of two images pixel wise or the maximum of the pixel values and a scalar e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY F In case of two input images the size of the output image is the minimum of the respective input image sizes Parameters upcast bool Indicates whether the output image is cast to float By default it is set to false maxi If only one input image is given this is the scalar value to compare with By default it is set mum double to 255 0 8 3 9 Plugin Minimum Node to compute the minimum of two images pixel wise or the minimum of the pixel values and a scalar e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY_F In case of two input images the size of the output image is the minimum of the respective input image sizes Parameters upcast bool Indicates whether the output image is cast to float By default it is set to false mini If on
49. image of the same type as the input image e Outpin 2 Second output image of the same type as the input image 114 Algorithm Documentation 8 10 Manipulation Plugins Parameters along string the direction in which the input image will be splitted Available values are X Y or Z By default it is set to X split_ size ratio for the first result image The size of the first result image along the split direction is ratio double given by split_ratioxoriginal_size The size of the second result image is such that it contains all the remaining data of the input image By default it is set to 0 5 8 10 26 Plugin SwitchAxes Node to switch two of the image axes Switches two of the image axes and transforms the image data accordingly e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of the same type as the input image Parameters axes string defines the axes to be switched valid entries are e XYZ nothing is changed e YXZ x and y axes are switched e ZYX x and z axes are switched e XZY y and z axes are switched By default it is set to XYZ 8 10 27 Plugin Translate Node to translate an image Translates an image with given offsets for all three orientations The background value can be set for those pixels not covered by the translation e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the
50. is defined as the difference between the external p As and internal Pg gradient This function performs the morphological Laplacian As f pg f Pg f OB 2 f F OB In this function the structuring element is a rectangle of size 2 nHalfWindowWidth 1 2 nHalfWindow Height 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element This is a general measure for edge strength e Inpin 1 Input image of type IMAGE_GREY_8 IMAGE_GREY_16 IMAGE _GREY_32 IMAGE_GR EY_F or IMAGE_GREY_D e Outpin 1 Edge detected image Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 only one brief note e L van Vliet A nonlinear Laplace operator as edge detector in noisy images Computer Vision Graphics and Image Processing 45 2 1999 Note Input image must be of type IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 IMAGE_GREY_ F or IMAGE_GREY_D 131 8 13 Morphology Plugins Algorithm Documentation 8 13 13 Plugin MorphologicalShockFilter Morphological shock filter with a rectangular structuring element where the pivot pixel is in the center This function performs the morphological shock filter defined via the equation FOB A
51. jeo Dx f J D fG D AGP where D denotes the forward differences in x direction and the image domain e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns in this case m 1 e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 29 Plugin VSlope Calculates a measure of vertical slope within the labels For every x value the grey value tenedency in vertical direction is checked That means for each pixel top to bottom it is checked if in relation to 5 pixels above the gray value has increased or decreased The number of local increases and decreases is summed up and devided by the total number of pixels taken into account That means if case of a monotonous vertical shift the value should be highest values will be in 1 1 If the gray values are equally distributed it should be close to zero 87 8 7 Features Plugins Algorithm Documentation e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number
52. length of the input file as coarsest level Literature Mal98 S Mallat A Wavelet Tour of Signal Processing 2nd edition Academic Press San Diego 1998 GW02 R C Gonzalez and R E Woods Digital Image Processing 2nd edition Prentice Hall 2002 See Also ITWM CPOrthoFWT ITWM Wavelets WT_PO 8 17 Display Plugins 8 17 1 Plugin Display Displays an image This node can be used to display an image or a valuemap For the image display a variety of parameters can be set in the parameter window Parameters for the image display the loop functionality the display of status line features and a number of settings for the algorithm widget are available This widget can be used to pre view the influence of a specific algorithm to the current image AlgorithWidget map allows to apply any loaded tlp graph or xml graph to an area of a loaded image on the fly The area has the size of AlgorithmWidget Width x 164 Algorithm Documentation 8 17 Display Plugins Algorithm Widget Height pixels and has to be chosen by key combinotion Ctrl Shift clicking on the loaded image This widget also can be used for normalizing of certain image areas by setting the parameter AlgorithmWidget Normalize By using the Shift clicking you will see just the zoomed area e Inpin 1 image or value map Parameters Image Zoom describes the zoom factor for the image display e g 100 see
53. note for more information Image Plane Image will normlize the image for the visualisation Normalize StatusLine shows the current information below the displayed image Supported status line entries are w width h height d depth s size wxh for 2 dimensional and wxhxd for 3 dimensional images t image types are IMAGE_GREY_8 IMAGE_GREY_F IMAGE_RGB_8 etc v pixel value at mouse position x y z value imin minimal image value imax maximal image value imean mean image value isigma standard deviation of the image pmin minimal plane value pmax maximal plane value pmean mean plane value psigma standard deviation for plane starts new status bar box e By default the StatusLine shows 5 status boxes ZoomWidget for the loop function Width ZoomWidget for the loop function Height ZoomWidget for the loop function ZoomFactor Algorithm loads an tlp or xml graph Widget Path Algorithm zooms the area on which you are clicking before applying the chosen algortihm Widget Zoom Algorithm of the area on which the algorithm should be applied Widget Width Algorithm of the area on which the algorithm should be applied Widget Height Algorithm Widget Normalize Thumbnail Widget Visible Thumbnail Widget Max Width Thumbnail Widget Max Height 165 8 18 Plot Plugins Algorithm Documentation Note The Image Zoom parameters are admitted in a certain way In the cus
54. ocos Se ek ee Se 134 8 14 Segmentation PIUEI S ico ewe a ERA YR BAD ee DE Ewe SE ee 135 14 1 Plugin PastChanVese o o o eog ek kw e n a eS SS e a es 135 8 14 2 Plugin FeatureSepmentation eG oe ee ee a ee ee eS 136 J43 Plug Mun 0 cos ee awe ew he be A ome es oS 136 S144 PIB e eca kA A REO OE EY Ae Re Bo oe ee es 137 SIS Plug MandemC nan eo 4 ced iis BAS ee Ew Sd he dais 137 3 146 Plugin Threshold ou pi a Bae a Re a ee eee 138 5 14 7 Plugin Watersh d o os oc oces ia en e da a a e eS 138 38 13 Utility Plugins e osco sos ra a eae a BAS Se ee Shes 138 6 13 1 Pugin AddMetaData oos coc cora cd e oe ee ee 139 132 Plugin Bomid Bor ea tale ds e dd eee ee a e DE BY eed 139 815 3 Plugin Comerlype 22 4 4 4465 4 8 Ga RS OER RE hE ES RRS 139 S154 Plugin Convex i o 2 24 eee eect eb bd eee eet ee bd bees 140 e135 Flug Copyigge oc 656 bree ei a BAe A eS eS A ees 140 6 13 6 Plugin Curvelndex 6 cok os oe ea we ee ee ea ee ee eo 141 3 137 PlicmDmwStane o sag paor a BAR e ace we ee Se als 141 8 15 8 Plugin FindBalancePomt lt 6 00 e cs eR a ee eS 142 3 159 Plus PindMak cs ne hh RR SR ee ae Re ee Bes 142 13 10 Plugin tretourdinates ciu ey oA Ree 2 ore eles oe A oe ees 143 135 11 Plugin Gel mage UTILES cet aw Ha ee a RR eed te Ba ewes 143 CONTENTS CONTENTS 8 16 SMA ia aa A eS EES REAR ee eS 144 6 13 15 Plugin Eleazar ES Se Re Ew Ge eee es 144 Sol Sse PEA TOME y 2 os eae SS yp eben A Se AER we Bee ly SH re de Bead dies 145 6 15 1
55. of columns in this case m 1 e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 30 Plugin XYEntropy Computes a measure of the entropy of the 2d positions of the pixels for each label The thresholds used are computed by building the histogram over all label pixels The gray value with 30 pixels lower or higher are chosen as below threshold and above threshold respectively The entropy within of the positions of these highest and lowest pixels is then calculated The plugin can be useful in characterizing random point distributions See XYEntropy example graph e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 31 Plugin XYInteractionHist Computes the Reney 2D entropy in various directions Inpin 1 First input image of type IMAGE_GREY_E e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features
56. only available for 2d images Parameters feature_ path for the feature plugin containing the feature to be computed By default it is set to NULL plugin string feature_ index of the computed feature vector It must be larger or equal to 0 By default it is set to 0 index long verbose bool print function feedback to log area 8 10 11 Plugin LabelToSize Replaces the label values of the input image by the size values of each labeled region Replaces the label values of the input image by the size values of each labeled region Note For 3d images the computation is performed plane by plane Inpin 1 Label image of type IMAGE_GREY_F e Outpin 1 Output image of the same type as the input image 8 10 12 Plugin LabelToValue Node to change labels to a user defined gray value map Changes each label in the first input image into the corresponding gray value in the second user defined map image The second image should contain at least as many gray values as the first image has labels The parameter ignore_zero specifies whether zeros are taken into account or are ignored e Inpin 1 Input label image of type IMAGE_GREY_F or IMAGE _ GREY _8 e Inpin 2 map image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output label image of the same type as the map image Parameters ignore_ defines whether zeros in the label image are ignored i e the corresponding output pixel is set zero b
57. phi lambda_1 weight of the approximation of the image in the inner region lambda_2 weight of the approximation of the image in the outer region iterations number of iterations 135 8 14 Segmentation Plugins Algorithm Documentation 8 14 2 Plugin FeatureSegmentation Node to segment an image via split merge algorithm Uses a generic split and merge approach to partition an image into regions of homogenous properties These prop erties are parametrized through the use of a given feature plugin e g if a plugin calculating the mean gray value 1s specified the split and merge algorithm will partition the image into regions of homogenous gray values while another plugin calculating texture feature values would result in an image outlining regions of similar textures e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of the same type as input image Note The amount of regions to process will grow inversely exponential with the value of split_threshold Parameters feature_plugin Specifies the plugin to use for the underlying segmentation method merge_threshold Parameter of type double Decides on whether to merge adjacent regions split_threshold Parameter of type double Decides on whether to split a region into subregions minimum_ Specifies the minimum number of pixels for a region to be allowed to be split region_size 8 14 3 Plugin Mul
58. pixels In both cases the matrix is scaled so that the resulting values represent probabilites i e their sum is 1 The resulting feature set is composed of e Angular second momentum Contrast e Correlation e Variance Inverse difference moment e Sum average e Sum variance e Sum entropy e Entropy e Difference variance e Difference entropy GG y L age g 1g 1 al Lis Ld ave g l g 1g 1 l8 8 8 1 G G 6 0 L 2 age gg HxHy g 1g 1 G G d y y agg 8 u g 1 g 1 G G o 88 22 1 8 8g 2G y 8Px y 8 Fsav g 2 2G y g a Fsav Pxty 8 g 2 2G Y px y 8 108 ps y 8 g 2 G G Y Y agg log agy g 1g 1 G 1 G 1 2 Y ple 8 Y px y g g 0 g 0 G 1 y Px y g log px y 8 g 0 80 Algorithm Documentation Algorithm Documentation 8 7 Features Plugins Information measure of correlation HXY HXY1 max HX HY and V1 e72 HXY2 HXY Abbreviations e uis the mean gray level of the input data prlg ES ge column sums py g ES A 2 row sums Ma Ma G G Px y 8 y y Age diagonal sum 1 and p y g Agg diagonal sum 2 g lg 1 g 1 g 1 g 8 8 lge 8 I 8 Hy DA gpx g column sum mean Hy Eo gpy g row sum mean O TE Px g g Mx column sum variance O R Py g g My row sum variance Entropy measures HXY Y Dent Age lOg Age HXY1 Y ES agg log
59. pixels are removed i e set to zero that have a neighbouring pixel with a larger value 91 8 9 Filter Plugins Algorithm Documentation not pointing to the original pixel From this thinned edges the segmentation is achieved using two thresholds All pixels with value above threshold_high are directly considered as belonging to an edge All pixels with value below threshold_low are considered as not belonging to an edge For the pixels with gray values between the two thresholds it is decisive whether another edge pixel has an orientation pointing to it or not There are two implemetations for this algorithm e NEW This implementation is the same as the algorithm introduced by J Canny in his PHD thesis see Canny J A Computational Approach To Edge Detection IEEE Trans Pattern Analysis and Machine Intelligence 8 6 679 698 1986 e OLD This implementation is also Canny edge detection but with some modifications e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_GREY_F Note To suppress the influence of noise itis a common approach to preprocess the input image by applying a Gauss filter before starting Canny segmentation procedure Parameters threshold_ Every pixel with a gray value greater than threshold_high is considered as belonging to an high double edge By default 1t is set to 10 0 threshold_ Every pixel with a gray value less than or equal to thresh
60. specific parameter settings or a brief description of a subgraph If the parameter field is opened and you execute the plugin the plugin is executed with the parameters set in the Node Parameter Dialog If you click on Cancel inside the dialog box the parameters are set back to the initial state You are able to change a parameter by using a slider In order to change the display to sliders you need to right click inside the setting field of a parameter and choose the option Create Change GUI Controls The window Create Change GUI Controls shown in figure 5 3 will be opened where you can set the range of the parameter s slider W Creat Change GUI controls Enter the minimum value 0 Enter the maximum value 1 Enter the step size 1 4 Enable live execution Y Show Slider Y Show Spinbox ox J cancel Figure 5 3 Create Change GUI Controls After closing this window the parameter window will show sliders to enable you to set parameters see figure 5 4 It is furthermore possible to add the parameters of a node in a subgraph as a parameter of the subgraph This can be done in the parameter window of the node at the tab Mappings Here you need to click on the button 38 Nodes and Specifications 5 1 Plugins vide Pa IES Image gt Arithmetic gt Divide Parameters Mappings Comment Description order double pp divide double 7 4486 Y Live g upcast bool false
61. than those computed by PExternalGradient 129 8 13 Morphology Plugins Algorithm Documentation e Inpin 1 Input image for the gradient computation allowed types IMAGE _GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 or IMAGE _GREY_D e Outpin 1 The processed image of the same size and type as the input Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 10 Plugin MidrangeFilter Class to perform the midrange filter with a rectangular structuring element where the pivot pixel is in the center This function performs the morphological midrange filter f 1 mid f 5 F B FSB i e the arithmetic mean between dilation and erosion In this function the structuring element is a rectangle of size 2 nHalfWindow Width 1 2 nHalfWindowHeight 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element Inpin 1 Input to the midrange filter must be of type IMAGE _GREY_F e Outpin 1 Filtered image Parameters half_ width of the rectangular structuring element windowsiz
62. the plugin window and selecting the Properties item Here the feature plugin parameter can be set directly In the future feature plugins will be available as standard plugins and have an online documentation Parameter changes can eventually be tested over the button Run Are for all subsequent nodes up to a node of the category display gt image the status fields set to Execute consecutively the changes can be visualized directly With OK the entries are confirmed Cancel reverses all the changes 5 1 3 In and Output Pins MultiTh Figure 5 8 Node in and output pins Depending on the functionality each plugin contains one or more in and output pins The input pins are on the left the output pins on the right side of the node Each output pin can be connected to a random number of inputs To each input only one output pin can be connected The connections can be created by selecting and holding a pin and pulling the link to a second pin By releasing the mouse button the connection is established Links can also be generated with a simple click on the two relevant pins Non connected pins are shown in gray If a pin is selected it will be displayed in yellow As soon as two pins are connected they will become red In this state the color of the connector is black indicating that no processing has been performed yet After execution of the first plugin the color of the output pins and the related connectors and input pins becom
63. to 0 range_ upper bound of values to be taken into accountd max long By default it is set to 255 bin_count long defines the number of histogram bins By default it is set to 256 normalize bool defines whether the resulting histogram will be normalized to sum 1 By default it is set to false See Also Histogram for the histogram of a single image 8 15 14 Plugin Hough Node to perform the Hough transformation on the input image Performs the Hough Transform on the input image e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of the same type as the input image Parameters direction string Specifies in which direction the transformation will be performed Available options are e FORWARD default Performs the Hough transform e BACKWARD Performs the inverse Hough transform in_type string specifies the input type For the BACKWARD transform e STANDARD default input consists of a regular image e SMART the input image contains a list of pixels where each row contains x y and the pixel value corresponding to local maxima of a Hough transform Such a list can be created using the Fplugin FindMax See Also HoughCircle to perform the Hough transform on circles FindMax to create a list of local maxima 8 15 15 Plugin HoughCircle Node to find circles using the Hough transform If the pixel is potentially a pixel of the circumference
64. to overwrite the gray values at the coordinates given by the second input image which in this case is mandatory Must be of type IMAGE_GREY_F Outpin 1 Output image of the same type and size as the first input image Example of Point Parameters px long Determines the x coordinate of the pixel to be set By default it is set to 0 py long Determines the y coordinate of the pixel to be set By default it is set to 0 pz long Determines the z coordinate of the pixel to be set By default it is set to 0 73 8 6 Data Plugins Algorithm Documentation fg_ Determines the new gray value of the pixel s to be set value double By default it is set to 1 0 bg_ Determines the background gray value in the output image value double By default it is set to 0 0 verbose bool Determines whether some information is printed out on the screen By default it is set to false 8 6 10 Plugin PositionToValue Node to write the x y or z index of each pixel coordinate into the output image e Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE_GREY_F e Outpin 1 Output image of same size and type as the input image where each pixel is set to its position index value Example of the Plugin PositionToValue Parameters mode string Determines the dimension to be used when setting the output image with coordinate indices P
65. 0 ay long y coordinate of the first of two points that determine the line By default it is set to 0 bx long x coordinate of the second of two points that determine the line By default it is set to 10 by long y coordinate of the second of two points that determine the line By default it is set to 10 verbose bool print function feedback to log area 8 15 31 Plugin SamplePoints Node to sample 2d image data at the coordinates given by the second input image The plugin samples data from the input image lying at the pair wise coordinates given by the second input image Non integer coordinates will be simply cast to long For points outside the image range the sampled value is set to 0 e Inpin 1 First input image of type IMAGE _GREY_F e Inpin 2 Second input image of type IMAGE_GREY_F containing the point coordinates e Outpin 1 1d output image containing the sampled data points Parameters 3d boolean use coordinate triple instead of coordinate pair for extraction only useful for 3d images 152 Algorithm Documentation 8 15 Utility Plugins Note This plugin only supports 2d input images 8 15 32 Plugin SaveASCIl Node to write image data into an ASCII file Writes image data into an ASCII file The data will be separated with blanks The rows in the image are separated with a newline e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 Not
66. 18 Plugin Redrik This node finds a maximum on a line and the difference to the right hand and left hand minimum For each region in each line a maximum and a minimum to the left and to the right of this maximum are found The maxima and minima are averaged along the lines of the region Eventually the difference between the mean maximum and its mean left minimum first feature column in the output image and the difference between the mean maximum and its mean right minimum second feature are calculated e Inpin 1 First input image must be of type IMAGE_GREY_F mandatory e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 2 number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 19 Plugin RelnbhHist This node calculates the neighbourhood relation histogram For each region and for all pixels of this region the difference of gray values to the pixel on its right bottom and at the bottom right is calculated If the difference exceeds a threshold here 5 it is counted as follows pixel to the right 0 1 small difference big difference pixel at the bottom 0 2 pixel at the bottom right 0 4 These numbers are added up and the counter for the fea
67. 2 15 Plugin ReplicateColumm 2 56k eR ee ee Be 124 38 12 16 Plugin Rephieatekow 64 5 cee se i A Re eee A oe doe ees 124 Se VF a V se ak be Rie See Bea we adie Att Gok Ya Be Bed tye amp ae eae ed 124 CONTENTS CONTENTS SJ e Plus ramps ok ph ae AA ee E EE REAR ee aS 125 a La Menphology Pingis lt lt GA se RRA AR RRR SS OR Oe EO ee ae S 125 8 13 Plugin Bencheriranient sea ts BA Sp ee bE we SA dais 125 6 13 2 Plugin BlackTlopHat gt spia bo map aa eee bee PES Bok we RS 126 3 13 3 Plugin Closing o cocer 55 886 be baw bea eee eae ee be eS 126 3 134 Plus Cath e c co be eA RRR RRR a es 127 6 133 Pegin Dilation socorro Dee a oe eee eo 127 SJ PUGS ESO et ee He a eS Ae eee wie A eee Ett amp Se eet 128 8 1337 Plugin Esteormaloradient oo he RS ER RE RS 128 135 Plug PIE ai 4 264 Penh ae ot bbe ee ee et be bb bes 129 3 139 Plugin Internaloradi nt cee hs eee ER OS ROR EES A eee es 129 5 13 10 Plugin MidrangePilie so v owa 04 40 0 Bebe eee ee ee ee 130 5 13 1 PlBciO Me 620005 ia BR eS ae we eg o 131 8 13 12 Plugin MorphologicalLaplacian 20 0 0 000 0000 131 8 13 13 Plugin MorphologicalShockFilter o eee a 132 6 13 JE Plugin pene os sk a ee CAA Re ee oo eee oe A we eee 132 13 15 Plugin Recon TUCI R esi ose tb ae Eee we ew See Va ew ee eee ees 133 6 13 06 Plugin SeltOuallopat s p e one Se ES a ER RS E aOR a eS 134 sJ Plus THINE es be a ee Ok we ew ee eh SB ee a 134 8 13 18 Plugin WhiteTopHat 2
68. 2 p3 In script_path and parameters it is possible to use some special keys The supported keys are e il indicates the first input image from slot 1 12 and 13 are for the second input_slot and third input_slot il sizex il sizey and 11 sizez are the size of image of the first input slot in x y and z directions repec tively 11 type is type of image from input slot 1 il raw means that the image from the first input slot will be written in Raw format useful for cantata il tif means that the image from the first input slot will be written in tif format useful for float images il asc means that the image from the first input slot will be written in ascii format as SaveASCII 11 xxx means that the image from the first input slot will be written in xxx format e g il jpg writes the image as jpg For the second input_slot and third input_slot all the above keys are valid ol is for first output slot and 02 is for the second output slot ol mark reads the first output with ReadAscii o1 xxx tries to read the first output as format xxx 154 Algorithm Documentation 8 15 Utility Plugins arbitrary user parameters can be used too they are indicated as parameter_name this symbolic name will be replaced by the actual parameter value which must be of type string double long or bool example if the node has a parameter called name with the value v name in script_path will be replaced by v before the command 1s executed
69. 5 Plugin HonghCirele orion ae eS ee Pee Ee Bk we eS 145 8 15 16 Plugin Imageliio o occiso eee ea ee EE ee 146 8 15 17 Plum Labeling cocos ee A RRR OR eR BS Se ye es 147 8 15 18 Plugin Mutualiniormation 2 02 e ee ee ee ee 147 A daa ds a 5G eae He i eS A ees A Ee bs amp Ses 147 6 15 20 Plugin PameNistES oel apeg a ER RS ER ERE RR 148 1321 Plug Pimellabel 22 hh Pee hea eo ehhh ee eh be oh eS 149 6 13 22 PIDE WROTE 149 8 15 23 Plugin RayMaximam ocu a a ee ee eo 149 3 135 24 Plugin Ray MiNi osos ocean e a o 149 8 135 25 Plugin Read ASCII 2 ER a a 150 8 15 26 Plug Readlmag lt o ccce bck eS ee oe ee eh aos 150 6 13 27 Plugin RESINA lt lt ses ee CA Ree oe eee oe ow eee 151 2 13 28 Plug Replace Vale gS Set a Eee we ew See Va es oe See et 151 6 15 29 Plugin R Buer oe ee oe SER RS a EO RS A aOR a eS 151 8 15 50 Plugin SAMPLE so e eed Bk we Sew ee Ee eS See eee a 152 8 15 31 Plugin SamplePomis s o bk eS i ko a ee Se 152 8 15 32 Plugin SaveASC o wi eA EER we ee Ree ee Ee ee 153 8 15 33 Plugin Savelmare ciu a eR ae QS ae SS aa aes 153 15 34 Plugin Sept o e cecer iadu bee eee hee bee awe ae Sea he eS 154 8 15 95 Plugin SeleCLUMAGe on awe ew he bee SRS ome es oh 155 13 36 Plugin SetlmageAtinibutes so oc ee E ERE Ro Ee ee A 155 Sl Piso SIGS x id kG eae Ree ie BSS eee Ew Oa eye Eos amp Be he edict 155 3 190 38 PIES o es A a ae a Ba ee QR Oe SR RS eee 156 8 15 39 Plugin Statielimage occiso ede ee ES 156 8 13 40 Plugin
70. 56 v 1 1 1 1 1 1 1 1 Figure 6 4 Results of running the example graph see Figure 6 3 With the fourth path we can see how useful it can be to work with subgraphs The task for drawing bounding boxes in red might appear more often and so it is possible to save this subgraph in a separate t1p file see figure 6 5 We see that ToolIP uses in and output ports to model the inputs and outputs of the subgraph It ZoneList Divide by 2 Figure 6 5 Subgraph for drawing bounding boxes in red is now possible to load such a subgraph into the plugin menu by right click onto the menu and choosing Load Library Graphs Choosing the t 1p file creates a menu entry as shown in figure 6 6 All subgraphs are sorted in under the menu point Generic XML Graphs This makes it possible to extend the plugin menu by designing graphs for frequently used complex algorithms This way solutions can be added to ToolIP s algorithms even without writing C code 51 6 2 Characterizing objects and textures Further Examples Figure 6 6 Menu entry for the subgraph DrawBoxesRed 52 Chapter 7 Generation of Runtime Licenses In this chapter we describe the procedure to generate a runtime license file After doing so you can run your own ToolIP graphs without the dongle and on another PC or notebook Therefore you could provide others with an image processing application or use your graph solutions
71. AGE _GREY_F e Outpin 1 First output image a copy of the first input image e Outpin 2 Second output image a copy of the second input image 8 15 19 Plugin Normalize Node to normalize the pixel values of the input image Normalizes the pixel values of the input image If required the data can be modified by removing extreme values e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Ouput image of the same type as the input image or IMAGE_GREY_F if parameter upcast is true 147 8 15 Utility Plugins Algorithm Documentation Parameters out_ min double long minimum gray value in the output image By default it is set to 0 out_ max double long maximum gray value in the output image By default it is set to 255 out_ output image value in case of equal minimal and maximal input image value default double longBy default it is set to 0 min_max_ Minimum and maximum value used for correcting the input data All input pixel values lower map string than min are mapped to min all input pixel values greaterthan max are mapped to max This parameter is of the form min max By default it is set to NULL map_ Minimum value used for correcting the input data All input pixel values lower than map_min min double long are mapped to map_min it is used only if map_min 0 and map_max 0 By default it is set to 0 map_ Maximum value used for correcting the i
72. AGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input image Note Currently only available for 2d images See Also The node PolarToCartesian implements the transform in the opposite direction 8 10 4 Plugin Composelmage Composes two images Composes two images in 2d The parameters help to align the images if required The way the resulting pixel value is determined can be chosen for those image positions where both input images overlap Those positions where only one input image is available are filled with the input values of that respective image The remaining pixels are filled with a given value Inpin 1 Input image of type IMAGE_GREY_F IMAGE_GREY_8 or IMAGE_RGB_ 8 e Inpin 2 Second input image of the same type as the first input image e Outpin 1 Output image of the same type as the first input image Parameters shift_x long Adds shift_x to the automatically determined shift in x direction By default it is set to 0 shift_y long Adds shift_y to the automatically determined shift in y direction By default it is set to 0 104 Algorithm Documentation 8 10 Manipulation Plugins mode_x string Alignment of the two input images in x direction Valid entries are e CENTER images are centered in width e LEFT images are left aligned e RIGHT images are right aligned e APPEND image is appended in x direction By default it is set to LEFT m
73. Bpf lt Sa f 4 FOB Apf gt else That means in each voxel the function f is left unchanged or replaced by its dilation or erosion depending on the sign of the morphological Laplacian Agf This way the shock filter identifies influence zones of maxima and minima By iterating this procedure borders between influence zone will appear In this function the structuring element is a rectangle of size 2xnHalfWindowWidth 1 2xnHalfWindow Height 1 x 2xnHalfWindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Image on which to apply the shock filter must be of type IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 IMAGE_GREY_F or IMAGE_GREY_D e Outpin 1 The shock filtered image Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z epsilon small limit for testing floating points to zero Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 14 Plugin Opening Class to perform the opening with a rectangular structuring element where the pivot pixel is in the center This class performs the morphological opening foB fOB B 1 e
74. CR YIO IRIS and XYZ are type string supported By default the value is set to RGB 8 5 3 Plugin Separate Node to separate RGB color channels of an image The input image has to be an RGB image which color channels get separated and are written to three output images one for the R one for the G one for the B color channel e Inpin 1 Input image of type IMAGE_RGB_8I or IMAGE_RGB_8 e Outpin 1 Output image of type IMAGE_GREY_8 or IMAGE_GREY_F determined by parameter out_ type 67 8 6 Data Plugins Algorithm Documentation Parameters out_type string Determines outtype of the output images Possible types are IMAGE_GREY_8 or IMAGE _ GREY _F By default it is set to IMAGE_GREY_S 8 6 Data Plugins 8 6 1 Plugin Ball Node to draw a ball and to set the image background and foreground to given gray values A ball is drawn into the output image and the background is set to a specified gray value Example of Ball Plugin e Inpin 1 Input image to determine type and size of the output image must be of type IMAGE _GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE GREY_32 or IMAGE_GREY_D e Outpin 1 Output image of same type and size as the input image Parameters center_x long Determines the x coordinate of the center of the ball It will be used if the parameter auto does not initiate the automatic determination of the center coordinate in x direction By default it is set to 0 cen
75. If the buffer is full the oldest data is removed such that the next incoming image fits in This can be used for appending data from a line camera to a 2d image e Inpin 1 input image of the type IMAGE GREY_F IMAGE_GREY_8 IMAGE _GREY_16 or IMAGE GREY_32 e Outpin 1 output image of the same type as the input image 151 8 15 Utility Plugins Algorithm Documentation Parameters direction string The direction in which incoming image data is appended Possible values are X Y and Z By default it is set to X max_size long The maximal size of the output image in the given direction By default it is set to 256 verbose bool print function feedback to log area 8 15 30 Plugin SampleLine Node to sample 2d image data along a line computed via the Bresenham algorithm The plugin samples data from the input image lying on the line segment defined by the points ax ay and bx by The pixel distances in the input image are assumed to be in both x and y direction The points on the line are sampled in distance 1 e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 1d output image of type IMAGE_GREY_F The size in x direction is determined from the position and orientation of the line in the input image Note This plugin only supports 2d input images Parameters ax long x coordinate of the first of two points that determine the line By default it is set to
76. LLELIZATION 8 10 5 Plugin Deserialize Node to redistribute the image data to new user defined image dimensions redistributes the input image data to new user defined image dimensions The total pixel count should remain constant The new image dimension can be provided by parameters or optionally also by a second input image e Inpin 1 Input image of type IMAGE_GREY_F e Inpin 2 Optional Second input image providing the new image dimensions e Outpin 1 Output image of type IMAGE_GREY_F containing the redistributed data 105 8 10 Manipulation Plugins Algorithm Documentation Parameters SIZE_X Size of the output image in x direction If the value is 0 the size in x direction of the input image is kept By default this is set to 0 size_y Size of the output image in y direction If the value is 0 the size in y direction of the input image is kept By default this is set to 0 SIZE_Z Size of the output image in z direction If the value is 0 the size in z direction of the input image is kept By default this is set to 0 See Also Serialize transform in the opposite direction 8 10 6 Plugin Expand Expands an image to its double size in each direction Expands an image to twice its width height an depth by duplicating its rows columns and slices In case of a 2d image only width and height are being doubled e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e
77. Literature e Vincent Morphological greyscale reconstruction in image analysis applications and efficient algorithms IEEE Transactions on Image Processing 2 2 1993 pp 176 201 e P Soille Morphological Image Analysis chapter 6 Reconstruction based operators 8 13 5 Plugin Dilation Class to perform the Dilation filter on the input image This plugin performs the morphological dilation f B i e the grey value in a pixel is replaced by the maximum over all grey values inside the neighbourhood B of this pixel defined by the structuring element In this function the structuring element is a rectangle of size 2 nHalfWindowWidth 1 2 nHalfWindowHeight 1 x 2 nHalf WindowDepth 1 such that the central pixel is the pivot element Inpin 1 Input image to dilation allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GREY_ 16 IMAGE_GREY_ 32 or IMAGE_GREY_D e Outpin 1 The dilated image of the same size and type as the input Parameters 127 8 13 Morphology Plugins Algorithm Documentation half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13
78. ONENTIAL RAYLEIGH POIS SON By default it is set to UNIFORM maxi Determines the maximum gray value for the noise Works only if type is UNIFORM mum double By default it is set to 1 0 mini Determines the minimum gray value for the noise Works only if type is UNIFORM mum double By default it is set to 0 0 mu double Only needed if type is UNIFORM Determines the mean of average value By default it is set to 0 5 sigma double Determines the variance Only needed if type is UNIFORM By default it is set to 0 6 a_exp double Must be positive Only needed if type is EXPONENTIAL By default it is set to 0 5 a double Only needed if type is RAYLEIGH By default it is set to 0 5 b double Only needed if type is RAYLEIGH By default it is set to 0 5 alpha double Only needed if type is POISSON By default it is set to 0 5 Algorithm Documentation 8 6 Data Plugins 8 6 8 Plugin PixelValue Node to read and write out a pixel gray value at a specific position in the input image e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Gray value of the pixel at the specified location Note The node can be used to set parameters of other nodes especially flow control elements during runtime based on image specific data Parameters pos_x long Determines the x coordinate of the pixel from where to read the gray value Negative values are counted from the end of row i e
79. OOTH will be performed only at those pixels which are non zero after the dilation By default it is set to 0 i e no dilation will be performed 8 9 9 Plugin Covdet Node to perform a nonlinear filtering based on the covariance matrix of x f x y or y f x y where f x y image data at position x y For every pixel x y its one dimensional neighbourhood is considered depending on the selected direction X or Y These are the pixels x step y x step 1 y x y x 1 y x step 1 y x step y or x y step x y step 1 siss x y x y 1 saig x y step 1 x y step These pixels p xi yi i 1 2 step 1 and the corresponding image values f f xi yi f pi define 93 8 9 Filter Plugins Algorithm Documentation a 2D point cloud x fi or y fi depending on the selected direction X or Y Before the computation the first coordinate of the point cloud is scaled using the lambda parameter xi fi gt A xi fi or yi fi gt Ar yi fi In the next step the covariance matrix of the point cloud is computed The covariance matrix has the diagonal entries aa bb and the off diagonal entries ab ba where da AxA lt x x gt lt x gt lt x gt bb lt fxf gt lt f gt lt f gt ab ba Ax lt x xf gt lt x gt lt f gt For the Y direction case just replace x with y lt gt are the expectation values of the unscaled data sc
80. Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 23 Plugin SdistAveVar This node provides features characterizing the average and variance at different distances from the object center For each object the center of object and eigenvector corresponding to the smaller eigenvalue is computed Then it computes the distance between each point of object to the center of object perpendicular to the normalized eigenvector After that the distance distribution is divided into half of number_of_features equidistance bins of size two The points of object with distance bigger than number_of_features are not taken into account Finally for each bin the average and variance is calculated as features Therefore the features are as follows e average of gray value of object with distance between 0 and 2 e variance of gray value of object with distance between 0 and 2 e average of gray value of object with distance between 2 and 4 e variance of gray value of object with distance between 2 and 4 This plugin has two outputs First output has number_of_features columns and each column is for one feature The second output is a valuevector map which has number_of_features keys corresponding to features Each key has a vector of computed features as value e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY
81. ReadASCI ReadImage Figure 3 3 Building your own graph Left Find the plugin ReadImage Right Entering parameters to the ReadImage plugin SITWMDIR examples graphs bridge pgm Note that the variable name SITWMDIRS is resolved by the application After typing the parameters and clicking the OK Button one can run the plugin by clicking on the green box inside the plugin icon Data available at the ReadImage Figure 3 4 Building your own graph Left Connecting two plugins Middle Green edges indicate existing data Right All nodes have run output pin of the node is indicated by cyan color Now you can drag and drop the second node for our graph For this example we have chosen Image Morphology Opening to perform a morphological opening with a rectangular structuring element To create an edge between the two nodes first click on the output pin of the ReadImage node which then turns to yellow This can be seen in figure 3 4 on the left Clicking on the input pin of the Opening node creates an edge i e a data connection between these two nodes We can now add two Display plugins to finish the simple graph The resulting graph is shown in figure 3 4 in the middle The graph for this example can also be found in the file INST_DIR examples graphs opening tlp If you want to execute the graph node by node it is helpful to see the progress graphically To this end green edges indicate that there is data available on this
82. See an example of Constant Plugin e Outpin 1 Output image of specified size and specified pixel gray value is created will be of type IMAG E_GREY_F Parameters size_x long Determines the width of the output image By default it is set to 256 size_y long Determines the height of the output image By default it is set to 256 size_z long Determines the depth of the output image By default it is set to 1 constant double Determines the gray value for the output image By default it is set to 0 0 8 6 5 Plugin HalfPlane Node to draw a line and fill the resulting two image parts with given gray values A specified line is drawn into the output image Each of the resulting two image parts is filled with a specified gray value e Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE_GREY_F or IMAGE _GREY_8 e Outpin 1 Output image of same type and size as the input image Parameters ax long It contains the x coordinate of the first point that determines the line By default it is set to 0 ay long It contains the y coordinate of the first point that determines the line By default it is set to 0 bx long It contains the x coordinate of the second point that determines the line By default it is set to 10 by long It contains the y coordinate of the second point that determines the line By default it is set to 10 fg_
83. The plugin SDK enables the user to write his own algorithms in C and integrate and use them in ToolIP After clicking Next a window appears This window is shown in figure 2 2 You are asked to enter your license file name or the directory it is stored in By default this path is set to toolip lic To choose the right location click onto the three dots next to the path label After you did click on Next you are asked to give a path for the installation directory This is shown in figure 2 3 By default this path is set to C Program Files ToolIP 15 2 2 Linux Installation ToolIP 2015 Windows 64 Bit Setup Please select the license file You can always copy the license file manually to C Program Files ToolIP share config toolip lic For Demo Mode continue Cancel Nullsoft Install System v2 46 lt Back If Figure 2 2 Choose the license directory This path is added to a new windows environment variable called ITWMDIR After specifying the directory the jis ToolIP 2015 Windows 64 Bit Setup Installation Folder loj x gt Please select where to create the ToollP Destination Folder C Program Files ToolIP Browse Space required 62 4MB Space available 32 2GB Cancel Nullsoft Install System v2 46 lt Back star Figure 2 3 Choose the installation directory actual installation procedure starts As a first step during the installation procedure the dr
84. The sizes of the images used with this plugin are restricted to 256x256x8 in the demo version 8 15 35 Plugin Selectlmage Node to select one of the input images and copy it to the output This node selects either the first or the second input images based on the value of the third input The third input can either be a single value of type long or bool or an image of type IMAGE_GREY_8 or IMAGE_GREY_F If the third input is an image the value of the first pixel 0 0 0 is considered for the evaluation In case the value equals 0 false the second input is selected otherwise true the first image is selected If the third image is NULL the first image is chosen e Inpin 1 first input image of an arbitrary type e Inpin 2 second input image of an arbitrary type e Inpin 3 image selector value of type long bool or an image of type IMAGE_GREY_8 or IMAGE_GRE Y E e Outpin 1 Output image of the same type and size as the selected image 8 15 36 Plugin SetlmageAttributes Node to extend the attributes of the input image The attributes are extended and not completely overwritten The attribute name is determined by the parameter key and the attribute value is determined by the parameter value If the attribute already exists it will be overwritten otherwise it will be added If key is empty and the value is of type map then the resulting attribute are a copy of the map e Inpin 1 input image of any type e Outpin 1 input image with t
85. ToolIP Tool for Image Processing Version 2014 User Manual Fraunhofer ITWM www itwm fraunhofer de ip toolip itwm fraunhofer de O 2014 Fraunhofer ITWM In case of any problems concerning ToolIP or this document please do not hesitate to contact us via e mail at toolip itwm fraunhofer de Contact Fraunhofer Institut fiir Techno und Wirtschaftsmathematik ITWM Abteilung Bildverarbeitung Fraunhofer Platz 1 67663 Kaiserslautern Germany Web www itwm fraunhofer de ip E Mail toolip itwm fraunhofer de Contents 1 Introduction 2 Installation E a EII O 2 2 Linux Za Mae OHP io E RR a RA a Aa SG Be eS Aari pE 3 Overview PAI Version ida a de a ES DEMO VETO oo Bk ti Eee ae hee BE GES OPS 3 1 First Example Image Simplification 32 Building Your Own Graph lt s s 26 442 RRR BEER ERA EER eR OE EO 4 Graphical User Interface AT Nemi Bar oS aoe o be ee ee ds RR oe Soe we ee a ome ee eee A 4 1 1 4 1 2 4 1 3 4 1 4 4 1 5 4 1 6 41 7 4 1 8 4 1 9 4 1 10 4 1 11 4 1 12 4 1 13 4 1 14 4 1 15 4 1 16 4 1 17 SCAS 6 eee a a pa aA a aS Go eS ds Sd a deo A we a SS Clase TAD sc ea hE e a Ee ee ee eh eee a oe eee eo o face bi od Peewee Saw eae Sep RS RE Re eS Start the Graph c s esor seg a Bk BO Ss Sa we eS A we RS oE SOLISTA y te So E AR Eee OE we wee Bet ars Execute Consecnnvely oo pa ce Ok em eS Rae ee OP ORE PS ee eS PU LATOD 202005 Mis See ae ee ER e eB Bote E ice Beet es Cre
86. USB dongle driver for license checks Es Microsoft Yisual C 2010 x64 Redistributable Setup Welcome to Microsoft Visual C 2010 x64 Redistributable Setup Please accept the license terms to continue oO MICROSOFT SOFTWARE LICENSE TERMS MICROSOFT VISUAL C 2010 RUNTIME LIBRARIES y J 1 have read and accept the license terms al ja Yes send information about my setup experiences to Microsoft Corporation For more information read the Data Collection Policy Figure 2 5 Setup wizard for the Microsoft Visual C Redistributable 2 3 Starting ToollP After a successful installation you are now able to start ToolIP Depending on whether you use the full or the demo version the functionality of your software will be different 2 3 1 Full Version The full version of ToolIP is delivered with a USB dongle and a license file The license file must be in the following location for ToolIP to find it SITWMDIRSAsharelconfig After starting the software with dongle in USB slot the application main window will appear on the desktop This will look like the screenshot in figure 2 7 You are now able to start using ToolIP If the dongle is not found that is ToolIP starts in demo mode even with dongle in USB slot please re install the dongle driver You find the installer in SITWMDIR support matrix inf_inst exe 17 2 3 Starting ToolIP Installation a ToolIP 2015 Windows 64 Bit Setup Completed Complete
87. _8 and the second optional image must be of type IMAGE_GREY_F Parameters ax long It contains the x coordinate of the starting point of the line By default it is set to 0 ay long It contains the y coordinate of the starting point of the line By default it is set to 0 bx long It contains the x coordinate of the end point of the line By default it is set to 10 by long It contains the y coordinate of the end point of the line By default it is set to 10 fg_ Determines the gray value of the line in the output image value double By default it is set to 1 0 bg_ Determines the gray value of the background in the output image value double By default it is set to 0 0 fill_ Determines whether the line is drawn into the input image set to false or on a constant image background bool with gray value bg_value having the same size and type as the input image set to true verbose bool Determines whether slope and y intercept are printed onto the screen By default it is set to false 8 6 7 Plugin Noise Node to fill the output image with gray values calculated by a range of different noise functions The output image is filled with noise of the specified type e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 Determines type and size of the output image 71 8 6 Data Plugins Algorithm Documentation e Inpin 2 Optional second input image
88. _F 8 9 13 Plugin Gauss Node to apply the Gauss filter on the input image Applies the Gauss filter on the input image It uses the recursive version of Young van Vliet For more information on this method we refer to YV95 e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_GREY_F Parameters sigma_x double If set to a value larger than 0 0 the Gauss filter will be applied in x direction By default it is set to 1 0 sigma_y double If set to a value larger than 0 0 the Gauss filter will be applied in y direction By default it is set to 1 0 sigma_z double If set to a value larger than 0 0 the Gauss filter will be applied along the z direction By default it is set to 1 0 run_once bool INTERNAL Indicates whether the node is run only once By default it is set to false Literature e YV95 Ian T Young and Lucas J van Vliet Recursive implementation of the Gaussian filter Signal Pro cessing Elsevier 44 pp 139 151 1995 8 9 14 Plugin GaussDerivative Node to apply the Gauss derivative filter on the input image Applies the Gauss derivative filter on the input image Inpin 1 Input image of type IMAGE_GREY_F Outpin 1 Output image of type IMAGE_GREY_F Parameters sigma x double If set to a value larger than 0 0 the Gauss derivative filter will be applied along the x axis By default it is set to 0 0 sigma y double
89. _F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 20 number of columns e Outpin 2 Value vector with the same information Parameters number_of_ Determines the number of features By default it is set to 20 features long verbose bool Prints function feedback to log area By default it is set to false 8 7 24 Plugin Shadow This node calculates the mean gray value outside of a region at various positions Features 1 to 5 columns in output image For every region the mean gray value of the pixels outside of this region lying i pixels 1 lt i lt 5 on the left of a point within this region is calculated Features 6 to 10 For every 85 8 7 Features Plugins Algorithm Documentation region the mean gray value of the pixels outside of this region lying i pixels 1 lt i lt 5 on the right of a point within this region is calculated Features 11 and 12 Here the covariance is calculated e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 12 number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false
90. _GREY_F containing the calculated maximum eigenvalues e Outpin 4 Fourth output image of type IMAGE_GREY_F containing the calculated minimum eigenvalues Parameters sigma double Determines the standard deviation used in the Gaussian equation By default it is set to 1 0 gauss_ Determines the size of the Gaussian filter By default it is set to 1 0 10000 0 threshold double 99 8 9 Filter Plugins Algorithm Documentation thresh Determines the threshold for the maximum eigenvalue By default it is set to 1 0 10000 0 old double thresh Determines the threshold for the first eigenvector If it is omitted 2 threshold will be used old2 double By default it is set to 1 0 10000 0 8 9 22 Plugin RobertsCross Node to perform the Roberts cross filter on the input image Performs the Roberts cross filter for edge detection on the input image The Roberts cross filter performs a 2 D spatial gradient computation on the input image and emphasizes therefore regions of high spatial frequency corresponding to edges e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Parameters direction string Defines along which axis the filter operation will be performed e X along the x axis e Y along the y axis e BOTH the output is the sum of the absolute values of the filter results along both axes By default it is set to BOTH pseu
91. a The data module provides a set tools for parametrized image creation This can range from simple geometrical objects like balls boxes and lines to more sohisticated ones like splines Random numbers according to different distributions can be generated too By combining different data plugins parametrized sequences of test images can be easily created Another impor tant use is the creation of adaptive masks to facilitate segmentation or the visual presentation of final result of for example a detection algorithm Still another use is the generation of realization of stochastic geometry models like for example the boolean model 8 2 5 Display Display groups together all nodes available for data and image visualization Thus the nodes found here are all terminals The following display nodes are currently available e View provides fast and simple viewing of 2D and 3D images e Display is a highly configurable node that allows to display images and data contained in value formats such as ValueMap or ValueDouble e PlotView is a tool for displaying 1D functions and histograms 56 Algorithm Documentation 8 2 Toolbox Introductions 8 2 6 Features The features module provides tools to characterize image regions Regions are defined by assigning the same label value to a set of pixels i e pixels with the same label belong to one region The most common case is that regions correspond to connected components in a binary image then
92. a ZoneList of the objects and displays it as list The third path calculates geometric features of the objects with the LabelToFeature plugin A WwW N The fourth path uses a subgraph to draw the bounding boxes of all detected objects in red into the input image 50 Further Examples 6 2 Characterizing objects and textures Figure 6 4 shows the results of this graph HOST pu DP DDR D i OD OHS Be BHO SB esmero Search for Plugins sx O babess tip 2 LabelToSize Disp Display gt Image gt Display E Threshold 1 Parameters Image gt Segmentation gt Threshold Parameters Mappings Comment Description upcast bool false ConvertType Threshold mea p hl treshd Goble 23 18 Yue g true_value double 4 0 false_value double 9 0 Plugins ax Divlav J rn o conca toni Generic Imana J Ez A ae en Label Size Display O Feature Display O tist of ROIs Dis L El 2 E Bounding Boxes Display Lola 2 10 y Y Nomaize o F 100 Y normaize o El Key Value Tyee 100 y MZ Normalize 0 root vector q gt Meta map 0 map 1 map 2 map 3 map i 4 map L E 5 map runni runni runa rumi runa runa rumi runni runni i runni rumin G GREY_F 256x256 200 23 0 4060 0 4060 GREY_F 2561256 192 251 0 15585 0 15585 funn Type CValueVector RGB 8 256 2
93. ae Ee es 63 83 11 Plc Mp ook oo a aa QS ae Se ea a 63 8 3 12 Plugin Nese eoc ek a sc ee A eae eae he eS 63 alo PISMO ac oi Cee ee ewe ewe bE SRS ome es es 64 33 14 Phen RPNG os oS a A Ee EY Ae Re AA es 64 ca ita SOME AAA ite BSS ee Ew OA aye Ee amp ee he tees 65 23 316 PUAN SUBUGE oe a Sha ae a A A SR eS ee 66 84 Barcode Plugins ooo oc we ea ea eS 66 8 4 1 Plug BarcodeReader co 56 ce RR RE RR ee ES 66 3 02 Color PIRCI S ooo ee RR a ewe A ea ee e 66 8 5 Plugin Color Tanto 25 2 leds A Se ee Ge ee EL SD ee amp ee Ge Said 66 532 Phen Coming iee spee e a 65 Seb RRS ORE RE hE SS eR RS 67 S33 Pubs separ 2 6 bk Bs Pete ehhh ee ee ee oh E eS 67 oo Data Fugi cor EE A Se eR OER ARS Se ee SG RS OS OEM A 68 S61 Plug Ball 2a kha ee baw a ee eal oa ee ee 68 802 PCW BOR comica iia ca BoB AS aeRO oe Ee aca we ee Bg Se aha OAS 68 5043 PUCCIO coccion ee eee Ae a E E ES 69 304 Plucin Constant es e456 64 RRS ee ae ee Re Beh as 70 05 Plum HNP o oi 50k eee MAR ee ee oe eles oe oe ies 70 See PUES IAS e tte ke See ee adi A Re Sed he amp ae eae GS 71 CONTENTS CONTENTS 8 7 8 8 Sor a AI eS A E REAR eee 71 3 00 Plugin PRENIE e ss cars ES Se a ERAN 73 Soo Piven e edt A da a AR a fre de tides 73 6 6 10 Plugin Positioalo ale 6 054 ba mp A A 74 S611 Plugin Spline lt 6 4 44 55 08 o a eee ee 74 860 12 Plugin Vale s co pe ee A RRR RR RE eS Se ee eS 75 P aturss PGI oe a a A ee ae Dee a ewe ee be 75 Sel PWA se HE ee eS he A
94. al static CValueMap This node allows for reading from or writing to a global static ValueMap Because the internal ValueMap is static it is the same in all instances of the class and can be used as a kind of global variable throughout the application across different graphs In this ValueMap various different datatypes can be stored and referenced by keys The supported types are CImage CValueMap CValueVector CValueBool CValueDouble CValueLong CValueString The last four types can for instance be parameters of plugins e Inpin 1 input valuemap only being used in the WRITE mode e Outpin 1 output valuemap only being used in the READ mode Parameters mode string Defines whether to read or write the static image the possible values are WRITE READ and DELETE WRITE the input object is written to the internal static CValueMap and a corresponding key The old internal data is overwritten with the new data if the key is already in use READ default a copy of the internal static value corresponding to the key is written to the output If the internal ValueMap has not been written to before the result ValueMap will only contain the execution time DELETE the entry corresponding to the key is removed from the static ValueMap SHADOW_WRITE any pointer wrapped into CValuePointer can be set to the input that will be saved in the internal static CValueMap associated by the corresponding key S HADOW_WRITE create neither a c
95. aling data with lambda scales the entries of the covariance matrix as above Once we have the covariance matrix the eigenvalues determinant or direction of the eigenvector is computed and written as the result image depending on the mode parameter e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Parameters lambda double Determines the scaling of the coordinate data the image gray values are not scaled as only the relative scaling is important and has any effect Smaller values make the filter more sensitive bigger values less sensitive By default it is set to 1 0 mode string Determines which quantity derived from the covariance matrix is written to the result image The following modes are supported e MINEV smaller eigenvalue e MAXEV bigger eigevalue e DET determinant e PHI direction of eigenvector rad By default it is set to MINEV step long Determines the size of the filter mask for every pixel x y the pixels x step y y step 1 y X y x step 1 x x step y are taken into account If the parameter di rection is set to Y the corresponding y range is considered At the image boundary the mask is adjusted shrinked so that all pixels lie inside of the image By default it is set to 10 direction string Determines the direction in which the filter operation is performed Supported values are X and Y By default it is set to X
96. all bright structures The term small is meant with respect to the structuring element In this function the structuring ele ment is a rectangle of size 2 nHalfWindowWidth 1 2xnHalfWindowHeight 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Input image to white top hat transform allowed types IMAGE_GREY_F IMAGE_GREY_ 8 IMAGE_GREY_16 IMAGE_GREY_32 or IMAGE _GREY_D e Outpin 1 The processed image of the same size and type as the input 134 Algorithm Documentation 8 14 Segmentation Plugins Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 14 Segmentation Plugins 8 14 1 Plugin FastChanVese Node to calculate a fast segmentation of a 2D image based on an algorithm by ChanVese This function calculates a segmentation based on an algorithm by Chan and Vese Active Contours Without Edges 2001 but the variational problem is not solved via the Euler Lagrange Equations Instead the energy is calculated directly and it is checked if the energy decreases when a point
97. ameters The first graph we take a look at can be found in the examples directory under the name threshold tlp and is displayed in figure 6 1 Concerning the functionality it is very simple It only performs a threshold on a gray M Threshold 1 Parameters Image gt Segmentation gt Threshold Parameters Mappings Comment Description upcast bool false run_once boo Faise threshold double 167 384 O Display 1 Display O Display 2 Display true_valve double 1 0 false_value double all 100 X 100 gt Normalize o E os GREY_8 256x256 94 1 0 0 255 46 1 0 255 46 1 GREY_8 256x256 12 252 0 1 0 106 0 1 0 106 Jl AAA AAA Figure 6 1 Threshold in live mode value image The interesting point with this example is that the Threshold node allows to choose the threshold parameter in a live mode That means there is a slider in the parameter dialog of the threshold plugin that can be dragged with the mouse see figure 6 2 Since the following display plugin has a bolt symbol see Chapter 5 this plugin is executed every time the slider is moved This makes an interactive choice of the parameter possible If the path of the graph after the plugin with the slider is longer it might be that the running time is longer and the update of the display slightly slower Nevertheless this can still be helpful for efficiently choosing parameters
98. amples 49 61 Interactive choise of parameters soea ee e RR Se EEO Se OA ee es 49 6 2 Characterizing objects and textures ee 49 7 Generation of Runtime Licenses 53 8 Algorithm Documentation 55 Sl iodeto son hoz ed OS ee RA RR RR ESOS wee See Oe eae ee es 55 S2 Toolbox MIDEN coo oa iene EE EA a dee ee eS 55 SAL POO neci sip nipa se SAS ERE SG Shae EES BEDS A oe ES SEG 55 Ba Classificato eta ee SS A A we ER Seed e we See Gd 55 S20 MOLE oni kobe bo ew eee BEEBE Ee he te eee ae EER BEES 56 O E 56 Bey A RR OO ee ae OFS 56 CONTENTS CONTENTS et o A eee 57 Ser A CRE OO eS SF Oe ee Eo Soe a es 57 Se COBAS cs 22 bre eae A 57 S29 MampuldHom s es ee pp a Ea aae eR ee ae a a AS 57 S L LD Matching 2 006444 6464 o a eee eae eee be ee 57 S21 o IE 58 S212 Morpiglogy esed bh a a a eee eo 58 Sedo OREA y 2 eG ae HE pe eS A A ee wie A eee Et amp A aai 58 6 2 18 TARRO cosa RS ER RE hE Se eR RS 58 Soto WOM 2 aba be BH ia 59 So AUDE PUES osea A SEE RS BORE OEMS Hore es 59 S31 PUSWABS e ee hea a we ee ee eal eee ee ee 59 832 PIS ABADIA cai gas BoA RS a e ace we ee o 59 B30 PlismAdd 2244 b babe Bee e a ERA peee ee eS 60 S34 AER 60 S35 Plug wide 2 cs kek ee CA Re ee oe eee oe A we ie 60 Soe Plum Equal oy 2445 eee Set be a ES ed we Ew ee Hee ee ee es 61 S3 A AAA 61 S30 Plugin TARO 6 ei A we Sew ee a eS e Bi eS 62 8 39 Plugin Minimum cs eeo eke eS ee ee ee eS 62 S310 Plugin Mod l g 2 564 45 Bee A DME RA we ee Ree
99. an erosion of the image followed by a dilation with the same structuring element In this function the struc turing element is a rectangle of size 2 nHalfWindowWidth 1 2 nHalfWindowHeight 1 2 nHalfWindow Depth 1 such that the central pixel is the pivot element e Inpin 1 Image to which the opening should be applied must be of type IMAGE_GREY_8 IMAGE_GR EY_16 IMAGE_GREY_32 IMAGE_GREY_F or IMAGE_GREY_D e Outpin 1 Morphologically opened image 132 Algorithm Documentation 8 13 Morphology Plugins Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 15 Plugin Reconstruction Class to perform morphological reconstruction by dilation or by erosion This node performs the morphological Reconstruction by Dilation or by Erosion on given marker and mask image Morphological reconstruction means to iteratively apply geodesic dilation 6 or erosion to an image f restricted to mask image g Using geodesic dilation or erosions 5 8P f Ages e 1 Vg we iterate one of the two until convergence Con
100. ant with respect to the structuring element In this function the structuring ele ment is a rectangle of size 2 nHalfWindowWidth 1 x 2xnHalfWindowHeight 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Input image to black top hat transform allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 or IMAGE _GREY_D e Outpin 1 The processed image of the same size and type as the input Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 3 Plugin Closing Class to perform the morphological closing filter on the input image This function performs the morphological closing feB f B OB i e a dilation of the image followed by an erosion with the same structuring element In this function the struc turing element is a rectangle of size 2 nHalfWindowWidth 1 x 2 xnHalfWindowHeight 1 2xnHalfWindow Depth 1 such that the central pixel is the pivot element e Inpin 1 Input image to the closure allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GR EY_16
101. aph the window is being attached to the tab bar see figure 4 5 c Subgraphs can be distinguished from main graphs with the help of the corresponding symbol in the tab bar A main graph is marked with a gray rectangle subgraphs additionally contain a small dark rectangle in its center Is a subgraph already open it will be displayed by a yellow triangle in the subgraph node When you open the drop down menu of the Create Subgraph button you can choose Unfold Sub graph which will take the contents of the currently selected subgraph and paste it back into the main graph The connections in the main graph will be updated accordingly Afterwards the subgraph will be deleted 28 Graphical User Interface 4 1 Menu Bar FillHole Cub FillHole 1 BeucherGradient CutHill Sub Graph E E 4 CutHill 1 BeucherGradient JeucherGradient Sub Graph 1 a Graph without Subgraph b Graph with Subgraph Sub Graph 1 0 INPUT PORT O new Sub Graph 1 o c Subgraphs tab added d Subgraph representation Figure 4 5 Create a subgraph in ToolIP 4 1 16 Memory Information The bar chart provides information about the current memory usage of the graph A limit can be specified at what load an automatic deletion of unnecessary data will be performed 4 1 17 Timing On Off CTA A i e Sy Here a run time measurement of all nodes in the graph can be activated By default it is disab
102. arameter upcast You can even use the parameter output of another subgraph to be the parameter input of your subgraph see figure 5 12 5 1 5 Node Label By double clicking on the node label below the status field a window opens to set a new label for this node The text before the double lines indicates the label of the node In addition a text can be written behind these double 42 Nodes and Specifications 5 2 Linking Ports M New label Enter new label tooltip MultiTh 1 Figure 5 13 Nodes Changing name and tooltip lines This text will occur as tooltip by longer linger with the mouse over the node 5 1 5 1 Automatic Node Labeling Nodes will always be labeled automatically by the scheme NAME NUMBER where NAME corresponds to the plugin name and NUMBER is a continuous number which starts at for each ToolIP session If you reload a saved graph it is not guaranteed that all nodes will get the same label again since the labeling is dynamical But if you give the node a new label the automatic labeling is over ruled and the node will get the same label again Note Plugins like Load or ReadImage inform the user which image is currently loaded Therefore this infor mation is directly being displayed by the automatic node labeling This automatic node labeling is active as long as no user defined label is defined 5 1 6 Error Handling If a node could not be executed a warning appe
103. ark file Alternatively the parameter mark_file can be used to set the path e Outpin 1 Ouput image of type IMAGE_GREY_F with the same size as the input image With the parameter downsample the image size can be modified Parameters mark_file string Optional path to the mark file This parameter is only being used if no second input is pro vided By default it is set to NULL downsam downsampling rate for the output image ple long By default it is set to 1 148 Algorithm Documentation 8 15 Utility Plugins 8 15 21 Plugin PixelLabel Node to label every non zero pixel with a unique label Each non zero pixel is being labeled with its order of occurence in the image e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_GREY_F 8 15 22 Plugin Radon Node to compute the 2d Radon transform Computes the Radon transform of the input image The size of the output image is determined automatically e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F containing the Radon space Parameters run_flag bool INTERNAL Indicates whether the node already run before By default it is set to false mode string Determines how the line histogram is being computed There are two possibilities e RADON default e HOUGH For binary images significantly faster raw_out_ Defines the path to the output file the raw po
104. ars below the node It is a yellow triangle containing an exclama tion mark see figure 5 14 This might for instance be the case when there is a type mismatch between the data at the input pin and the input data settings of the plugin By clicking on the warning the error message will be displayed and the warning will disappear 5 2 Linking Ports In ToolIP two nodes are available which have a special task in transporting data into and out of a sub graph and have no other functionality These two nodes called Input Port and Output Port can be found under Generic 43 5 3 Data Flow Control Nodes and Specifications MultiTh Figure 5 14 Nodes error handling gt Port An example is shown in figure 5 15 ConvertType MultiTh OUTPUT PORI Figure 5 15 In and output ports By drag amp drop compatible plugins can be attached on top of be merged into a port This way the port acquires the functionality of the plugin Compatible plugins for input ports are Load ReadImage and ReadASCII whereas for output ports the compatible plugins are Display View SaveImage SaveASCII and ScatterPlot Plugins can only be attached to the ports on the top level graphs for subgraphs the attachment functionality is always disabled Ports do not have a label by default but they will get one as soon as a compatible node has been added Note In the demo mode the plugins Savelmage and SaveASCII are not available and can therefore not b
105. ate SUboraply e ee ew EA eae eee ede ee eS Memory Ao AMAR AMOS CARO 2 db AAA ark A E E AA A E OS 21 22 22 CONTENTS CONTENTS 119 Sale Mode lt lt evs eee SHA e ESS e we E AS 29 4 1 19 Reload Libraty s a osd eee ka e ER a ee A a wee 30 4 1 20 RAGBI Run A Graph on a Batch of Images or Items 30 42 RAGBI oi 640 na Ee PY ER ee Ee EOS eee ea aS 30 ALL SOUR ea OMAR AAA A E ba ae eh Ala Sw Ree a es 32 ELE UE iy fe laced oh te as ee a ow an RR A we ob hon A tao S 32 43 Plugin Mend coseno by a eS a A SE 34 44 Seateh for PINES e ee a A we eal aw ee a 34 A3 WOrKSPECG ospea ni cee ds FSR ERE do EE RO de d 35 4 5 1 Graph Parameters cs co a we soba a RS Re ES A we SE a 35 AG L s M O e a ERG EO a ee ee eh aa Ss Owe eee ee 35 5 Nodes and Specifications 37 SL PIES oee 54452 ewe eee EEE A Al A a eae Ee 37 Si rag ETE AA BO es ee SU ee we EO ew oe EA E 37 La Paramar is oe a a a a ee Soe Bale ae AS Boal gs 38 313 Ineand Ouipit Pins e eee eige he ea ae eA ee 41 S14 Parameter his andi Quipul cae era EO ee ee ee S 41 DLS Noge LAB a gS ee ea OS a ROR a a A eA gS 42 LLG o ANA 43 a2 Linkin Pare ocupas a A A OY EE ER A eo GS RA 43 323 Data PlowC nee cocida a e Bao es ae eS aL 44 Jal Repeat Nude e sacie ec et eS Sew ee Ghee SEES CS eA 44 A AA a ERA ee ee Eee oe A eS 44 339 Wietpe Made woogie eo eae aa ee ke a es 46 Jad Swith Node 2 ov i ce Bee eV A ee ea eee A SY Be bee eA we 47 6 Further Ex
106. ation we give a short overview over ToolIP with very simple image processing examples A more detailed description of all the functions provided by the program can be found in the following chapters All the graphs shown here come with the installation package and can be found in the installation directory which will be referred to as INST_DIR Please replace INST_DIR with your installation directory To relocate your installation directory please remember that the environment variable ITWMDIR points to it In the installation directory the graphs are contained within the subfolder INST_DIR examples graphs You can open the graphs and follow the descriptions given here step by step CE Ea DP BDDRDR 0 BQ SSO EH csomviron Search for Plugins ex O diffusion tp EJ Search a Display gt Data gt Plotview Display gt Data gt ScatterPlot Display gt Image gt Display Display gt Image gt View Generic gt Filter gt Convolve Generic gt Flow Control gt Branch Generic gt Flow Control gt Merge Generic gt Flow Control gt Switch Generic gt Port gt Input Port Generic gt Port gt Output Port Generic gt Utility gt TextSerializer Generic gt Utility gt TimerStart Generic gt Utility gt TimerStop Image gt Arithmetic gt Abs Image gt Arithmetic gt AbsDiff pd Plugins ax Disolav D Data gt Image Generic Filter Flow Control Port Utility Image Ar
107. bes mathematical reversible transformations betweent different bases special transfomations suitable for feature extraction as well as a few utilities that enable the handling of the resulting data Application examples are Hough and HoughCircle can be used to locate lines and circles in images respectively 58 Algorithm Documentation 8 3 Arithmetic Plugins e Wavelet transformations OrthoFWT and OrthoIWT are frequently applied in multi scale image process ing e Fourier transformations FFT are useful in spectral image analysis e g for texture analysis In contrast to most other modules in ToolIP these transformations operate not in the usual cartesian space S Note The toolbox Transformation does not have its own documentation section You can find the node Distance in Chapter Filter Plugins the node FFT in Chapter FFT Plugins the nodes Hough HoughCircle Radon in Chapter Utility Plugins the nodes ModulusMaxima MultiscaleWavelet OrthoFWT OrthoIWT in Chapter Wavelets Plugins 8 2 15 Utility The methods in this group can be described as auxiliary functions One of the most frequently used is Con vertType This plugin converts the input image into another format that can be used by the next plugin this is necessary as most of them require a specific image type input IMAGE_GREY_F is the most common one Some of them are characteristics that are calculated over the whole image in contrast to the featur
108. by the rotation The pixel value for those pixels that may not be filled by the rotated image can be set e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Second nput image of type IMAGE_GREY_F or IMAGE_GREY_8 used to compute the rotation angle e Outpin 1 Output image of the same type as the input image Note Currently only implemented for 2d images Parameters bg_ pixel value for those pixels that are not filled by the rotation By default it is set to 0 value double long resize bool defines whether the original image size is retained unchanged or the output image size is adjusted by the rotation By default it is set to false verbose bool print function feedback to log area By default it is set to false See Also Rotate implements a basic rotation 8 10 17 Plugin Replicate Replicates an image in a given direction Replicates an image in a given direction e Inpin 1 Input image of type IMAGE _GREY_F IMAGE GREY_8 IMAGE _GREY_16 or IMAGE_G REY_32 e Outpin 1 Output image of the same type as the input image 110 Algorithm Documentation 8 10 Manipulation Plugins Parameters along string This parameter can take the values X Y or Z It determines the direction in which the input image is replicated By default it is set to X count long This parameter specifies the number of replicas of the input image By default it is set to Z i e ou
109. ce e maximal gray value e minimal gray value e Inpin 1 First input image must be of type IMAGE_GREY_F 86 Algorithm Documentation 8 7 Features Plugins e Inpin 2 Optional second input label image If there is no second input image then the features will be computed for all pixels in the first input image 1 e the second output image will be the first image filled by ones e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 27 Plugin ThreePartsRelNbhHist Computes the histogram over a pixel neighborhood devided in three parts within each region e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information 8 7 28 Plugin TotalVariation Computes the total variation within all foreground labels Within all labels not equal to zero the total variation over the contained pixels is calculated The total variation is defined in the continuous case by fo Vf x 2dx or in the discrete case by E
110. ce of diffusivity function g function string e PeronaMalik e PeronaMalik2 e RegularisedTotalVariation e Charbonnier e Weickert By default it is set to PeronaMalik contrast_ Contrast parameter for diffusivity By default it is set to 1 0 parameter double time_step_ Time step size for discretisation By default it is set to 5 0 size double number_of_ Number of time steps to perform By default it is set to 2 steps long process_3d_ Choice for the processing in 3D image string e VOLUME apply a 3D diffusion e SLICES apply the 2d diffusion plane by plane By default it is set to VOLUME Literature e PM90 P Perona and J Malik Scale space and edge detection using anisotropic diffusion IEEE Transac tions on Pattern Analysis and Machine Intelligence 12 629 639 1990 e CLMC92 F CattVe P L Lions J M Morel and T Coll Image selective smoothing and edge detection by nonlinear diffusion SIAM Journal on Numerical Analysis 29 1 182 193 Feb 1992 e WHV98 J Weickert B M ter Haar Romeny and M A Viergever Efficient and reliable schemes for nonlinear diffusion filtering IEEE Transactions on Image Processing 7 3 398 410 March 1998 8 9 16 Plugin LBP Node to compute the local binary pattern of the input image 97 8 9 Filter Plugins Algorithm Documentation Computes the local binary pattern of the input image The reference pixel value in the middle of a circle is binary coded by the pixel
111. considered as connected to the center pixel can be set to be 4 or 8 by using the parameter neighborhood e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Ouput image of the same type as the input image or IMAGE_GREY_F if parameter upcast is true Note only available for 2d images Parameters neighbour neighborhood configuration being considered valid entries are 4 and 8 hood long By default it is set to 4 upcast bool Indicates whether the output image is cast to float By default it is set to false verbose bool print function feedback to log area 8 15 18 Plugin Mutuallnformation Node to compute the mutual information of a partitioning of the first input image The mutual information of a partitioning of the first input image is being computed The partitioning of the first input image is defined by the second input image e Part 1 the pixels in the first input image for which the second input image is non zero e Part 2 all remaining pixels i e with value zero in the second input image The function computes the mutual information of the two parts of the first input image i e a quantity that measures the mutual dependence of the two and prints the result to the screen This node does not modify image contents the input images are copied to the output images e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Input image must be of type IM
112. cted region in the y direction If offset_y lt 0 the offset is counted from the opposite side of the image By default it is set to 0 offset_z long starting point of the extracted region in the z direction If offset_z lt 0 the offset is counted from the opposite side of the imagd0B y default it is set to 0 Algorithm Documentation 8 10 Manipulation Plugins 8 10 8 Plugin Flip Flips an image in the specified directions Flips an image in the specified directions e Inpin 1 Input image of type IMAGE_GREY_F IMAGE _GREY_D IMAGE_GREY_8 IMAGE_GREY _16 or IMAGE_GREY_32 e Outpin 1 Output image of the same type as the input image Parameters flip_x bool flips the input image in x direction By default it is set to false flip_y bool flips the input image in y direction By default it is set to false flip_z bool flips the input image in z direction By default it is set to false 8 10 9 Plugin LabelToColor Node to change labels to a user defined color map Changes each label in the first input image into the corresponding color in an optional user defined color map image The second color map image should contain at least as many color values as the first image has labels If the color map image is omitted a standard color map with six repeating basic colors is used The parameter ignore_zero specifies whether zeros are taken into account or are ignored If the map i
113. current graph For the first input the number 1 will be replaced by the first output filename see figure 4 2 b if d appears in the output and the box on 8 is unchecked no images from a previous run will be overwritten The same will be done for the second input number 2 will be replaced in the output filename see figure 4 2 d This applies for all inputs Generic gt Utility gt RunGraph Itput Output Graph Psrameicrs Graph CURRENT TLF MAP 1 Inp t 2 Inp t RunGraph_images1 jpg RunGraph_images2 jpg RunGraph_images3 jpg Y Inreadzd cxecution T ResutDirectary mp Resut pattern i1_ ad y Rep ace existing outputs Pxecution finishes cload U zph c RABGI for two input tabs 4 2 1 Settings Run llep O cose 8 Generic gt Utility gt RunGraph Inpet Output Grazh 2aranelers 1 Output 2 Culzul RunGraph_images1_ 2 pgm RunGraph_images2_2 pgm RunGraph_images3_ 2 pgm Execut on finished Reload Giap 2 0 Help Q Close d RAGBI output for two input tabs g If you click on the gear button a dialog box will pop up allowing you to change the global ToolIP SP settings Here you can set for instance how ToolIP saves plugin paths and how the node dialog box OF is arranged The settings window is shown in figure 4 7 4 2 2 About o am I Opens an extra window showing information about the running ToolIP version Graphical
114. d Show details Nullsoft Install System v2 46 Figure 2 6 ToolIP installer Installation complete lax TRA 6 7 aam E REA TIT 0 mal 7 OS la pr IZ 15858 os ae res e EEE aas ma ma eja Y Ready Figure 2 7 The main window of ToolIP after the first start 2 3 2 Demo Version If ToolIP is started without dongle or license file the software will work in demo mode This is indicated with the message shown in figure 2 8 Note The demo mode comes with the following restrictions e All input images larger than 256x256x8 pixels are cropped to those respective size in each coordinate direc tion This is also the case for ToolIP s command line interpreter MAOIcmd e The save option for images is not available e The safe mode does not work in the demo version It is mainly useful for users interested in writing their own plugins for ToolIP since in this mode each plugin is started in a separate process If a plugin crashes the application will continue working This makes debugging of new plugins much easier If you want to purchase a full version please contact the ToolIP mailing address 18 Installation 2 3 Starting ToolIP ToolIP Demo Figure 2 8 ToolIP will start in demo mode toolip itwm fraunhofer de for further information 19 2 3 Starting ToolIP Installation 20 Chapter 3 Overview After having finished the install
115. de Already executed nodes have a green connecting line those which have not yet been processed a black one When you open the drop down box of the Start Graph button you can select Infinite execution which will perform an infinite execution of the graph A reset is performed automatically after your graph finished execution 4 1 8 Stop the Graph During execution the button turns red You can always stop the execution process by pressing the a Stop Graph button 4 1 9 Execute Consecutively Enable this feature for single nodes by right clicking on the green field This menu bar icon enables by the automatic execution I e if an algorithm is started all consecutive nodes marked with this flash will be executed automatically as soon as the input data is available This mode can be enabled and disabled at any time 4 1 10 Undo The symbol Undo undoes the last action see figure 4 3 Shortcut St rg Z Readimage Readimage Readimage 1 Figure 4 3 Resetting the action connecting nodes 4 1 11 Redo Redo revokes the treatment Undo Has an action been undone the user can get this action back with Redo Shortcut Strg R Readimage Readimage Readimage Readimage 1 Readimage 1 Figure 4 4 Previously undo action withdrawn 27 4 1 Menu Bar Graphical User Interface Note The undo button is only available for the following actions e adding deleting a node an edge changing node position e
116. de over a given threshold are found The direction of the gradient and the coordinates are kept in a list For every pixel the gradient directions stored in the list are compared with the actual gradient direction e Inpin 1 Image to search in Must be of type IMAGE_GREY_FE Mandatory input e Inpin 2 Template image Must be of type IMAGE_GREY_F Mandatory input e Inpin 3 Optional mask image Must be of type IMAGE_GREY_F e Outpin 1 Output image has same size and type as first input image Parameters threshold threshold parameter for the gradient amplitude By default 1t is set to 300 actually the thresh old is compared to the gradient amplitude squared and not the gradient amplitude sp_ product threshold scalar product of normalized gradients in template and input image must threshold scalar exceed this threshold for the point to be counted as match by default it is set to 0 5 which corresponds to angles smaller then 60 verbose if selected the number of considered data points i e with gradient gt m_threshold are printed to stdout By default it is set to false parallelization This parameter is of type string e PARALLELIZATION WITH TBB In the case of multi core processor it computes parallel e NO PARALLELIZATION Compute without parallelization By default it is set to NO PARALLELIZATION 8 11 2 Plugin Fsdh Find shape by displacement histogram class to enhance binary pa
117. de to calculate the structure tensor of a 2D image This node calculates the structure tensor Foerstern and Guelch 1987 for a 2d image For an image f the structure tensor is defined as Jp Vu Kp VuVu with a Gaussian kernel Kp of standard deviation p and the pre smoothed version u Kg f of the input image Since the structure tensor is a symmetric 2x2 matrix it is sufficient to return three images containing the three upper diagonal components component st11 st12 and st22 e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Component st11 of the structure tensor of type IMAGE_GREY_F e Outpin 2 Component st12 of the structure tensor of type IMAGE_GREY_F e Outpin 3 Component st22 of the structure tensor of type IMAGE_GREY_F Parameters noise_scale_ Sets the standard deviation for Gaussian pre smoothing kernel sigma double difference_ Defines the derivative approximation scheme By default it is set to SOBEL scheme string integration_ Sets the standard deviation for Gaussian post smoothing kernel scale_ rho double convolution_ Cutoff precision for Gaussian kernels precision double See Also StructureTensorEVD2D 8 9 25 Plugin StructureTensorEVD2D Node to calculate the eigenvector decomposition of the structure tensor of an image Computes the eigenvector decomposition of a structure tensor of a 2D image Useful to detect directions The output images contain the rota
118. de to compute the square root operation of the input image pixel wise This node performs the C sqrt function on the input image pixel wise e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type and size as input image Note Negative input pixel values cause the resulting value to be NaN not a number Parameters upcast bool Indicates whether the output image is cast to float By default it is set to false 65 8 5 Color Plugins Algorithm Documentation 8 3 16 Plugin Subtract Node to pixel wise subtract one image from another or to subtract a scalar from the input image or the input image from a scalar If two input images are given the second one is subtracted from the first one pixel wise If only one input image is given the difference between the pixel values and the given scalar is computed e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY_F In case of two input images the size of the output image is the minimum of the respective input image sizes Parameters order bool If only one input image is given the result will be the pixel wise difference between the pixel values and the scalar parameter subtract If order equals 0 re
119. do filter bool If the Roberts cross filter in BOTH directions is needed one can approximate it by abs 1 j i 1 j 1 abs it 1 j G j 1 This so called Roberts cross pseudo filter is applied when this parameter is set to true In this case direction is automatically being used as BOTH By default it is set to false 8 9 23 Plugin Sobel Node to perform the Sobel filter on the input image Performs the Sobel filter for edge detection on the input image The Sobel filter performs a 2D spatial gradient computation on the input image and thus emphasizes regions of high spatial frequency that correspond to edges It is used to find the approximate absolute gradient magnitude at each point in the input image e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE GREY_F 100 Algorithm Documentation 8 9 Filter Plugins Parameters direction string Defines in which direction the filter operation is performed e X Along the x axis e Y Along the y axis e BOTH The output is the sum of the absolute values of the filter results along both axes e DIAG_POS Direction of filtering corresponds to a line with slope 1 e DIAG_NEG Direction of filtering corresponds to a line with slope 1 e DIAG_BOTH The output is the sum of the absolute values of the filter results in both diagonal directions By default it is set to BOTH 8 9 24 Plugin StructureTensor2D No
120. e This plugin is not available in the demo version Parameters ascii Name of the output file Filename string If it is set to STDOUT the data will be written to the console and can be seen in the message window in ToolIP By default it is set to NULL append bool defines whether an already existing output file is overwritten false or the new data is ap pended true By default it is set to false text string Optional comment to be written into the file By default it is set to See Also SAvelmage to save data to an image file format ReadASCII to read data from an ASCII file 8 15 33 Plugin Savelmage Node to save an image to an image data file The input image data is written to an image data file format Input format and image format must match Example for float images e apply the Normalize plugin Interval 0 1 and save as tiff IO or 102 e convert to 8 bit RGB or grey and save as png only 102 or respective formats Note that normalization might be needed before conversion e Inpin 1 input image data Parameters filename string Full path to the output file containing the image data including the image type extensiuon By default it is set to NULL IO IO2 string determines which routine is used See above comments for examples 153 8 15 Utility Plugins Algorithm Documentation Note This plugin is not available in the demo ver
121. e attached to an output port 5 3 Data Flow Control In ToolIP four nodes are implemented which allow you to control data flow within a graph Repeat Branch Merge and Switch These flow control nodes can be found under Generic gt Flow Control 5 3 1 Repeat Node The Repeat Node enables the user to include a loop in an algorithm subgraph that is the equivalent to a for loop in programming languages It has one input The complete subgraph containing the repeat node will be looped As with any loop in programming the user has to specify an increment in the subgraph and provide a loop condition when the repeat node should stop iterating At the parameter field of the repeat node under the tab Port Mappings the user has to specify which output should be mapped onto which input for the next iteration To understand how the Repeat Node is used it is recommended to open the example graph INST_DIR examples graphs RepeatRotatelena tlp the usage is also shown with additional hints at the key points in figure 5 17 5 3 2 Branch Node The branch node allows you to branch out your data flow given some boolean condition It has two inputs one for the incoming data i e the image and one for the branch condition Depending on the condition it will either 44 Nodes and Specifications 5 3 Data Flow Control Repeat till lt 180 Figure 5 16 Data flow Repeat O Input Port O Output Port 1 Input Port 1 Output
122. e O RS amp Se ees 75 S12 E AIN 75 ca A eh ee ee ee bse oe eS 76 67A A A REN 76 5 2 2 Plugin AverapePolar lt osco cocca deu ee ee eee ae ee ee eo 76 7 0 Pliem BMNODENSt cos ca oo Sa e a we eg as 77 8 7 7 Plugin BinNbhHistPlusXYEntropy 2 200 002 0 0000 77 She Plugin Bordet oe e opa meri RRS ae ae he RR ee Bhs TI S79 PUB COYDML esee rake aope e A R E E A E ies 78 S210 Pl ERMOPF oee A a a A A A ee eS 78 67 1 Plugin PromEsph os ac don eS eR RS a ER eS Pe OR EO eS 78 S212 a o E eS Be ee eS 79 3 7 13 Plugin Hataliek e o ooe ope o a ture nas rar a ke SS 80 8 7 14 Plugin HoughEntopY t lt cesa cetro kemit Ree eee ee be ee 81 S119 Pluan LBRERS os aw aR ae Pe QS e SR E 82 S216 Pugin Mea o coca ee Se bee A eae Sea hee 82 a e a A awed ewe bee SRS ome es as 82 S718 Plugm Rednk ART 83 S l9 a kee ee See is BAS eee W BAe eye Ee ee he aed 83 S720 Plc ROCs Yar oc a ri GR hae a A E a RB ee es 84 6 7 21 Plugin Rough s ec c oee a eR a a ea be eS 84 8 7 22 Plugin SDistMedianqDiL o no ee o a 84 6 7 23 Plugin SdistAve Var 6 wk cera we ee wa eee ee ea oe ee ee 85 Bote Puen SMI oe eo ep Be es BR he Ae eG ee EL SD ae BY Sais 85 6 7 2 Phea SEIYA o ne ee eR Se RE hE SS RS 86 S720 ai sob 42 hb ew ee ehhh ee ee et be ob eS 86 8 227 Plugin ThreePartsRelNDHERE lt o oe eeta ee ee A ee SEE A ees 87 6 7 26 Plugin TotalVariation oeo co ewe ee ea a E ee eo 87 38 127 PCM VSIOpS siose g a BARE ee ace we ee io 87 87 30 Pugin XVEDIOPY oa ss A a 88 8
123. e green 5 1 4 Parameter In and Output Figure 5 9 Parameter In and Output It is possible to define the value of a parameter as the result of another node When lingering the cursor over the bottom of a node a small gray triangle appears After clicking on this triangle the parameter input menu pops out as shown in figure 5 9 Here an output and an input pin is defined for every parameter It is therefore possible to connect the output pin of another node with the input pin of a parameter The parameter will then be set to the resulting value of the previous node An example for this use of the parameter pins is shown in figure 5 10 41 5 1 Plugins Nodes and Specifications Figure 5 10 Example graph for the use of the parameter inputs Parameters of subgraphs can also receive input or return output By clicking on the gray triangle on the bottom of the node of a subgraph a parameter input menu pops out which is similar to the one of plugins Since the parameters of nodes inside a plugin can be added as subgraph parameters as shown in section 5 1 2 the parameter in and output of subgraphs allows you to define parameters inside a subgraph to be dependent on a node outside the subgraph Figure 5 11 shows an example in which the value of a parameter of a Node inside the subgraph is the output of a node in the main graph Sub Graph Y Sub Graph 2 Value Value 1 Figure 5 11 Output of node Value determines subgraph p
124. e input image sizes Note Values enclosed in quotes are always treated as strings 64 Algorithm Documentation 8 3 Arithmetic Plugins Parameters expres sion string Specifies what calculations are applied on the input data Reverse polish notation syntax is used so 2 2 3 x signifies 2 2 3 By default expression is set to iJ The following operations and special tokens are supported il first input image i2 second input image x X pixel coordinate first image y y pixel coordinate first image z Z pixel coordinate first image w width first image h height first image d depth first image cp copy top entry rm remove top entry x min max add subtract multiply divide modulo minimum maximum gt greater than lt less than equal l not equal sqrt or SQRT square root abs or ABS the absolute value LOG EXP SIN ASIN COS ACOS TAN ATAN SINH COSH TANH ASINH ACO SH ATANH math unary functions ATAN2 POW math binary functions Numerical constants like 1 0 127 Numerical parameters by their names Single input output image graphs xml and tlp by their path Graph parameters can be specified by giving the key followed by and followed by the value example angle 17 0 If the parameter value contains spaces it must be enclosed in single quotes image name of image jpg 8 3 15 Plugin SquareRoot No
125. e loaded they are also displayed in the plugin menu The currently loaded set of libraries and graphs can be saved by right clicking and choosing Save Configuration Also graphs can be added to the plugin menu This is especially helpful for the design of re usable modules They will also be available in the plugin menu and shown each time ToolIP is started Removing a plugin is possible by right clicking on the appropriate plugin and selecting Remove Item It is possi ble to delete both sub slider and individual plugins Reloading of libraries is done by right clicking on a plugin and the selection Reload Library The user can see and change the properties of a plugin by right clicking and selection of Properties Another right click function of the plugin is to reset the parameters of the plugin If the cursor lingers over a plugin the tooltip will be displayed Some details about the plugin the corresponding group the library name data input and output as well as parameters are shown The plugin menu can be solved repositioned or closed by the corresponding symbols at the top right corner of the ToolIP user interface The plugin libraries are sorted by tabs By selecting the relevant library the plugin of interest can be moved into the workspace by Drag amp Drop Now the plugin can be attached to a graph 4 4 Search for Plugins There is a search function for plugins at the top of the plugin menu The search is equipped with a auto comple
126. e plugin group such as Statistics Histogram 1 and 2D MutualInformation and more Others introduce or change the content of the image such as Normalize Projection PaintMarks and so on 8 3 Arithmetic Plugins 8 3 1 Plugin Abs Node to compute the absolute value of the input image pixel wise Computes the absolute value of the input image pixel wise e Inpin 1 Input image of types IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type and size as the input image 8 3 2 Plugin AbsDiff Node to compute the absolute value of the pixel wise difference of two images Computes the absolute value of the pixel wise difference of two images Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input images For mixed input image types or with upcast true the output type is IMAGE_GREY_F The size of the output image is the minimum of the respective input image sizes Parameters upcast bool Indicates whether the output image is cast to float By default it is set to false 59 8 3 Arithmetic Plugins Algorithm Documentation 8 3 3 Plugin Add Node to add images pixel wise or a constant to an image Adds two images or adds a constant of type double to a given image e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second inp
127. e separated in z direction by two empty lines with length 0 Note In the demo version the image size is restricted to 256x256x8 pixels If the file contains a larger image only the cube of size 256x256x8 in the upper left corner is read e Outpin 1 3d ouput image of type IMAGE _GREY_F Parameters filename string file name containing the ASCII data By default it is set to NULL separa Character used as a separator Supported characters are WHITE SPACE AUTO COMMA tor string and The option AUTO tries to find the separator automatically By default it is set to WHITE SPACE run_flag bool INTERNAL Indicates whether the node already run before By default it is set to false verbose bool print function feedback to log area See Also ReadImage to read data from an image file Save ASCII to save data into an ASCII file 8 15 26 Plugin Readlmage Node to read an image from a file Reads an image from a file and writes it into the output image Output image size and type are determined automatically from the data to be read Note In the demo version the size of the images is restricted to 256x256x8 If the input file contains a larger image only the cube of size 256x256x8 in the upper left corner is read e Outpin 1 Output image size and type are determined from the given input file Parameters filename string Name of the file containing the image data By defa
128. eCURAMe over AA 113 10 23 Plugin Senalize coso a ee ee ee 113 S 10 24 Plc SITE kok eka a gas Bo AS A ee ae we eS als 114 510 25 Plugin Splt o o ce eA A EA ee 114 8 10 26 Plugin SWICDAXES 2 2 6 beck RR ee ee eS 115 6 10 77 Plugin Translate lt lt kk ek eee CA Re ee e oe eee oe A we eee 115 S128 Plugin Volume ToFlane so ose tb a Eee we ew See Hae ae See eet 115 Niatchie PUBIS 2 ns cee a eR Se a ee PS Ee ae RS 116 S11 Plugin FindShape 3 sr ee a we ew eee eS e e oe ad 116 8112 Pluembsdl espai a eke es el a ee a bee E Be Sy S des 116 811 3 Plugin Mati o e 60s RA EME ER we ee Ree eae bee 117 8 11 4 Plugin Translate Add kk eR Re ee Se E a 118 Matix PIMGINS ooo oa oa EA ee Aa be hea eS eR EES 118 812 Plugin BONDOTRRIOS 2 52 5 204 a bet eb be ome es oS 118 e122 Plugin Cova Mak canes ce oe AE Ea Ge ee a 118 8 12 5 Pugo DADO bogs 2 5 ee ie BSS ee eS OA a YS Ee Bw he eed 119 S12 Pie oe ak a as a Ba a Oe SR BP ees 119 S123 Plugin Peatreimage A ee ee de ee eS 119 8 12 6 Plugin GaussianMixture 2 2 ee ee 120 S127 PIIGMICS essa Awe ee ee thee ee eal e Se ee ee 120 Poles it A HE ees BA eee ee oe Oe ae EE wae 121 129 Plugin KIMEROS 2 co ee ek eR EE RR Se ORE RS 121 817 10 Plugin MDP eiio a ea ee eee et be ote eS 122 BIZ PIS ROCA ee AG SOE EER A Re eee A ee SS A ee 122 S12 PRIOR cta a ee ee bala oe ee eo 122 S12 I3 PUAN RAN SAC 2 0058 a aR ARS BAR a e ae aa aha 122 8 12 14 Plugin RANSACWithModellOut 2 2 ee eee 123 8 1
129. e_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 Note Since an averaging is involved the input type restriction to IMAGE _GREY_F is required 130 Algorithm Documentation 8 13 Morphology Plugins 8 13 11 Plugin Minimum Class to perform the Minimum filter on the input image Performs the Minimum filter on the input image The Minimum filter checks which pixel value inside the filter window is the minimum and sets the output pixel values accordingly The size of the filter window can be set arbitrarily e Inpin 1 Input image must be of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Minimum filtered image Parameters half_ This parameter determines half of the width of the filter window It will be casted to long By windowsize_x default it is set to 2 half_ This parameter determines half of the height of the filter window It will be casted to long windowsize_y By default it is set to 2 8 13 12 Plugin MorphologicalLaplacian Morphological Laplacian with a rectangular structuring element where the pivot pixel is in the center The morphological Laplacian
130. edback to log area By default it is set to false x Position long Adapt the x starting position y Position long Adapt the y starting position 8 7 4 Plugin AveragePhi Computes the average over n equally sized circular sections n pieces of a cake e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of sections number of columns e Outpin 2 Value vector with the same information Parameters pieces long Number of equally sized circular sections verbose bool Prints function feedback to log area By default it is set to false 8 7 5 Plugin AveragePolar Calculates the average over n polar sections m angles and p radii e Inpin 1 First input image must be of type IMAGE_GREY_F 76 Algorithm Documentation 8 7 Features Plugins e Inpin 2 Second Input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters angles long Radius of the resulting pieces pieces long Number of angular sections pieces in a cake 8 7 6 Plugin BinNbhHist Node to compute the binary 2x2 configurat
131. er settings are explained The latter two sections describe special nodes available for input and output handling of graphs as well as for data flow control 5 1 Plugins Plugin name Parameter field Input pin Output pin Status field Node label Figure 5 1 ToolIP Example of a plugin node A plugin node consists of the elements Plugin name Status field Parameter field Node label and data in and output pin These elements are described in more detail in the following subsections 5 1 1 Status field By clicking on the green status field the selected plugin node will be processed If the node is currently running the status field turns red and the node label changes into running Since most plugins process very fast this change of label is usually not visible Processing errors are displayed by a warning Further details on errors can be found in subsection 5 1 6 With a single right click on the green status box a bolt appears inside the status field This status corresponds to a consecutive processing of the plugin As soon as the previous plugin node finished running the following nodes marked with the lightning symbol are executed automatically By an other two time right click the automatic processing function is disabled again This functionality is also available as the tool bar action Execute consecutively and will in this case act as a general circuit for the whole graph By two time right click on the green stat
132. ers them suitable to create highly adaptive and robust graphs 8 2 10 Matching Matching or registration is the process of transforming the given data into one common coordinate system This is usually necessary to allow comparison of image data acquired in different coordinate systems at different times 57 8 2 Toolbox Introductions Algorithm Documentation or using different imaging techniques It can also be used to detect known objects in an image or for motion estimation 8 2 11 Matrix Images can be interpreted as matrices where each pixel value corresponds to a matrix entry value in a natural way Image characteristics can be extracted in form of features and stored as an image This allows to apply linear algebra methods to process and analyse features extracted from an image without the need of an additional external library The matrix module provides many standard linear algebra operations e g Multiply SVD Eigenvalues that can be combined to realize more complex algorithms e g Spectral Clustering Kernel PCA 8 2 12 Morphology Mathematical morphology encompasses a range of non linear filter operations with respect to a filter mask which is called structuring element within this context In morphology the maximum and minimum filters correspond to the so called Dilation and Erosion operators respectively The resulting functions can be used to correct im age artifacts to reconstruct image structures lost duri
133. es for each pixel in the input image the average value along a given line segment The length of the filter line and its angle can be set by using the parameters radius and angle e Inpin 1 First input image of type IMAGE GREY_F e Inpin 2 Optional second input image of type IMAGE_GREY_F Sets the angle of the filter for each pixel individually e Inpin 3 Optional third input image of type IMAGE GREY_F Sets the half of the length of the line segment for each pixel individually e Outpin 1 Output image of type IMAGE _GREY_F Note In case of 3D image data the input image will be processed plane by plane 89 8 9 Filter Plugins Algorithm Documentation Parameters radius long Determines the half of the length of the filter line segment along which the average will be computed Can also be specified by the third input image In this case half of length of the filter will be read from the third input image By default it is set to 10 angle long Determines the angle of the filter line segment along which the average will be computed in degrees from 0 to 360 Can be set by the second input image By default it is set to 0 mode string STANDARD ANGLEDATA 8 9 2 Plugin Average3d Node to perform a 3D averaging filter Performs a 3D averaging on the input image The three dimensions of the filter cube can be set separately e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1
134. every iteration a random sample from the given data is selected this is used as the first input of the graph The second input is the given data The graph should use the data at first input to estimate parameters of the model and then evaluate the model for the data given at the second input A model can be any function of the data points returning scalar values The values should be small close to zero for points satisfying better the model and large otherwise the best sample is stored and determines the final best model the output image consists of one column nonzero entries identify data points satisfying the best model estimated e Inpin 1 Data Points to be fitted to the modell vector of width according to modell needs M and length N i e MxN IMAGE_GREY_F e Outpin 1 Output vector of length 1 XN with entries O and 1 depending if the respective points are inliers 1 of the modell or not 0 e Outpin 2 Winning modell output in the form defined by the subgraph Parameters 123 8 12 Matrix Plugins Algorithm Documentation graph Specifies the path to the graph that implements the model This graph must take two images as input The first image contains the sample data points These data will be used to estimate the model The second image contains all data points they will be used to check the validity of the model The lower the absolute value of the validity check the better the match The first output has size 1XN i
135. f the pixel is unequal to 0 e AMPLITUDE the amplitude of each pixel is computed If it exceeds the limit the cone will be drawn e GRADIENT the gradient of each pixel is computed If it is higher than the limit the cone will be drawn See Also Hough to perform the standard or inverse Hough transform FindMax to create a list of local maxima 8 15 16 Plugin Imagelnfo Node to extract basic information from the input image Some basic information about the input image in being exported The two outputs contain the following information the first output contains a 1x3 image filled with the three dimensions width height and depth the secound output is a ValueMap with the same information as the first output plus the image type and if available the image path Inpin 1 Input image accepts all image types Outpin 1 Output image of type IMAGE_GREY_F containing the image dimensions Outpin 2 Output map of type ValueMap with keys type width height depth and if available image_path Parameters verbose bool print function feedback to log area 146 Algorithm Documentation 8 15 Utility Plugins 8 15 17 Plugin Labeling Node to label the connected components in the input image Each connected component in the input image is uniquely and consecutively being labeled The considered neigh borhood i e the number and configuration of the surrounding pixels
136. for extracting both small dark and bright structures The term small is meant with respect to the structuring element In this function the structuring element is a rectangle of size 2xnHalfWindowWidth 1 2xnHalfWindow Height 1 x 2xnHalfWindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Input image in which to detect dark and bright structures must be of type IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 IMAGE_GREY_F or IMAGE_GREY_D e Outpin 1 Resulting image Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 8 13 17 Plugin Thinning Class to perform the Thinning filter on the input image Performs the Thinning filter on the input image as defined at the following website http homepages inf ed ac uk rbf HIPR2 thin htm e Inpin 1 Input image must be of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Thinning filtered image 8 13 18 Plugin WhiteTopHat Node to perform the morphological white top hat on the input image extracts bright structures This function performs the morphological white top hat WTH f f foB i e the difference between the input image f and an opening The white top hat can serve for extracting sm
137. he modified attribute key value Note Changes only the attributes does not change the image buffer Parameters key string The attribute name to be added updated if key is empty and value is a map then the full attribute map is set value string The attribute s value See Also GetImageAttributes 8 15 37 Plugin Sleep Causes a user specified delay in the graph 155 8 15 Utility Plugins Algorithm Documentation This plugin enables the user to integrate a specific delay in the graph at a certain place The plugin following the Sleep plugin waits for the given time to execute e Inpin 1 No restriction w r t input type e Outpin 1 Copy of input Parameters time long The time how long the graph execution is delayed at this place unit string Unit of time Possible values Seconds milliseconds 8 15 38 Plugin Sort Node to sort rows in an image by a given column Sorts the rows of the input image in an ascending order according to the pixel values in the given column The row with the lowest value will be at the top and the row with the highest value at the bottom of the image e Inpin 1 input image of type IMAGE _GREY_8 or IMAGE_GREY_F e Outpin 1 output image of the same type and size as the input image Parameters column long specifies the column to be used to do the sorting By default it is set to 0 Note for 3d images the operat
138. iation structure_scale will be performed By default it is set to 2 0 integration_ If set to a value larger than 0 0 a post smoothing of the structure tensor with a Gaussian of scale double standard deviation integration_scale will be performed By default it is set to 5 0 cutoff_ Determines the cutoff precision for the convolution steps By default it is set to 3 0 precision double time_step_ Sets the time step for computing the dilation and erosion with the numerical method of Osher size double and Sethian For stability reasons the time step should be chosen not larger than 0 5 for 2D images and not larger than 0 33 for 3D images By default it is set to 0 33 number_of_ Sets the number of iterations for which the filter is performed By default it is set to 5 iterations long Literature e Weick2003 J Weickert Coherence enhancing shock filters In B Michaelis G Krell Eds Pattern Recognition Volume 2781 of Lecture Notes in Computer Science pp 1 8 2003 8 9 6 Plugin Canny Node to perform Canny filtering on the input image The Canny filtering performs several steps to come to a segmentation of the edges contained in the input image The aim is on the one hand not to disrupt connected edges and on the other hand to achieve thin edges ideally one pixel in width First a Sobel filtering is performed and from this information the orientation of the edges at each pixel is deter mined Secondly all those
139. ies one point The result is a column vector with extreme vertices marked with non zero values If two images are given points given by the first image and lying outside the convex hull of points given by the second image reference image are marked e Inpin 1 Input image of type IMAGE_GREY_F containing point reference coordinates e Inpin 2 Optional second input image of type IMAGE_GREY_F containing point test coordinates e Outpin 1 column vector with extreme vertices marked with non zero values Note Use manipulation SelectRays together with manipulation SwitchAxes ZYX to extract the corresponding rows from the input image Can be used to construct one class classifiers just compute the extreme vertices of the good examples features and use the two image mode to check if a new feature vector lies outside of this so constructed reference convex hull Parameters iteration Optional input parameter It must be a constant which will implicitly be cast to int By default it is set to 10 In the STD mode it determines the number of overall iterations and should be set much bigger more than 10 times then the number of input vertices In the SHH mode should be set to small value like 10 because then it specifies the iterations per vertex mode Specifies the method used to determine the extrema The default value is set to SHH sepa rating hyper plane which is normally faster and better The alternative STD mode standa
140. ill be applied 8 12 Matrix Plugins 8 12 1 Plugin BinNbhThFlow Node to compute the binary neighbourhood histograms for for all threshold values between 0 and 255 This node computes the histograms of binary configurations for all the images resulting by thresholding with values in the range 0 255 It can be used to follow the changes in the derived quantities like the Euler number specific length area volume as the binarization threshold changes the only supported neighbourhoods are 2x2 and 2x2x2 the binary configuration for the 2x2 neighbourhood is coded as 1 for 0 0 2 for 1 0 4 for 0 1 and 8 for 1 1 whre i j is the relative pixel position with respect to the reference pixel see below for some examples 0 1 1 0 111 gt 1 gt 3 gt 10 gt 700000110 the binary configuration for the 2x2x2 neighbourhood is coded for the first plane as the 2x2 configuration the bit pattern for the second plane is shifted by 4 bits e Inpin 1 Input image of type IMAGE_GREY_ 8 e Outpin 1 Output image of type IMAGE_GREY_F or IMAGE_GREY_32 and size 16x256 for 2d input or 256x256 for 3d input Parameters neighbour type of neighbourhood to compute the binary configuration histograms Valid types are 2x2 hood string 2d images and 2x2x2 3d images out_type string type of the output image Possible types are IMAGE_GREY_F default and IMAGE_GR EY_32 For large 3d images it should be set to IMAGE_GREY_32
141. included are the menu bar the workspace the plugin menu the search plugins and the log window In the following these individual elements of the graphical interface and its operation are presented in detail Custom Ui Plugins Display gt Data gt Plotview Display gt Data gt ScatterPlot a Display gt Image gt Display Sea rc h Display gt Image gt View Generic gt Filter gt Convolve P u g Ins Generic gt Flow Control gt Branch Generic gt Flow Control gt Merge Generic gt Flow Control gt Switch Generic gt Port gt Input Port Generic gt Port gt Output Port Generic ltilihs s TevtCerislizer Disolav Workspace Flow Control Port Log Safe Mode is now disabled File Timing deactivated Plugin Menu Log Messages Jox Ready Figure 4 1 Main window of ToolIP 4 1 Menu Bar At the top of the main window is the menu bar see figure 4 2 On the menu bar almost all important functions of ToolIP are available which are described below 25 4 1 Menu Bar Graphical User Interface DOBDXSDA 09 E BES 400 coromtirnsins Figure 4 2 Menu bar in ToolIP 4 1 1 New By clicking on the symbol New a new tab for displaying graphs opens A tab is u
142. ints in the line space distance angle will be path string written to Only active in the HOUGH mode By default it is set to NULL 8 15 23 Plugin RayMaximum Node to compute the maximum of every line in the z direction For all x y coordinates in a 3d input image the maximum of the corresponding ray i e line in z direction is computed e Inpin 1 3d input image of type IMAGE _GREY_F or IMAGE_GREY_8 e Outpin 1 2d output image of the same type width and height as the input image 8 15 24 Plugin RayMinimum Node to compute the minimum of every line in the z direction For all x y coordinates in a 3d input image the minimum of the corresponding ray i e line in z direction is computed e Inpin 1 3d input image of type IMAGE _GREY_F or IMAGE_GREY_8 e Outpin 1 2d output image of the same type width and height as the input image 149 8 15 Utility Plugins Algorithm Documentation 8 15 25 Plugin ReadASCll Node to read data from an ASCII file into the output 3D image Reads data from an ASCII file into the output image The pixel values have to be separated with a non numerical gt character The seperator must not be or e The output image size is determined automatically from the structure of the data in the file e Data in one line of the text file is stored in one row of the image e With the line separators the plugin determines the height of the image e The image has to b
143. ion histogram This plugin computes the binary 2x2 configuration histogram It can be useful to characterize binary texture data e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 7 Plugin BinNbhHistPlusXYEntropy Node to compute the binary 2x2 configuration histogram and a measure of the entropy of the 2d positions of the pixels Computes the binary 2x2 configuration histogram It can be useful to characterize binary texture data Computes a measure of the entropy of the 2D positions of the pixels obtained from the input image by thresholding above and below an automatically determined value It can be useful in characterizing random point distributions e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set t
144. ion is performed plane ba plane To keep track of the sorted rows you can first append an index column to the image by using PositionToValue and Append This index column can be used to perform the reverse sort on the rows to recover the initial state 8 15 39 Plugin Staticlmage Node to read from or write to an internal static float image This plugins allows writing to or reading from an internal static float image Since the internal image is static it is the same in all instances of the node and can be used as a kind of global variable throughout the application across different graphs e Inpin 1 input image of type IMAGE_GREY_F only being used in the WRITE mode e Outpin 1 output image of type IMAGE_GREY_F only being used in the READ mode Parameters mode string Defines whether to read or write the static image the possible values areWRITE and READ e WRITE the input image data is written to the internal static image The old internal image is overwritten with the new data No output is generated e READ default a copy of the internal static image is written to the output image If the internal image has not been written to before the result image will have size 0 0 0 No input image is being used 156 Algorithm Documentation 8 15 Utility Plugins See Also StaticStorage to read or write ValueMap data from to an internal map 8 15 40 Plugin StaticStorage Node to read from or write to an intern
145. is changed upcast bool Indicates whether the output image is cast to float By default it is set to false 8 3 13 Plugin Or Node to apply the logical OR operation on two images of the same size Applies the logical OR operation on two images of the same size and of type IMAGE_GREY_F or IMAGE_GR EY_8 If no second image is given the first image and an arbitrary value of the parameter or will be concatenated by OR By default or is set to 0 so the input image is not changed Note Input images must have the same size and must be of type IMAGE_GREY_F or IMAGE_GREY_8 Parameters or long sets the parameter to compute the bitwise OR with if no second image is given It will implicitly be cast to long By default or is set to 0 so the input image is not changed upcast bool Indicates whether the output image is cast to float By default it is set to false 8 3 14 Plugin RPNC Node applies a Reverse Polish Notation Calculation RPNC on the input image pixel wise Applies a Reverse Polish Notation Calculation RPNC on the input image pixel wise e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY F In case of two input images the size of the output image is the minimum of the respectiv
146. ise or to divide the input image by a scalar or a scalar by the input image values If two input images are given they are divided pixel wise If only one input image is given the input image is divided by the given scalar or vice versa e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY_F In case of two input images the size of the output image is the minimum of the respective input image sizes 60 Algorithm Documentation 8 3 Arithmetic Plugins Parameters order bool If only one input image is given the result will be the pixel wise quotient of the pixel values and the scalar parameter divide If order equals 0 result image scalar otherwise result scalar image By default it is set to 0 di This input parameter is only used if just one input image is given It must be a constant and vide double long the input image will be divided by it if parameter order equals 0 Otherwise the scalar divide is divided pixel wise by the image values It will implicitly be cast to double and is set to 1 0 by default upcast bool Indicates whether the output image is cast to float By default it is set to false divbyzeroiser Division by zero is treated as error If set to false a division by zero res
147. ithmetic Classification Color Data Filter Labellmage Low Level Vision Manipulation Matching GREY_F 256x256 176 0 20 255 20 255 GREY_F 256x256 32 254 25 2627 25 2627 Morpholoav Seamentation Transformation i Utilitv Safe Mode is now disabled In Qutout Timing deactivated File Loaded C ITWM doc examples diffusion tip PReadimage This is the demo version PReadImage The input image is restricted to the maximal size 256x256x8 default JO ww m it Figure 3 1 ToolIP with a minimalistic example graph 21 3 1 First Example Image Simplification Overview 3 1 First Example Image Simplification Let us start with a first example Figure 3 1 shows ToolIP with a minimalistic example graph performing nonlinear diffusion filtering on a gray value image of a bridge The graph for this example can be found here INST_DIR examples graphs Diffusion tlp Please replace INST_DIR with your installation directory During installation the environment variable 3 ITWMDIR has been set to name of the installation directory too Figure 3 2 Example for a ToolIP graph Simplification of a gray value image with nonlinear diffusion fil
148. iver for license checks with a USB dongle ist installed The driver installer opens an extra window similar to figure 2 4 Please press install to continue the installation If you have chosen to install the Microsoft Visual C Redistributable the setup wizard window for this software as shown in figure 2 5 is being opened Please follow the instructions accept the license terms and start the installation process As soon as this setup for the Microsoft Visual C Redistributable is completed click on finish Now the ToolIP installer should show the window in figure 2 6 By clicking the close button the installation process is completed and you can start ToolIP from the Windows start menu 2 2 Linux ToolIP can also be used under some Linux distributions So far there is no installer for those platforms available in the download section If you are interested in using ToolIP with Linux please contact us at toolip itwm fraunhofer de for further information 16 Installation 2 3 Starting ToolIP Ei Windows Security i xl Would you like to install this device software Name TDi GmbH Technodata Interware Publisher Thesycon Systemsoftware amp Consulting Gmb I Always trust software from Thesycon Systemsoftware _ Install f Consulting Gmb rea 14 You should only install driver software from publishers you trust How can I decide which device software is safe toinstall Figure 2 4 Installation of
149. k open context menu Ctrl eT activate time measurement left double click on item in workspace rename item 169 Shortcuts 170 Appendix B Credits for Third Party Libraries ToolIP uses a number of third party libraries each released under its individual license terms see below The copyright of these libraries remains with their original authors see below Note however that this does not affect the license terms of ToolIP itself in any way If you would like to obtain the source code of any of the open source libraries used within this software please contact Fraunhofer ITWM either by mail or e mail Please state specifically for which one of the open source third party libraries you require the source code and where it should be sent to Fraunhofer ITWM Markus Rauhut Fraunhofer Platz 1 67663 Kaiserslautern toolip itwm fraunhofer de The following open source third party libraries are used and their respective authors are acknowledged for their work Boost under the Boost software license http www boost org FreeImage under the FreeImage Public License v1 http freeimage sourceforge net Qt under the GNU Lesser General Public License v2 http qt project org zlib under the zlib license http zlib net Qwt under the Qwt license v1 http qwt sourceforge net Tesseract under the Apache license v2 https code google com p tesseract ocr Zbar under the GNU Lesser General Pub
150. k to log area By default it is set to false 8 7 12 Plugin Geometry Provides some features characterizing the geometry of regions in an image This node provides some features characterizing the geometry of the binary input image These features are Eccentricity Fragility Regression Area number of pixels Major axis length Minor axis length Orientation angle in rad Border Length See Geomet r y xample graph e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image Outpin 1 Output image of type IMAGE_GREY_F with n x 8 pixel where n is the number of labels number of rows e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 79 8 7 Features Plugins 8 7 13 Plugin Haralick Computes the gray level co occurence matrix and the resulting 2nd order statistics of an image This node calculates a vector of 2nd order statistics based on the gray level co occurence matrix M The matrix glem is defined as follows Element a is the number of times that a point with gray level i occurs in a position rel ative to a point with the gray level j according to the displacement d d Two modes of operation are supported Either an explicit displacement operator is given as a parameter or M is averaged over the 8 neighbourhood of the input
151. lated to classification can be found in the lassification section By using these nodes tasks such as the following ones are tackled 55 8 2 Toolbox Introductions Algorithm Documentation e semantic grouping of segments e assigning features vectors to predefined groups e detection of statistical outliers Next to typical classifiers like KMeans functions such as PCA or ICA for preprocessing of feature spaces can be found Note The toolbox Classification does not have its own documentation section You find the node ConvexHull in Chapter Utility Plugins and the nodes GaussianMixture ICA KMeans PCA and RANSAC in Chapter Matrix Plugins 8 2 3 Color Most algorithms available in ToolIP deal with gray scale images Yet for applications involving color images the nodes in this section provide basic tools to transform color images from and to gray scale data e Separate This node allows to extract single color channels R G B from a color image and outputs them as gray scale image either in 8 bit or float format e Combine This node allows to write three gray scale images into the RGB color channels of a color image e ColorTransform Converts an RGB color image into various other color formats such as HSV or YUV Other than the transformations themselves especially the node ColorTransform can be useful to identify a color representation which sometimes allows e g for more accurate segmentation 8 2 4 Dat
152. led In active mode single nodes can be deactivated by selection of the relevant nodes and the use of the access key St rg A The run time measurement for each node is shown below the parameter field in milliseconds Shortcut St rg T 4 1 18 Safe Mode ae te In Safe Mode each single node in the current graph is being executed in a separate process Note The Safe Mode is not available when using the demo version 29 4 2 RAGBI Graphical User Interface 4 1 19 Reload Library For Windows Pressing the button will open the Reload Library Dialog First unload all the libraries you want to recompile After unloading the libraries you can recompile and install them Before unloading you cannot install them since the files are in use by windows a file which is currently opened cannot be replaced After recompiling and installing the library you can close the dialog box and all the libraries which were unloaded will be reloaded For Linux This function reloads all the libraries of the currently selected nodes If no nodes are selected all nodes in the current workspace are used The Reload library button has a drop down menu where you can reload all available libraries 4 1 20 RAGBI Run A Graph on a Batch of Images or Items RAGBI is a tool to run the current graph successively on a set of images A click on the icon opens RAGBI in an new window It also can be found in the plugin menu at Generic gt Utilit
153. les the image around the center with given scale factors in all three directions The image size itself will not be changed An additional parameter defines the background value i e the value for those pixels not being filled by the scaled image e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of the same type and size as the input image Parameters scale_x double factor used for the scaling in x direction By default it is set to 1 0 scale_y double factor used for the scaling in y direction By default it is set to 1 0 scale_z double factor used for the scaling in z direction By default it is set to 1 0 bg_ background value for those pixels that are not being filled by the scaled image By default it value double long is set to 0 See Also Resize a scaled image resize Shrink resize by a factor 2 using a specified method to compute the output values 8 10 22 Plugin SelectRays Node to select image data from an input image by using a label image selects image data from an input image by using a label image A one dimensional image subsection in z direction is called a ray The selection of rays from the first input image is defined by the label image Only image rays from the first input image corresponding to non zero positions of the label image are taken into account The output image contains these rays arranged in the y direction i e the outpu
154. lic License v2 http zbar sourceforge net FreeType under The FreeType Project License http git savannah gnu org cgit freetype freetype2 git tree docs FTL TXT For the original terms and conditions of each of these libraries please read the contents of the file SITWMDIR share license thirdparty txt 171 Index About 32 Action Redo 27 Undo 27 Arithmetic Plugins 59 Auto Layout 28 Barcode Plugins 66 Color Plugins 66 Custom Ui Plugins 30 Data Plugins 68 Display Plugins 164 Fast Fourier Transform Plugins 89 Features Plugins 75 Filter Plugins 89 Graph Create Subgraph 28 Execute consecutively 27 Reset 26 run once 27 Save 26 Save as 26 Start 27 Stop 27 Log window 35 Manipulation Plugins 103 Matching Plugins 116 Matrix Plugins 118 Memory information 29 Menu bar 25 Morphology Plugins 125 Nodes 37 38 comments 38 parameter 38 window 38 Run 41 XML 38 ban 37 bolt 37 Description 38 Parameter configuration 38 field 38 Status field 37 Open File 26 Tab 26 Plot Plugins 166 Plugin menu 34 Search 34 Reload Library 30 Running a graph on multiple images 30 Safe Mode 29 Search 28 Segmentation Plugins 135 Settings 32 shortcuts 169 Tab Close 26 New 26 Timing 29 Utility Plugins 138 Wavelets Plugins 161 Workspace 35 Zoom 28 172
155. lt it is set to 0 001 tg_mue double Threshold for Gauss filter By default it is set to 0 01 CG Parameters for conjugate gradient solver cg_steps long Number of iterations By default it is set to 50 cg_eps double Accuracy of computation By default it is set to 0 0001 8 9 11 Plugin Distance Node to perform the euclidian distance transformation on the input image Performs the euclidian distance transformation on the input image by using either the STD or the VORONOI method e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Note Currently the VORONOI mode works only for 2D images Parameters mode string Defines the algorithm to be used for computing the distance transformation Possible values are STD and VORONOT For images containing only very few non zero pixels the VORONOI version is significantly faster than the STD version By default 1t is set to STD 8 9 12 Plugin FourConnected Node to produce an image whose components are four connected Produces an image whose components are four connected It can be useful before performing a labeling operation which assumes four connectivity In case of a 3D input image the input image will be processed plane by plane e Inpin 1 Input image of type IMAGE_GREY_F 95 8 9 Filter Plugins Algorithm Documentation e Outpin 1 Output image of type IMAGE_GREY
156. ly one input image is given this is the scalar value to compare with By default it is set mum double to 255 0 62 Algorithm Documentation 8 3 Arithmetic Plugins 8 3 10 Plugin Modulus Node to compute the C mod fmod operation pixel wise on two images or on the pixel values of an input image and a scalar If two input images are given the pixel wise modulus operation will be performed imagel mod image2 If no second input image is given the modulus is calculated on the input image with the value of the parameter modulo as second argument e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 and same size as first input image e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY_F Parameters modulo Value to perform the pixel wise modulus operation with if only one image is given It will be cast to long By default it is set to 1 0 upcast bool Indicates whether the output image is cast to float By default it is set to false 8 3 11 Plugin Multiply Node to multiply two images pixel wise or an image and a scalar value Multiplies two images pixel wise or an image and a scalar value If two input images are given the product of these two will be computed pixel wise If no second image is given the image is multiplied pixel wise
157. mage is a color image every pixel specifies one color otherwise every consecutive three pixels specify the color as an RGB triple e Inpin 1 Input label image of type IMAGE_GREY_F IMAGE _GREY_8 e Inpin 2 Optional color map image of type IMAGE_GREY_F IMAGE_GREY_8 or IMAGE_RGB_ 8 e Outpin 1 Output label image of type IMAGE_RGB_8 Parameters ignore_ defines whether zeros in the label image are ignored i e the corresponding output pixel is set zero bool to zero or not By default it is set to false See Also LabelToValue the corresponding gray value mapping 8 10 10 Plugin LabelToFeature Node to map labels of the input image to computed feature values Maps the labels of the label image to feature values computed on the labeled regions of the input image If the label image is omitted the input image will be used as label image too The feature computation is defined by the string feature_plugin and the feature_index Note Attention plugin is deprecated and included for backwards compatibility reasons Works only with vintage feature plugins The functionality now can be created by directly using feature plugins and LabelToValue e Inpin 1 Input image of type IMAGE_GREY_F 107 8 10 Manipulation Plugins Algorithm Documentation e Inpin 2 Optional label image of type IMAGE_GREY_F e Outpin 1 Label image of type IMAGE_GREY_F containing the feature value as label Note Currently
158. mages i n stands for input filename of the nth file i e il is replaced by the first input filename 12 by the second input filename and so on d is replaced by a Output index starting from 1 7 Output image file format pxm png jpg tif iass 8 If d appears in the output and this box is unchecked no images from a previous run will be overwritten 9 Start Stop graph execution Note If your output image is not IMAGE _GREY_8 RABGIT tries to save the result image in tif format i e your specified output format 7 will be ignored 31 4 2 RAGBI Graphical User Interface a RunGraph for one input tab Generic gt Utility gt RunGraph TOT ES Input Output Graph Parameters Graph CURRENT TLP MAP a 1 Input RunGraph_images_1 jpg RunGraph_images_2 jpg RunGraph_images_3 jpg aS x P v Threaded execution 0 a Result Directory tmp en Result pattern i1_ d pm v v Replace existing outputs Run J Heip _ Reload Graph Close 9 Generic gt Utility gt RunGraph Input Output Graph Parameters 1 Output RunGraph_images1_1 pgm RunGraph_images2_1 pgm RunGraph_images3_1 pgm Execution finished Reload Graph Run Heip Close b RunGraph output for one input tab For further clarification of the output image naming convention An example how the output filename will look if there are more than one input ports in the
159. ment is a rectangle of size 2xnHalfWindowWidth 1 x 2xnHalfWindowHeight 1 x 2xnHalfWindowDepth 1 such that the central pixel is the pivot element This operation is somewhat similar to a morphological gradient but because it uses the difference to the original image only it yields narrower edges The external gradient is located outside of the object s edges therefore resulting regions will be larger than those computed by PInternalGradient 128 Algorithm Documentation 8 13 Morphology Plugins e Inpin 1 Input image for the gradient computation allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE_GREY_32 or IMAGE_GREY_D e Outpin 1 The processed image of the same size and type as the input Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 8 Plugin FillHole Removes regions with pixel values which are below the surrounding pixel value The fill hole algorithm uses morphological reconstruction by dilation to remove the local minima from an image For a binary image it will fill the background
160. mmlet10 Inpin 1 Input image must be of type IMAGE_GREY_F Outpin 1 Transformation result coarse structures start at 0 0 coefficients are arranged in nonstandard decomposition GW02 Parameters wavelet_type This parameter determines which orthogonal wavelet should be used The default value is Haar The wavelet coefficients are taken from Mal98 See the list of supported values coarsest_level Number of the coarsest level to consider The wavelet transform always starts with the finest possible level this has the number 1 and proceeds to the coarsest given level The default value is 1 i e the wavelet transform uses all possible levels Literature e Mal98 S Mallat A Wavelet Tour of Signal Processing 2nd edition Academic Press San Diego 1998 e GW02 R C Gonzalez and R E Woods Digital Image Processing 2nd edition Prentice Hall 2002 See Also ITWM CPOrthoIWT ITWM Wavelets IWT_PO 8 16 4 Plugin OrtholWT Class to perform the fast wavelet transform with orthogonal wavelets Performs the inverse discrete wavelet transform with orthogonal wavelets for the input image Mal98 It is as sumed that the input image has side lengths which are powers of 2 and is arranged in non standard decomposition GW02 List of supported wavelet types e Haar Piecewise constant function with small support two coefficients e Daub4 Daubechies filters with n 4 coefficients and p 2 vanishing m
161. n each column indicating the fit of each Point input row The second output contains the respective modell parameters if not modell can be built the default output modell is an image of length 1x1x1 with entry 1 iterate Determines the maximum number of iterations to be applied to find the best solution rnd_sample_size Gives the number of samples necessary to compute a valid model for example to estimate a line we need at least two points to estimate a plane three or more points are needed etc threshold Determines how well the data points must satisfy the model to be accepted as explained by the model Literature e http en wikipedia org wiki RANSACWithModellOut 8 12 15 Plugin ReplicateColumn This node is used to replicate a column This node replicates a provided column until a desired image size is reached There are two input images The first input image is the column to replicate The second input image is the template image to determine the desired size of the output e Inpin 1 Input image of type IMAGE_GREY_F Inpin 2 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F 8 12 16 Plugin ReplicateRow This node is used to replicate a row This node replicates a provided row until a desired image size is reached There are two input images The first input image is the row to replicate The second input image is the template image to determine width height
162. n in figure 2 7 You can select nodes from the plugin menu on the left hand side and drag and drop them into the workspace with the mouse pointer Since the number of nodes can make it complicated to find the desired one fast the search widget can help to make it easier Let us now start with building a very simple example graph with only four nodes First we need an input for reading data from file We propose to use the node ReadImage which can be found in the menu under In Output gt File gt ReadImage The node can also be found with the help of the search bar as shown in figure 3 3 Clicking on the plugin name either in the search results or in the plugin menu the plugin can can be drag and dropped into the workspace By clicking on the blue box inside the plugin the parameter dialog opens You can now enter the name of the image file to open Any gray value image can be used for this simple graph for example 22 Overview 3 2 Building Your Own Graph Search for Plugins x Read In Output gt File gt ReadASCI M Readimage 1 Parameters In Output gt File gt Readlmage In Output gt File gt Readimage Readimage Parameters Mappings Comment Description Plugins gx E O Q filename string IT WMDIR doc examples objects pgm Display F run_once bool false Generic Imaae In Outout New Parameter File Load an oc E cenas
163. n z direction If size_z lt 0 the box ends at the image boundary By default it is set to 1 line_width long Determines the thickness of the line that is drawn By default it is set to 1 fillBox bool Determines whether the box is filled with fg_value or not only a rectangle is drawn By default it is set to false fill Determines whether the original data outside the box or in and outside of the rectangle Background bool remains unchanged or is set to bg_value By default it is set to false bg_ Specifies the gray value for the background of the output image value double By default it is set to 0 fg_ Specifies the gray value for the drawn box or rectangle in the output image value double By default it is set to 1 8 6 3 Plugin Circle Node to draw a circle using simple Bresenham algorithm If no second input is provided the plugin draws the circle described by the given parameters into the output image By providing a second input image it is possible to provide a list of circles to be drawn See anexample of Circles e Inpin 1 Input image to determine type and size of the output image It must be of type IMAGE _GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE GREY_32 or IMAGE_GREY_D e Inpin 2 Optional second input image encoding the coordinates and radii of the circles to be drawn Each row of this image represents one circle It must have at least 2 columns for the center
164. nd we have a real chain if set to false the links move freely independent of each other by default it is set to true initial_chain specifies the initial chain the possible values are CONSTANT all the links are placed at height 2 RANDOM the positions of the links are purely random DIAGONAL the links are placed on the image diagonal COLUMN_MINIMA the links are placed at the minima of every column of the input image 8 14 6 Plugin Threshold Node to compare two input images pixelwise if the pixel values of the first one are larger than the values of the second one In case of two input images it will be checked pixelwise if the pixel values of the first input image are larger than the pixel values of the second one and the pixel values of the result will be correspondingly set to an arbitrary value In case of only one input image it will be checked pixelwise if the pixel values are larger than an arbitrary threshold and the pixel values of the result will be correspondingly set to an arbitrary value The result will be an image consisting only of two values e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional second input image of same size and type as first input image e Outpin 1 Output image of the same type as the first input image Parameters threshold Threshold parameter with which the pixel values will be compared if only one image is given It will be casted to d
165. ng image acquisition to detect edges and other predefined structures or to prepare images for segmentation Starting from those basic building blocks various image processing operations are available e g e Opening and Closing to separate and to join image regions or structures respectively FillHoles and CutHills to remove isolated gray value valleys and peaks e BlackTopHat and WhiteTopHat to emphasize dark and bright regions at least as large as the given struc turing element The shape of the structuring elements is restricted to rectangles 2D and cuboids 3D In all three coordinate directions its size must be specified by the half lengths Note By definition the resulting structuring element will always be of size 2n 1 for a given parameter value n gt 0 8 2 13 Segmentation Segmentation is the process of partitioning the image into regions How the regions are defined depends on the image data or on the intended application Result of the segmentation of a grey value image can be a binary image 1 e where the regions consist of background and foreground pixels foreground usually corresponding to the object of interest A more complex example would be to identify every single object in a collection resulting in a label image ToolIP provides threshold based segmentation procedures e g Otsu as well as more sophisticated algorithms e g ChanVese 8 2 14 Transformation This section descri
166. non smaller value b of the middle pair a lt b of the sorted values is taken e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x 8 pixel where n is the number of labels number of rows e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 17 Plugin NbhSpHist Computes the histogram over the scalar product of the neighborhood gray values of each pixel 82 Algorithm Documentation 8 7 Features Plugins The sum of the scalar product of each pixel with its 4 neighborhood is calculated and subsequently the histogram over these values built To counteract bias through extreme values one can ignore the m_nNumberOfPixels highest and lowest values e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false m_nNumberOf Determines the number of pixels with values above th_above and below th_below By default Pixels long it is set to 30 8 7
167. nput The first image contains the sample data points These data will be used to estimate the model The second image contains all data points they will be used to check the validity of the model Every image row corresponds to a data point The output image must consist of one column in which every entry indicates how well the corresponding data point satisfies the model learned based on the sample data points first input image The lower the absolute value the better the match iterate Determines the maximum number of iterations to be applied to find the best solution rnd_sample_size Gives the number of samples necessary to compute a valid model for example to estimate a line we need at least two points to estimate a plane three or more points are needed etc threshold Determines how well the data points must satisfy the model to be accepted as explained by the model Literature e http en wikipedia org wiki RANSAC 8 12 14 Plugin RANSACWithModellOut Node to apply the RANSACWithModellOut algorithm to data provided by the input image and model provided by the graph The input image provides the data points to be fitted to the model every row is a point in n dimensions the points can be pixel coordinates or more abstract features suitable for the model defined by the graph The node applies the RANSACWithModellOut algorithm to select part of the data that best fits is explained by the given model At
168. nput data All input pixel values greater than map_ max double long max are mapped to map_max It is used only if map_min 0 and map_max 0 By default it is set to 0 tile_x long Number of tiles in x direction the input image is divided in The maximum and minimum in every tile is computed and the average of these values is used in the normalization mapping as the maximal and minimal input pixel value For tile_x 1 and tile_y 1 the exact maximal and minimal input pixel values are used By default it is set to 1 tile_y long Number of tiles in y direction the input image is divided in The maximum and minimum in every tile is computed and the average of these values is used in the normalization mapping as the maximal and minimal input pixel value For tile_x 1 and tile_y 1 the exact maximal and minimal input pixel values are used By default it is set to 1 upcast bool Indicates whether the output image is cast to float By default it is set to false 8 15 20 Plugin PaintMarks Node to paint marks from a given mark file into the input image For all marks in the mark file the correpsonding region of interest is set to one Le the plugin extracts the coordinates from the mark file and generates a mask image with only O and 1 pixels as described by the specified mark file e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Optional string to define the path to the m
169. nput image 90 Algorithm Documentation 8 9 Filter Plugins Note A 3D input image will be processed plane by plane Parameters left bool In case it is set to true objects touching the left image border will appear in the output image By default it is set to true right bool In case it is set to true objects touching the right image border will appear in the output image By default it is set to true top bool In case it is set to true objects touching the top image border will appear in the output image By default it is set to true bottom bool In case it is set to true objects touching the bottom image border will appear in the output image By default it is set to true 8 9 5 Plugin CEShock Node to apply the coherence enhancing shock filter on the input image Applies the coherence enhancing shock filter on a 3D input image Depending on whether a pixel belongs to the influence zone of a maximun or a minimum this filter applies locally either a dilation or an erosion process in the third dimension It creates a sharp shock between two influence zones and produces piece wise constant segmentations For specific information see Weick2003 e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Parameters structure_ If set to a value larger than 0 0 a presmoothing of the image with a Gaussian of standard scale double dev
170. nsions as the input image while the size can increase The output is the smallest vector square or cube where the side length is a power of two such that the input image fits in it The coefficients corresponding to the coarse structures can be found starting at the 0 0 coordinate in the resulting image List of supported wavelet types Haar Piecewise constant function with small support two coefficients Daub4 Daubechies filters with n 4 coefficients and p 2 vanishing moments Daub6 Daubechies filters with n 6 coefficients and p 3 vanishing moments Daub8 Daubechies filters with n 8 coefficients and p 4 vanishing moments Daub10 Daubechies filters with n 10 coefficients and p 5 vanishing moments Daub12 Daubechies filters with n 12 coefficients and p 6 vanishing moments Daub14 Daubechies filters with n 14 coefficients and p 7 vanishing moments Daub16 Daubechies filters with n 16 coefficients and p 8 vanishing moments Daub18 Daubechies filters with n 18 coefficients and p 9 vanishing moments Daub20 Daubechies filters with n 20 coefficients and p 10 vanishing moments Coiflet1 Coiflet with N 6 coefficients Coiflet2 Coiflet with N 12 coefficients Coiflet3 Coiflet with N 18 coefficients 162 Algorithm Documentation 8 16 Wavelets Plugins Coiflet4 Coiflet with N 24 coefficients Coiflet5 Coiflet with N 30 coefficients Symmlet4 Symmlet5 Symmlet6 Symmlet7 Symmlet8 Symmlet9 Sy
171. o the utilized third party libraries can be found in appendix B Introduction Chapter 2 Installation In this chapter we describe the installation procedure of the software ToolIP 2 1 Windows During the first installation of ToolIP administrator rights are required since some environment variables need to be set If you start the installer suitable for your operating system you find the menu as shown in figure 2 1 iis ToolIP 2015 Windows 64 Bit Setup Installation Options fm xj O NOTE You must have administrator rights if you install this For the First time Select the type of install Custom d gt This will install the complete ToolIP on your computer Or select the optional ToolIP components you wish to install A Kit Plugin SDK Yc Redistributable Space required 62 4MB Cancel Nullsoft Install System v2 46 Figure 2 1 ToolIP installer menu In the drop down menu you can choose the option Basic Install which will only install the ToolIP package This might be sufficient if Microsoft Visual Studio 2008 is already installed on your computer Nevertheless if the version including service pack number of the compiler does not fit the binaries there will be a problem during execution of the program In case you are not sure please tick the box Ve Redistributable Furthermore a plugin Software Development Kit SDK can be installed by ticking the corresponding box
172. o false 8 7 8 Plugin Border 77 8 7 Features Plugins Algorithm Documentation e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 9 Plugin Covbin Calculates the covariance of the pixel gray values in a binary image Computes local covariance min eigenvalue on a binary image estimated from the foreground pixels The output of the eigenvalues is written in ascending order Useful to detect line segments in the image e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of pieces number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 10 Plugin Entropy Calculates the entropy of the normalized histogram A histogram over the grey values of each label is generated then normalized and its entropy ist calculated e Inpin 1
173. o the model every row is a point in n dimensions the points can be pixel coordinates or more abstract features suitable for the model defined by the graph The node applies the RANSAC algorithm to select part of the data that best fits is explained by the given model At every iteration a random sample from the given data is selected this is used as the first input of the graph The second input is the given data The graph should use the data at first input to estimate parameters of the model and then evaluate the model for the data given at the second input A model can be any function of the data points returning scalar 122 Algorithm Documentation 8 12 Matrix Plugins values The values should be small close to zero for points satisfying better the model and large otherwise the best sample is stored and determines the final best model the output image consists of one column nonzero entries identify data points satisfying the best model estimated e Inpin 1 Input image of type IMAGE_GREY_F Inpin 2 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_GREY_F Parameters graph Specifies the path to the graph that implements the model The path can hold a classical path to a file or a special string to point to a graph stored in the StaticStorage e g ITWMDI R bin utility StaticStorage linefit In this case linefit is the representative of the stored graph The graph must take two images as i
174. ode_y string Alignment of the two input images in y direction Valid entries are e CENTER images are centered in height e TOP images are aligned at the top e BOTTOM images are aligned at the bottom e APPEND image is appended in y direction By default it is set to TOP mode_ compose string Defines the way the two input images are combined Valid entries are e MEAN the output pixel is the mean of the two input pixels e MAX the output pixel is the maximum of the two input pixels e MIN the output pixel is the minimum of the two input pixels e Ye FIRST the output pixel is the first input pixel e SECOND the output pixel is the second input pixel By default it is set to MEAN bg_ value double Background value i e the value of those pixels that are not filled by the input images If the input image is of type IMAGE_RGB_8 the background value will be used for all channels By default it is set to 0 0 ignore_ zero bool defines whether zeros in the input images are ignored or not This parameter is used in the FIRST and SECOND mode By default it is set to false paralleliza tion string defines whether a parallelization is being performed Valid entries are e PARALLELIZATION WITH OPENMP In the case of multi core processor and color images it computes three chanals parallel each chanal is a thread e NO PARALLELIZATION Compute without parallelization By default it is set to NO PARA
175. of a circle if it has a third column then this column will be used as the radius of the circles Similarily if it has a 4th column this column will be used as the gray value of the circles Other columns of the second image will be ignored It must be of type IMAGE_GREY_F e Outpin 1 Output image of same type and size as the input image 69 8 6 Data Plugins Algorithm Documentation Parameters x_center long Determines the x coordinate of the center of the circle By default it is set to 0 y_center long Determines the y coordinate of the center of the circle By default it is set to 0 radius long Determines the radius of the circle By default it is set to 10 color double Determines the color of the circle By default it is set to 255 0 fill Determines whether the circle is drawn into the input image set to false or in an empty image Background bool with same size and type as the input image set to true By default it is set to false fillCircle bool Determines whether the circle should be filled with value color set to true or not set to false By default it is set to false wrap bool Determines if the circle drawing is performed on a periodic grid By default it is set to false i e no wrapping is performed 8 6 4 Plugin Constant Node to create a constant image with given size Creates an image of specified size with all pixel values set to a given value
176. of type IMAGE_GREY_F and of the same width as the first input image Needs to have as many rows as the chosen noise type has parameters It sets the noise parameters independently for every column of the output image Image must be of type IMAGE_GREY_F e Outpin 1 Output image of same type and size as the input image Provides the following noise types UNIFORM an pi o otherwise GAUSSIAN A P z zP p z 1 sqrt 2 pi sigma exp z mu 2 2 sigma 2 EXPONENTIAL _ aexp dexpz forz gt 0 pe 5 forz lt 0 RAYLEIGH z 2 z a mo io era 0 for z lt a POISSON countable state space 0 1 and the rule ak P X k qr Pa a gt 0 e Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE_GREY_F or IMAGE_GREY_8 Inpin 2 Optional second input image encoding the parameters independently for every column of the output image Works only if type is set to UNIFORM Each column determines a parameter set which consists of minimum and maximum Must be of type IMAGE_GREY_F e Outpin 1 Output image of same type and size as the input image An example of the Noise Plugin Parameters time long Determines whether a time measurement is performed If time gt O the time that was needed to calculate the result will be printed out on the screen By default it is set to 0 type string Determines the type of noise UNIFORM GAUSSIAN EXP
177. oints marked or a list of balance points with their gray values e Inpin 1 input image of type IMAGE_GREY_F e Inpin 2 label image of type IMAGE_GREY_F e Outpin 1 output image of type IMAGE_GREY_F Parameters number long number of balance points to be detected By default it is set to 1 type string Defines the type of the output image Possible values are e STANDARD default The output image is filled with zeros and the desired number of balance points are marked with value 255 e SMART The output image has three rows and number 1 columns containing the num ber largest balance points sorted in descending order filled in the following way column_0 0 width of the original image column_0 1 height of the original image column_0 2 0 column_i 0 x coordinate of the i th balance point column_i 1 y coordinate of the i th balance point column_i 2 gray value of the i the balance point verbose bool print function feedback to log area See Also FindMax which detects local maxima 8 15 9 Plugin FindMax Node to find local maxima in labeled areas of the input image A user defined number of local maxima wiil be derived from the first input image using the labeled regions from the second input image as areas of interest If no label image is provided the global maximum will be detected The local maxima are sorted by their gray value in descending order
178. old_low is considered as not belong low double ing to an edge By default it is set to 0 0 true_ Sets the output pixel gray value for edge pixels value double By default it is set to 1 0 method string Determines which implementation of the Canny algorithm will be used VEW or OLD see above By default 1t is set to OLD false_ Sets the output pixel gray value for non edge pixels value double By default it is set to 0 0 angle_ Determines the acceptable bending for an edge to be still considered as connected It is given tolerance double in degrees By default it is set to 30 0 8 9 7 Plugin Convolve Node to compute arbitrary linear filters as specified by the filter coefficients e Inpin 1 Input image of type IMAGE_GREY_8 or IMAGE_GREY_F e Outpin 1 Output image of same type as the input image Parameters filter vector Specifies the filter size and coefficients By default it is set to NULL e Entry 0 filter s width e Entry 1 filter s height e Entry 2 divisor e Entry 3 up to Entry n 1 filter coefficients row by row 92 Algorithm Documentation 8 9 Filter Plugins OriginX long Filter hotspot x position By default it is set to 0 OriginY long Filter hotspot y position By default it is set to 0 edge_ Indicates how to treat pixels that lie outside of the image borders By default it is set to 0 treatment long Possible values
179. ombination of the coherence enhancing shock filter and the isotropic nonlinear diffusion on the input image Depending on a user defined threshold the method decides whether to apply a shock step or a diffusion step in each single pixel The threshold will be compared with either the eigenvalues of the structure tensor or the values computed by a Sobel mask See Also CEShock and IsoNonlinDiffusion e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F 102 Algorithm Documentation 8 10 Manipulation Plugins Parameters Preci Determines the cutoff precision for the convolution steps By default it is set to 3 0 sion double Thresh Used to decide whether a shock or a diffusion step is applied By default it is set to 0 1 old double Time Sets the time step for computing the dilation and erosion with the numerical method of Osher step double and Sethian The value should be chosen from the range 0 0 0 5 By default it is set to 0 5 Difference_ Describes the scheme used for creating the structure tensor Possible values are CENTRAL_ Scheme string DIFFERENCE SOBEL and KUMAR By default it is set to SOBEL contrast_ Sets the contrast parameter for diffusivity By default it is set to 1 0 parameter double decision Describes if the threshold is compared with the Sobel mask or with the Eigenvalues By criterion string default it is set to Eigenvalues
180. oments e Daub6 Daubechies filters with n 6 coefficients and p 3 vanishing moments e Daub8 Daubechies filters with n 8 coefficients and p 4 vanishing moments e Daub10 Daubechies filters with n 10 coefficients and p 5 vanishing moments e Daub12 Daubechies filters with n 12 coefficients and p 6 vanishing moments 163 8 17 Display Plugins Algorithm Documentation Daub14 Daubechies filters with n 14 coefficients and p 7 vanishing moments Daub16 Daubechies filters with n 16 coefficients and p 8 vanishing moments Daub18 Daubechies filters with n 18 coefficients and p 9 vanishing moments Daub20 Daubechies filters with n 20 coefficients and p 10 vanishing moments Coiflet1 Coiflet with N 6 coefficients Coiflet2 Coiflet with N 12 coefficients Coiflet3 Coiflet with N 18 coefficients Coiflet4 Coiflet with N 24 coefficients Coiflet5 Coiflet with N 30 coefficients Symmlet4 Symmlet5 Symmlet6 Symmlet7 Symmlet8 Symmlet9 Symmlet10 Inpin 1 Wavelet coefficients in non standard decomposition GW02 image must be square with side lengths being a power of 2 Input image must be of type IMAGE_GREY_F Outpin 1 Reconstructed image Parameters wavelet_type This parameter determines which orthogonal wavelet should be used The default value is Haar coarsest_level The level of the given wavelet transform Per default this value is 1 and the algorithm takes the logarithm of the side
181. on start generated by this plugin e Outpin 2 a copy of the input image 8 15 47 Plugin TimerStop This plugin reads the Time stored on the stack by the PTimerStart plugin and calculates the difference To use this plugin just connect a PTimerStart with a PTimerStop The former one stores an ITWM CTimer object as CValueVector on the stack which can be read from the PTimerStop plugins To enable synchronising with other plugins this plugins uses the following stack entries e Inpin 1 start time of calculation generated by the CTimerStart plugin pinout 1 e Inpin 2 input image e Outpin 1 a copy of the input image received via pinin 2 8 15 48 Plugin ZoneList Node to create a zone list from a labeled image This node creates a zone list i e a list of regions of interest or bounding boxes from a labeled image The zone list can be strored as a vector in which every entry holds the following values label the label number of the region ax ay the upper left coordinates of the region bx by the lower right coordinates of the region width height the dimension of the region size the number of pixels of the region The second possibility is to store the zone list in an image of type IMAGE_GREY_F with size 4xNumberOf Zonesx1 Each row represents a zone and the coordinates are arranged as ax bx ay by Such an image can serve as input of the Box plugin to draw the zones into an image e Inpin 1 label image
182. one of the following cases Inner_Bright vice the brighter pixels if the inner of the circle is bright Inner_Dark vice the darker pixels if the inner of the circle is dark Both_Directions vice both directions valuation This parameter decides whether stronger edges are valuated more than lower ones It can be one of the following cases same all edges have the same valuation graduated stronger edges lenght of gradient is bigger valuate more 8 15 45 Plugin TextSerializer Class to serialize a given value map to a string This plugin serialises a value map and writes it to a string e Inpin 1 input ValueMap Parameters append This parameter contains an optional string to append to the output prepend This parameter contains an optional string to write in front of the output linefeed If this boolean is false a linefeed is appended at the end otherwise not e Outpin 1 output ValueMap 159 8 15 Utility Plugins Algorithm Documentation 8 15 46 Plugin TimerStart This plugin stores the current time as CValueVector To use this plugin just connect a PTimerStart with a PTimerStop The former one stores an ITWM CTimer object as CValueVector on the stack which can be read from the PTimerStop plugins To enable synchronizing with other plugins this plugin uses the following stack entries e Inpin 1 original image e Outpin 1 time of calculati
183. ool to zero or not By default it is set to false 108 Algorithm Documentation 8 10 Manipulation Plugins See Also LabelToColor the corresponding color mapping 8 10 13 Plugin Pad pads an image Pads an image by adding a number of rows at the top and bottom and a number of columns to the left and right of the image These additional pixels are filled with a constant value e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input image Note Currently only available for 2d images Parameters pad_left long number of columns added to the left of the image By default it is set to 0 pad_right long number of columns added to the right of the image By default it is set to 0 pad_top long number of rows added at the top of the image By default it is set to 0 pad_ number of rows added at the bottom of the image By default it is set to 0 bottom long pixel value for the added rows and columns By default it is set to 0 0 value long doulbe 8 10 14 Plugin PlaneToVolume Node to redistribute the image data to new user defined image dimensions redistributes the input image data to new user defined image dimensions The new image width and height are _ widthin x heightin x depth os defined by the second input image The new depth is computed as depthoy i ee The remaining image pixels are omi
184. opy of the data referenced by the pointer nor move the ownership of the pointer Like in WRITE the old internal data is overwritten with the new data if the key is already in use SHADOW_READ default a copy of the stored pointer corresponding to the key is written to the output If the internal ValueMap has not been written to before the result ValueMap will only contain the execution time mo key string key for the ValueMap entry to be processed By default it is set to See Also StaticImage to read or write image data from to an internal map 8 15 41 Plugin Statistics Node to compute the average grey value of the input image Computes the average and standard deviation of the input image e Inpin 1 Input image of type IMAGE_GREY_8 or IMAGE _GREY_F e Outpin 1 average gray value double e Outpin 2 standard deviation of the gray values double 157 8 15 Utility Plugins Algorithm Documentation Parameters verbose bool print function feedback to log area 8 15 42 Plugin StringManipulation Node for strings manipulation This node reads the optional input string and after evaluatinon the expression parameter writes it in the output port as a string The input string is determined with the reserved string il surrounded by i e 11 in the expression parameter Also it is possible to define new parameter In this case it is possible to use this parameter name surrounded by in the
185. ossible inputs are X Y and Z By default it is set to X 8 6 11 Plugin Spline Node to draw a cubic spline into the output image Cubic spline s are drawn with a specified gray value into the output image The background can be set to a specified gray value e Inpin 1 Input image into which the spline is drawn Must be of type IMAGE_GREY_F or IMAGE_GR EY_8 e Inpin 2 Optional second input image encoding coordinates of the four points that determine the spline s to be drawn Must be of type IMAGE_GREY_F e Outpin 1 Output image of same type and size as the first input image Parameters ax long Sets the x coordinate of the first point that determines the spline By default it is set to 0 ay long Sets the y coordinate of the first point that determines the spline By default it is set to 0 bx long Sets the x coordinate of the second point that determines the spline By default it is set to 2 by long Sets the y coordinate of the second point that determines the spline By default it is set to 5 cx long Sets the x coordinate of the third point that determines the spline By default it is set to 8 cy long Sets the y coordinate of the third point that determines the spline By default it is set to 5 dx long Sets the x coordinate of the fourth point that determines the spline By default it is set to 10 dy long Sets the y coordinate of the fourth point tha
186. ouble By default it is set to 0 true_value Value the pixel values will be set to if the pixel values of the first image are larger than the pixel values of the second one It will be casted to double By default it is set to 1 false_value Value the pixel values will be set to if the pixel values of the first image are not larger than the pixel values of the second one It will be casted to double By default it is set to 0 run_flag bool INTERNAL Indicates whether the node already run before By default it is set to false upcast bool Indicates whether the output image is cast to float By default it is set to false 8 14 7 Plugin Watershed Computes the watershed transform as described in Morphological Image Analysis P Soille e Inpin 1 Input image of type IMAGE_GREY_8 or IMAGE _GREY_F e Outpin 1 Watershed segmented image of type IMAGE_GREY_F A Pixel value of 0 indicates a watershed pixel value gt 0 identifies connected regions Parameters connectivity Neighborhood configuration 4 8 6 1 6 2 8 15 Utility Plugins 138 Algorithm Documentation 8 15 Utility Plugins 8 15 1 Plugin AddMetaData Node to add reset single entries to the meta information of the input data Add a single entry to the meta ValueMap of the input data by defining the new key and its corresponding value If the key already exists the corresponding value will be updated e Inpin 1 inpu
187. pe IMAGE_GREY_F with n x m pixel where n is the width number of columns and m is the height number of rows of the shrinked selected label Outpin 2 Value vector with the same information Parameters width long wanted width of the label height long wanted height of the label verbose bool print function feedback to log area selected label long label to be changed 8 7 2 Plugin Area This node calculates the area number of pixels of labeled regions Inpin 1 Input image must be of type IMAGE_GREY_F 75 8 7 Features Plugins Algorithm Documentation e Inpin 2 Input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x 1 pixel where n is the number of labels number of rows e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 3 Plugin Avedu Computes the average gray value of foreground pixels per label This is done by calculating 0 x Position x 0 y Position and width x Position x height y Position e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x 2 pixel where n is the number of labels number of rows e Outpin 2 Value vector with the same information Parameters verbose bool Prints function fe
188. px g py g HXY2 Eg 1 Ly 1 Px 8 Py g log px g py g HX Ley Px 8 log px g HY ES py g log py g Inpin 1 First input image must be of type IMAGE_GREY_F Inpin 2 Second input label image Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information Parameters m_dx long Horizontal component of the displacement operator m_dy long Vertical component of the displacement operator verbose bool Prints function feedback to log area By default it is set to false m_glcm_ Resolution of the gray level co occurence matrix e g 16 lt m_glcm_size lt 256 size long 8 7 14 Plugin HoughEntropy Node to compute several measures of the entropy of the Hough histogram If the input image contains points on lines then the Hough histogram contains pronounced peaks and this should be reflected in entropy values computed in the hough space The entropy values calculated are e maximal value devided through sum of foreground pixels e expectation of normalized density Reny entropy expectation of logarithmic normalized density entropy maximal value of histogram Inpin 1 First input image must be of type IMAGE_GREY_F Inpin 2 Second input label image 81 8 7 Features Plugins Algorithm Documentation e O
189. rd is kept for compatibility reasons min_distance Determines the accuracy of the SHH method It should be positive and smaller than one The default value is set to 0 001 It affects only the SHH mode 8 15 5 Plugin Copylmage Node to copy an input image to an output image Copies the input image to the output image This node supports all image types and sizes 140 Algorithm Documentation 8 15 Utility Plugins e Inpin 1 Input image of an arbitrary image type e Outpin 1 Ouput image containing a copy of the input image 8 15 6 Plugin Curvelndex Node to compute the index of a curve This function computes the index of a curve integral of angle for all pixels in the image Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of the same type as the input image Parameters method string defines the desired behaviour e CINDEX computes the index of the whole curve e BBOX default computes the bounding box of a polynomial approximation of the curve This method is much faster than CINDEX 8 15 7 Plugin DrawString Node to draw a text into the input image Draws a text into the input image Position size pixel value and blending method can all be configured by parameters e Inpin 1 Input image of type IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input image Parameters position_x long x coordinate of the upper left corner of
190. regions that are not connected to the image border See node P Reconstruction for more details about morphological reconstruction e Inpin 1 The input image where local minima will be filled must be of type IMAGE_GREY_8 or IMAG E_GREY_F e Outpin 1 The processed image of the same size and type as the input Note Connectivity here is implicitly defined by the implementation of the morphological reconstruction Since reconstruction will use a square structuring element connectivity will always go along axis and diagonal directions Literature e Vincent Morphological greyscale reconstruction in image analysis applications and efficient algorithms IEEE Transactions on Image Processing 2 2 1993 pp 176 201 e P Soille Morphological Image Analysis chapter 6 Reconstruction based operators 8 13 9 Plugin InternalGradient Class to calculate the internal gradient of the input image This function performs the internal gradient i e difference between the input image f and its erosion In this function the structuring element is a rectangle of size 2 nHalfWindowWidth 1 x 2 nHalfWindowHeight 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element This operation is somewhat similar to a morphological gradient but because it uses the difference to the original image only it yields narrower edges The internal gradient is located inside of the object s edges therefore resulting regions will be smaller
191. rithm Documentation 8 5 Color Plugins e Inpin 1 Input image of type IMAGE_RGB_8 or IMAGE_RGB_8I e Outpin 1 First channel as IMAGE_GREY_F e Outpin 2 Second channel as IMAGE_GREY_F e Outpin 3 Third channel as IMAGE_GREY_F Parameters color_ Determines the color space the input image is decomposed to Possible inputs are RGB CMY type string YUV YCbCr YIQ HSV HSI 112I3 XYZ and Lab By default it is set to RGB Note The range of the output values varies with the chosen color space In some cases it might be necessary to normalize the result in order to make it visible in the output image 8 5 2 Plugin Combine Node to compose three images to build an RGB image Three equally sized input images are used as three color channels and get combined to an RGB output image e Inpin 1 First channel input image of type IMAGE_GREY_8 or IMAGE_GREY_F e Inpin 2 Second channel input image of type IMAGE_GREY_8 or IMAGE_GREY_F e Inpin 3 Third channel input image of type IMAGE_GREY_8 or IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_RGB_8 or RGB_8I determined by parameter output_type Parameters output_ Defines the type of the output image possible entries are MAGE_RGB_8 and RGB_SI By type string default it is set to IMAGE_RGB_8 verbose bool Prints function feedback to log area By default it is set to false input_color_ Sets the input color type The types RGB CMY YUV YCB
192. s foreground and one bounding box is drawn fill bool defines whether the bounding boxes in the output image are being filled with fill true or not fill false By default it is set to true resize_box long pixel width for resizing the bounding boxes For resize_box lt 0 the bounding boxes in the output image will be expanded otherwise they wiil shrunk By default it is set to 0 8 15 3 Plugin ConvertType Node to change the type of an input image Converts the image data to the specified output type by a simple typecast 139 8 15 Utility Plugins Algorithm Documentation e Inpin 1 Input image of type IMAGE_GREY_F IMAGE_GREY_8 IMAGE_RGB_8 IMAGE_RGB_8I or IMAGE_BINARY_FG e Outpin 1 Output image of the type specified by the parameter out_type Parameters out_type string Type of the output image Valid entries are IMAGE_GREY_8 IMAGE_GREY_F IMAGE _BINARY_FG IMAGE_RGB_8 and IMAGE_RGB_8I By default it is set to IMAGE_GREY_F swap_msb_ defines whether the endian byte order will be changed for 16 Bit conversion The endian Isb bool describes the order of the most significant byte msb and the least significant byte lsb By default it is set to false 8 15 4 Plugin ConvexHull Node to determine the n dimensional extrema of a set of points It calculates the extreme vertices vertices of the convex hull for a set of points in n dimensions every row specif
193. same type as the input image Parameters offset_x long pixel offset for the translation in x direction By default it is set to 0 offset_y long pixel offset for the translation in y direction By default it is set to 0 offset_z long pixel offset for the translation in z direction By default it is set to 0 bg_ value for those pixels not covered by the translation By default it is set to 0 value double wrap bool translation can be performed as on a periodic lattice This can be useful for images in polar coordinates By default it is set to false no wrapping is performed 8 10 28 Plugin VolumeToPlane Node to re arrange 3d image data into a 2d image where the layers are arranged next to each other 115 8 11 Matching Plugins Algorithm Documentation Re arranges the 3d input image data in such a way that the original image layers are appended in y direction Le widthoy widthin X heightin e Inpin 1 3d input image of type IMAGE GREY_F or IMAGE _GREY_8 e Outpin 1 2d output image of the same type as the input image containing the re arranged data 8 11 Matching Plugins 8 11 1 Plugin FindShape Node to find image regions with data similar to given template This function finds image regions with data that are similar to the given template The similarity index is computed using the gradient direction based shape model In the reference image positions with gradient amplitu
194. sd he aid 101 89 26 PIES VAMOS oe coe a a a e Re Ae E RS eee 102 8 9 27 Plugin ceShock_IsoNonlinDIff o e e 102 8 10 Manipulation Plugins sa ecer 6 6 4 4 2b RR ERR rea RR EO 103 6 10 1 Pugin App nd eses 6445 bee dw ee ea hee ee eal oe eee eo 103 S102 Piven AMOCO A Bae es BR he ee Gee ELS ae He ee di 103 6 103 Plugin Cartes ToPolar gt 4 5654 055 pa RS bo ORR RE EE EE RES 104 S104 Plugin COmposelmags o cositas be bt hh eee eet ee ote eS 104 10 3 Plug Dese altzE o ob kee ee a As A eS OES A eee 105 6 10 6 Plugin Expand lt lt cocos we ee ea ee ee eee 106 5107 PUSE co caia ca aR ARS aR e ace we oe co 106 S108 Plugin FIP lt a ee 107 109 Pluem LabelToColor io cocos ars ee ae ee Re Bes 107 6 10 00 Plugin Label Pete a ru cps ev ik A Re eee ee ore eles oe Se ees 107 St Plus Label STE 0 See eae adi ee Re Sed the a eae oe 108 CONTENTS CONTENTS 8 12 SIOE Plug LabellO aus 0 rt A ee E EES REAR ee eS 108 S103 Pipe Pad soc ee eS AR ES a ER aoe ees 109 10 18 Plus Plane lo Voume e 26 4 lt a A Sp cue b Ew eS ee eS Efe BB wed aid 109 6 10 J5 Plugin Polar ToC artesian o p o 4 055 bao oa Pee ER PES Bk a ES 109 5 10 16 Plugin Reptient c 244 65 82 be ee ba ba bee ea ee be eS 110 8 10 17 Plugin Replicate o s o coo bee RR RR ER ER ee ee Eo 110 5 10 18 Plugin Resample s e o ocsi ee ew a Dee a ee eee ee 111 SUE VO da AA A AAN 111 6 10 20 Plug ROS ss eR EP A RS 112 SG Phen cae ic a dos 112 5 10 27 Plugin Sel
195. sed to create a new graph If there is an asterisk next to the tab name visible the file was changed or not yet saved Shortcut Strg N 4 1 2 Open File Loading an existing graph By clicking on the icon Open the Open file window will be Cy opened for selecting the file to be loaded The graph will be opened in the current tab in case it is still FA empty Otherwise a new tab will be added containing the selected graph Shortcut Strg 0 4 1 3 Save The generated graph will be saved The first time you save the graph the window Save file as opens Here it is possible to specify the saving location If the graph was already saved i before the current file will be overwritten while saving Shortcut St rg S 4 1 4 Save As By clicking on the symbol Save as the created graph can be saved in a user specified location 5 Shortcut Strg W 4 1 5 Close Tab The current tab will be closed If the graph has been changed a window appears prompting to save x the current graph Non saved graphs are indicated by an asterisk symbol in the corresponding tab Shortcut St rg Q 4 1 6 Reset Graph Resets the current graph to the non processed state All outputs of the nodes will be removed aF 26 Graphical User Interface 4 1 Menu Bar 4 1 7 Start the Graph Processes all plugins in the graph automatically from beginning to the end Which node is currently running can be recognised by the status button of the no
196. serslautern Germany As graphical development user interface it comes with an integrated image processing library developed at ITWM This library contains a large variety of image processing and analysis algorithms that can be arranged in data flow graphs and thus combined to the solutions of complex inspection problems Together with its library ToolIP allows for solving complex image processing and analysis problems by visual programming This approach has the advantage of being very intuitive and so the user can start working productively after a very short training period The de scriptions of such data flow graphs can be saved and then immediately be used with a command line interpreter called MAOIcmd It is also possible to call a graph from inside a C or C application This makes it easy to integrate a graph developed in ToolIP in an inspection system or a solution directly in the production line ToolIP and its library are serving as the basis for many image analysis and quality assurance projects in the academic and industrial field Are you interested in trying ToolIP for free An installer of the demo version can be found at the homepage www itwm fraunhofer de toolip The demo version underlies some restrictions which are explained in section 2 3 2 If you are interested in the licensing conditions or if you want to purchase a run time or developer version of the underlying algorithms please do not hesitate to contact Fraunhofer ITWM via
197. sion See Also ReadImage to read image data from an image file Save ASCII to save image data to an ASCII file 8 15 34 Plugin Script Node to run a script on input images This node executes a given script via system in the specified path on the data given with the input image and gives the resulting image back to the output image e Inpin 1 Input image e Inpin 2 Optional second input image e Inpin 3 Optional third input image e Outpin 1 Output image e Outpin 2 Optional second output Parameters script_path string Defining the path and the name of script and parameters of script It is possibe to type the parameters of script in three input parameters temporary_path string Defines the folder for temporary image and files first_parameter string Determines the first parameter coming after script_path second_ string Determines the second parameter coming after script_path parameter third_parameter string Determines the third parameter coming after script_path clean Determines if the temporary files will be automatically deleted after the execution true or they will be left unhandled false by default it is set to true delete all temporary files Note The command called is build from the parameters script_path first_parameter second_parameter and third parameter The place of the parameters in the command may be indicated with the keys p1 p
198. software ToolIP and showed many ways of working with its integrated image processing library This first steps with ToolIP show its potential and its flexibility and thus help you by designing solutions for image analysis problems In case of any questions concerning or problems with ToolIP and this manual please do not hesitate to contact us toolip itwm fraunhofer de We appreciate to receive feedback and suggestions 167 Summary 168 Appendix A Shortcuts In the following table the keyboard and mouse shortcuts of ToolIP are summarized Shortcuts Description Ctrl N open a new workspace Ctrl 0 open graph file Ctrl S save graph Ctrl Shite S save graph as Ctrl W close current graph Gerd 22 undo last action Ctrl Y redo last undone action Ctrl A select all nodes in the current graph Ctrl si copy selected items into clipboard Ctrl X cut selected items remove items and copy them into clipboard Ctrl a Y paste items from clipboard into current graph Ctrl D duplicate selected items into current graph copy amp paste Ctrl left click add an item to selection left click mouse rectangular selection moving Delete delete selected items from the current graph Insert open plugin search box to look for an algorithm node add selected plu gin into current graph via drag amp drop or by Enter Ctrl FE open plugin search box for finding a node by attributes in the workspace right clic
199. sult image scalar otherwise result scalar image By default order is set to 0 upcast bool Indicates whether the output image is cast to float By default it is set to false sub This input parameter is only used if just one input image is given It must be a constant and tract double long will be subtracted from the input image if parameter order equals 0 Otherwise the image is subtracted pixel wise from the scalar value subtract It will implicitly be cast to double and is set to 0 0 by default 8 4 Barcode Plugins 8 4 1 Plugin BarcodeReader Node for decoding barcode QR code from an image based on the thirdparty library zbar This node uses the zbar library to decode barcodes QR codes in the input image The recognized characters are written into the output as a string e Inpin 1 Image of type IMAGE_GREY_8 e Outpin 1 Recognized characters from barcode as string Parameters verbose bool Prints function feedback to log area By default it is set to false Credits This plugin uses the Zbar library For additional information see Third Party License 8 5 Color Plugins 8 5 1 Plugin ColorTransform Node to separate RGB images and to decompose them into various different color spaces An input image is transformed into three channels that are written into three output images The output images contain the information of three different selectable color channels 66 Algo
200. t a k a morphological gradient on the input image This function computes the Beucher or morphological gradient pa f f B FOB i e difference between dilation and erosion In this function the structuring element is a rectangle of size 2 n HalfWindow Width 1 x 2 nHalfWindowHeight 1 x 2 nHalfWindowDepth 1 such that the central pixel is the pivot element e Inpin 1 Input image to the gradient allowed types IMAGE_GREY_F IMAGE_GREY_8 IMAGE_GR EY_16 IMAGE_GREY_32 or IMAGE _GREY_D e Outpin 1 The gradient image of the same size and type as the input Parameters half_ width of the rectangular structuring element windowsize_x half_ height of the rectangular structuring element windowsize_y half_ depth of the rectangular structuring element windowsize_z 125 8 13 Morphology Plugins Algorithm Documentation Literature e P Soille Morphological Image Analysis Springer Berlin 2003 e D Lemire Streaming maximum minimum filter using no more than three comparisons per element Nordic Journal of Computing 13 4 328 339 2006 8 13 2 Plugin BlackTopHat Class to perform the morphological black top hat on the input image extracts dark structures This function performs the morphological black top hat BTH f feB f i e the difference between a closing of the image f and f The black top hat can serve for extracting small dark structures The term small is me
201. t ValueMap e Outpin 1 output ValueMap Parameters key string entry key to be added to updated in the ValueMap value string value to be set at the entry key 8 15 2 Plugin BoundingBox Node to determine bounding boxes in the input image and to draw them into the output image Determines bounding boxes in the input image and draws them into the output image By default the input image will be treated as containing non zero foreground pixels In this case the bounding box for the whole foreground area is being detected By setting the parameter label to true the input image will be treated as a label image In this case for every labeled region a separate bounding box is created The output image can contain either filled or non filled bounding boxes e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of the same type as the input image Parameters bg_ value for the background i e area not belonging to the bounding box es in the output image value double By default it is set to 0 fg_ value for the pixel belonging to the bounding box es in the output image value double By default it is set to 1 label bool defines whether the input image is treated as a label image or not e true every labeled region is treated separately and as many bounding boxes as labels are drawn e false default all non zero pixels are considered as the image
202. t determines the spline By default it is set to 10 74 Algorithm Documentation 8 7 Features Plugins fg_ Determines the gray value of the spline s in the output image value double By default it is set to 1 0 bg_ Determines the gray value of the background in the output image in case of fill_bakground is value double set to true By default it is set to 0 0 fill_ Determines whether the spline s are drawn into the input image set to false or in an image bakground bool filled with bg_value with the same size and type as the input image set to true By default it is set to false verbose bool Determines whether some calculation information is printed out on the screen By default it is set to false 8 6 12 Plugin Value Node to write a given value to the output This node is useful e g to generate a parameter for another node or sub graph Example of the node Value e Outpin 1 Value of type long double bool or string Parameters Determines the value to be put on the output pin By default it is set to 0 value RR acre 8 7 Features P 8 7 1 Plugin Abis lugins This node shrinks the selected label to width x height pixels Inpin 1 Input image of type IMAGE_GREY_F Inpin 2 Input label image Each gray value is interpreted as a label class pixel with the same gray value therefore belong to one class Outpin 1 Output image of ty
203. t image has the same depth as the first input image the height corresponds to the number of non zeros in the label image and width 1 e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Label image of type IMAGE _GREY_F or IMAGE_GREY_8 e Outpin 1 Output images of the same type as the input image 8 10 23 Plugin Serialize Node to serialize an image i e arrange the data in a one dimensional vector serializes the image data i e the data is being arranged into a one dimensional vector The orientation of the vector is defined by the parameter direction e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE_GREY_F containing the redistributed data Parameters direction string direction of the resulting vector Possible values are X Y and Z By default this is set to Z 113 8 10 Manipulation Plugins Algorithm Documentation See Also Deserialize transform in the opposite direction 8 10 24 Plugin Shrink Node to shrink an image by a factor two in all dimensions Shrinks an image by a factor two in all dimensions The parameter mode specifies the way the output pixel values are computed e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input image Parameters mode string defines the way the output pixel values are computed SKIP Every second input pixel is simply omit
204. ta from the string Parameters data_ Containing the image data string string By default it is setto100 n010 n001 158 Algorithm Documentation 8 15 Utility Plugins 8 15 44 Plugin TJHoughCircle Class to find circles using the hough transform If the pixel is potentially a pixel of the circumference if the lenght of the gradient exceeds the limit and the second input image is not 0 it draws a line above this pixel with the direction of the gradient Its lenght is given by m_max_radius and m_min_radius e Inpin 1 input image of type IMAGE_GREY_F Outpin 1 Outpin 2 Outpin 3 Note The input image must be of type IMAGE _GREY_F The two input images must have the same size Parameters max_radius This parameter determines the maximal radius of the cone and thus decides the size of the 3D houghspace By default it is set to 100 min_radius This parameter determines the minimal radius of the circle and thus decides the size of the lines By default it is set to 20 limit This parameter is a marginal value The lenght of the gradient must achieve this limit before the line is drawn threshold_ This parameter is also a marginal value If a line s maximum is higher than threshold_ percent percent x the highest maximum it is recogniced as potencially centre By default it is set to 50 Direction This parameter specifies in which direction the line is dran It can be
205. ted MAX The output pixel value is the maximal value of a 2x2x2 neighborhood of the original input pixel MAXFAST The output pixel value is the maximal value of a 2x2 neighborhood of the original input pixel This method also works for 3d images but is slightly faster than MAX because the maximum is sought only in the x y plane MIN The output pixel value is the minimal value of a 2x2x2 neighborhood of the orig inal input pixel MINFAST The output pixel value is the minimal value of a 2x2 neighborhood of the original input pixel This method also works for 3d images but is slightly faster than MIN because the minimum is sought only in the x y plane MEDIAN A 2x2 neighborhood of the original input pixel is considered and these four pixel values are sorted The output pixel value is calculated as the average of the two non extremal values AVERAGE The output pixel is the average value of a 2x2x2 neighbourhood of the original input pixel By default it is set to SKIP See Also Resize a scaled image resize Scale a centered image resize keeping the original image dimensions 8 10 25 Plugin Split Class to split an image into two parts along one of the axis Splits an image into two parts along the given direction The size of the resulting images is determined by the parameter split_ratio e Inpin 1 Input image of type IMAGE _GREY_F IMAGE GREY_8 IMAGE _GREY_16 or IMAGE_G REY_32 e Outpin 1 First output
206. ter_y long Determines the y coordinate of the center of the ball It will be used if the parameter auto does not initiate the automatic determination of the center coordinate in y direction By default it is set to 0 center_z long Determines the z coordinate of the center of the ball It will be used if the parameter auto does not initiate the automatic determination of the center coordinate in z direction By default it is set to 0 auto string Determines whether the center of the image is used as the center of the ball in any dimension If auto is set to X center_x will be in the middle of the image width if auto is set to Y center _y will be in the middle of the image height and if auto is set to Z center_z will be in the middle of the image depth Similar behaviour for auto set to XY XZ YZ or XYZ By default it is set to OFF radius long Determines the radius of the ball By default it is set to 50 bg_ Determines the gray values in the background outside the ball of the output image value double By default it is set to 0 0 fg_ Determines the gray values in the foreground inside the ball of the output image value double By default it is set to 1 0 8 6 2 Plugin Box Node to draw a rectangle or a box and to set background and foreground with given values A rectangle or a filled box is drawn into the output image The remaining 6 parameters size_x size_y size_z offset_
207. tering You can start the graph in two ways By clicking on the Start Graph button in the menu bar all the nodes of the graph are executed and you can see the results immediately The nodes can be executed step by step by clicking on the green status field of each node In the following we describe this example in detail Each of the five boxes in the ToolIP workspace the nodes of the graph represents an image processing algorithm while the edges between these nodes visualize the data flow The graph is shown in figure 3 2 The leftmost node ReadImage is the source of the data and reads an image from a file In our example the image is an 8 bit integer gray value image of size 512x512 pixels If you are running ToolIP in demo mode see 2 3 2 only the upper left corner with size 256x256 is read The second node ConvertType converts this image to a floating point data type This is necessary since the third node IsoNonlinDiffusion works with floating point precision This node implements the functionality of an adaptive simplification and denoising of the image data The remaining two nodes Display provide the displays of the converted image in floating point precision and the resulting simplified image After showing how to execute a graph we are going to take a look at how to build a new graph in the next section 3 2 Building Your Own Graph After starting ToolIP the graph editor starts with an empty workspace as already see
208. ters for your graph and add comments If you are working on a subgraph the menu box will be called Subgraph Parameters and you can define parameters for your sub graph Parameters of nodes inside a subgraph can be defined as parameters of the subgraph This option is described in detail in section 5 1 2 4 6 Log Window In the log window the entire course of the program is recorded In here error messages warnings and possible status output of the nodes are displayed You can clear the messages from the log window by pressing the brush button at the bottom right of the log window Additionally to the log window the session is logged to a file in the user s appdata directory On Windows the file can be found in C Users YOUR_USERNAME AppData Roaming ITWM ToolIP 1log On Linux the file can be found in SHOME ITWM ToolIP 1log 35 4 6 Log Window Graphical User Interface Figure 4 10 Graph Parameters Log Safe Mode is now disabled Timing deactivated Loaded C ITWM doc examples diffusion tip PReadImage This is the demo version PReadImage The input image is restricted to the maximal size 256x256x8 97 Figure 4 11 Log window 36 Chapter 5 Nodes and Specifications In the following chapter the different types of nodes and their functionalities are being introduced In the first section the handling of the basic plugins and the corresponding paramet
209. the current position is image width pos_x By default it is set to O pos_y long Determines the y coordinate of the pixel from where to read the gray value Negative values are counted from the end of row i e the current position is height pos_y By default it is set to 0 pos_z long Determines the z coordinate of the pixel from where to read the gray value Negative values are counted from the end of row i e the current position is depth pos_z By default it is set to 0 out_type string Determines the type of the output gray value Possible types are AUTO depending on the input type a long value for IMAGE_GREY_8 or a double value for IMAGE_GREY_F is privided as output DOUBLE LONG BOOL especially useful as input of flow control elements as they accept only bool values as conditional input or STRING By default it is set to AUTO precision long Determines the numerical precision maximum number of nonzero digits to be used by the conversion from numerical values to a string By default it is set to 10 8 6 9 Plugin Point Node to write a gray value at a specific position in an image Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE_GREY_F or IMAGE _GREY _ 8 Inpin 2 Optional second input image encoding the coordinate s of the pixel s to be set Must be of type IMAGE _GREY F Inpin 3 Optional third input image encoding the gray values
210. the label assignment is performed by the node Labeling producing a label image Image regions can be characterized by their geometry shape of the region or by their content values of the pixels they contain Features like form factor area boundary length orientation deal with the geometry aspect Features like average variance entropy or the Haralick features deal with gray values their distribution and spacial arrangement Once a characterization of the regions has been obtained further algorithms like clustering or classification can be applied to detect common features or classify the regions according to specific criteria 8 2 7 Filter The idea of filtering is to replace the value of a pixel by combining the values in its neighborhood How the neighborhood is defined depends on the specific filter The filter function can be a linear combination of input values linear filter or a more general nonlinear function Filtering is typically used in the initial steps of the processing chain It is a powerful technique for image correc tions image restoration and denoising Moreover special filters can be used to detect and characterize relevant structures as for instance edges corners or local extrema Applying some filtering can be also helpful to facilitate segmentation or analysis at later stages The library provides several standard linear e g Average Gauss and nonlinear e g Median filters as well as filters based on par
211. the text By default it is set to 0 position_y long y coordinate of the upper left corner of the text By default it is set to 0 scale double scaling for the size of the text By default it is set to 1 text string text to be written into the image By default it is set to IMAGE value long pixel value to be used for the text By default it is set to 255 blending string method to be used for calculating the output pixel value from the input image and the text string Avalable methds are e OVERLAY default text replaces the input data e XOR bit wise xor operation between input data and text e DARKEN text value subtracted from the input data e LIGHTEN text value added to the input data Credits This plugin uses the FreeType library For additional information see Third Party License 141 8 15 Utility Plugins Algorithm Documentation 8 15 8 Plugin FindBalancePoint Node to find the respective balance points of regions in the first input image given as labeled regions in the second input image A user defined number of balance points wiil be derived from the first input data image using the labeled regions from the second input image The balance points are sorted in ascending order by their gray value and the number will be restricted by the number of labels Based on the parameter type the output will either be an image of the same size as the input image with the balance p
212. tiTh Node to automatically segment an image into multiple regions The mutual information between the pixel values of the input image and the pixel labels in the result image is maximized Segments the input image into a given number of regions The regiuons are defind by thresholding the grey values using a list of thresholds The thresholds are choosen so as to maximize the mutual information between the original pixel values and the pixel labels in the result image e Inpin 1 Input image of type IMAGE_GREY_F IMAGE _GREY_8 or IMAGE_GREY_16 e Outpin 1 Output image of the same type and size as the input image Parameters method Determines which measure will be used to quantify the mutual information It can be chosen out of 1 ENT Entropy lt H a H b H a b gt 2 SSD Sum Squared Differences lt p a p b p a b gt gt th_count Specifies the number of thresholds th_count is equal to the number of resulting image regions 1 th_divide_by All thresholds will be divided by this parameter 136 Algorithm Documentation 8 14 Segmentation Plugins Note Will be very slow for 16 bit images due to full search through all gray levels 8 14 4 Plugin Otsu Node to determine an adaptive global threshold to binarize the input image Otsu s method is designed to separate foreground from background It selects a threshold so that the variance between the resulting classes is maximi
213. tial differential equations PDEs 8 2 8 Labellmage In various applications an image contains more than one region of interest It is often useful to consider these re gions separately This is possible with the Labellmage plugin group One of the most important nodes is Labeling where labels are created from a binary image by incrementally numbering all connected foreground components Further plugins from this group can be used to assign color size or specific values to these regions Another frequently used node from the current section is FindMax which can be used to extract the parameters of lines and circles when combined with Hough and HoughCircle Note The toolbox Labellmage does not have its own documentation section You find the nodes BoundingBox FindMax FindBalancePoint Labeling ZoneList in Chapter Utility Plugins the node Hist in Chapter Features Plugins and the nodes LabelToColour LabelToFeature LabelToSize LabelTo Value in Chapter Manipulation Plugins 8 2 9 Manipulation The manipulation group of nodes contains various tools to manipulate either the coordinate system or the observa tion window of an image The range of functionality of these nodes spans from simple concepts such as translation or rotation up to non linear coordinate transformations such as CartesianToPolar The manipulation nodes find their applications as subroutines in almost all image processing graphs They are very versatile which rend
214. tion feature As soon as you type more than two characters in the search box a list of matches for your search query will pop up You can Drag amp Drop the entries from the auto completion list directly into the workspace Also adding the selected entry by hitting Enter 34 Graphical User Interface 4 5 Workspace 4 5 Workspace diffusion tip C tedertip O 7 El is E oj _ 4 pol pee IA o aar A oe 4 _ H von P es Pate wt Sa DL a L dl 273 8 _ Figure 4 9 ToolIP s workspace In the workspace the user can include the required nodes and arrange them into graphs see figure 4 9 At the top of the workspace window the respective tabs are listed Each tab contains a graph or a subgraph The green triangle in the upper left corner allows the user to change the tab into a floating window By clicking on the triangle the graph will be inserted in the tab bar again The save state of the open graph is indicated by a sign in its tab If an asterisk icon is present the graph was changed and should be saved before closing the tab Whether the tab contains a main graph or a subgraph can be recognized by the corresponding tab icon 4 5 1 Graph Parameters By clicking on the blue rectangle in the top right corner the menu box Graph Parameters is opened as shown in figure 4 10 Here you are able to define new parame
215. tion angle for the eigensystem the dominant eigenvalues and the eigenvalues with smaller modulus 101 8 9 Filter Plugins Algorithm Documentation e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Rotation angle for the eigensystem as image of type IMAGE_GREY_F e Outpin 2 Dominant eigenvalues as image of type IMAGE_GREY_F e Outpin 3 Eigenvalues with smaller modulus as image of type IMAGE_GREY_F Parameters noise_scale_ Sets the standard deviation for Gaussian pre smoothing kernel sigma double difference_ Defines the derivative approximation scheme By default it is set to SOBEL scheme string integration_ Sets the standard deviation for Gaussian post smoothing kernel scale_ rho double convolution_ Cutoff precision for Gaussian kernels precision double See Also StructureTensor2D 8 9 26 Plugin Variance Node to compute the variance of the input image Computes the variance of the input image by using an averaging window The half width of the averaging window can be arbitrarily set e Outpin 1 Input image of type IMAGE _GREY_F e Outpin 1 Output image of type IMAGE _GREY_F Parameters step long Determines the half width of the averaging window By default it is set to 10 8 9 27 Plugin ceShock_IsoNonlinDiff Node to apply a combination of the coherence enhancing shock filter and the isotropic nonlinear diffusion on the input image Applies a c
216. to the given template The similarity index is computed from the joint gray level histogram using correlation ratio as measure of statistical dependence The function works best with grey value data e Inpin 1 Image where regions should be found Must be of type IMAGE_GREY_F Input is mandatory e Inpin 2 Template regions from first input image are matched to Must be of type IMAGE_GREY_F Input is mandatory e Outpin 1 Output image is also of type IMAGE_GREY_F and has the same size as second input image Parameters scale parameter that determines the sampling rate of the input image By default it is set to 10 range_x parameter that determines the search range of the translations in the x direction The actual range is obtained by multiplying with the scale parameter By default it is set to 5 range_y parameter that determines the search range of the translations in the y direction The actual range is obtained by multiplying with the scale parameter By default it is set to 5 tx_start parameter that determines the initial image translation in the x direction By default it is set to 0 ty_start parameter that determines the initial image translation in the y direction By default it is set to 0 print_cr if selected the correlation ratio is printed to stdout By default it is set to false mode parameter that determines the similarity measure to use to perform the matching Possible values
217. tom tab you can see which values are allowed for the zoom 8 17 2 Plugin Display_vtk PNode displays an image Parameters transferfunction Selection of the transfer function initially used Admissable values Grayscale 12 Colors This plugin expects one input image displays it 8 17 3 Plugin Display_vtkWindow No description available 8 17 4 Plugin Load Node opens a file dialog and loads a CImage at its output stack The node Load can be used to load images By starting the plugin the Open Image dialog window opens where a image file can be loaded Currently supported image types are ppm pgm jpg bmp tif and iass By default the shown files are restricted to the supported image types Parameters path Shows the path of the currently loaded image 8 17 5 Plugin View Node to display an image This node can be used to view an image For the image view the parameters described below can be set in the parameter window or directly in the view image window Parameters Normalize If this box is activated the image will be normlised for visualisation Zoom_widget Width The width for the loop function Height The width for the loop function Zoom Describes the zoom factor for the image display 8 18 Plot Plugins 8 18 1 Plugin Plotview No description available 166 Chapter 9 Summary In this manual we introduced the
218. tput image equals input image 8 10 18 Plugin Resample Resamples an image by using a pixelwise vector shift Resamples an image according to shift information given by three input images one for each direction The output image contains the possibly type casted pixel values from the first input image input using the shift vector defined by the second shift_x third shift_y and fourth shift_z image i e output x y z input x shift _x y shift_y z shift_z For shifts outside the input image domain the pixels are set to bg_value Note Input image s must be of type IMAGE_GREY_F or IMAGE_GREY_8 Float valued shifts will be rounded down to the nearest integer Using the parameter interpolation a data interpolation is performed e Inpin 1 First input image of type IMAGE _GREY_F or IMAGE _GREY_8 containing the data to be resampled Inpin 2 Second input image of type IMAGE _GREY_F or IMAGE _GREY_8 containing the displacement in x direction Inpin 3 Third input image of type IMAGE_GREY_F or IMAGE_GREY_8 containing the displacement in y direction Inpin 4 Fourth input image of type IMAGE_GREY_F or IMAGE_GREY_8 containing the displacement in z direction If this input image is not assigned the shift value will be set 0 Outpin 1 Output image of type as the first input image Parameters bg_ This parameter specifies the background value for those pixels with undefined values value double long By defa
219. ts e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of type IMAGE _GREY_F containing the 1d histogram Parameters range_min long lower bound of values to be taken into account By default it is set to 0 range_ upper bound of values to be taken into accountd max long By default it is set to 255 bin_count long defines the number of histogram bins By default it is set to 256 normalize bool defines whether the resulting histogram will be normalized to sum 1 By default it is set to false Note Only values gt 0 are taken into account See Also Histogram2d for the joint histogram of two images 8 15 13 Plugin Histogram2d Node to compute the gray value joint histogram of two images A joint gray value histogram of two input image with bin_count equally distributed bins is created on a user defined pixel range The output is a 2d image which gray values correspond to the bin counts Note the pixel range and number of bins are assumed to be equal for both images e Inpin 1 first input image of type IMAGE _GREY_F or IMAGE_GREY_8 e Inpin 2 second input image of the same type as the first input image e Outpin 1 Output image of type IMAGE _GREY_F containing the 1d joint histogram 144 Algorithm Documentation 8 15 Utility Plugins Parameters range_min long lower bound of values to be taken into account By default it is set
220. tted e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 Second input image providing the new image dimensions width and height e Outpin 1 Output image of the same typae as the input image containing the redistributed data 8 10 15 Plugin PolarToCartesian Transforms an image from polar to cartesian coordinates Transforms an image in polar coordinates r to an image in cartesian coordinates x y The first row in the input image corresponds to the line starting from the image center in positive x direction e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input image 109 8 10 Manipulation Plugins Algorithm Documentation Note Currently only available for 2d images Parameters ignore_ Defines whether zeros in the input image are ignored i e the corresponding output pixel is zero bool set to zero or not By default it is set to false See Also The node CartesianToPolar implements the transform in the opposite direction 8 10 16 Plugin Reorient Node to reorient an image using the main orientation of the data in a sencond input image Reorient an image using the main orientation of the data in a sencond input image The first grey valued input image is rotated about this main direction The parameter resize defines whether the original image size is retained unchanged or the output image size is adjusted
221. tterns present in the image similar to the given binary template This function enhances binary patterns present in the image similar to the given binary template The similarity index is computed on the basis of maximum value of the displacement histogram The function works with binary data only e Inpin 1 First input image of type IMAGE GREY_F e Inpin 2 Second input image of type IMAGE_GREY_F e Outpin 1 Output image of type IMAGE _GREY_F 116 Algorithm Documentation 8 11 Matching Plugins Parameters step_x parameter that determines the sampling rate of the input data in the x direction By default it is set to 1 step_y parameter that determines the sampling rate of the input data in the y direction By default it is set to 1 smooth parameter that determines the size of the displacement histogramm first smoothing filter By default it is set to 0 smooth2 parameter that determines the size of the displacement histogramm first smoothing filter By default it is set to 0 smooth3 parameter that determines the size of the displacement histogramm first smoothing filter By default it is set to 0 normalize if selected the result image is normalized by the number of pixels in the template image By default it is set to false 8 11 3 Plugin Match Class to find image regions with data similar to given template This function finds image regions with data that are similar
222. ture with this number column in the output image in the line of the region is incremented Finally the histogram is normalized that means all values are divided by the number of pixels of the respective region e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image 83 8 7 Features Plugins Algorithm Documentation e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 8 number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 20 Plugin RotHistVar This node calculates the minimal variance of the 2D histograms of the original image and the rotated original image Every region is rotated by 10 and the variance between the rotated and the original image is calculated e Inpin 1 First input image must be of type IMAGE_GREY_F mandatory e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features in this case 1 number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 21 Plugin Rough
223. two modes 1 if there is only one input image it performs the Expectation Maximization algorithm on the input image as matrix of data row vectors It estimates the parameters for the gaussian mixture of the input image the output image contains the cluster centers means the weights for each cluster and the inverse covariance matrix as row vectors 2 if there are two input images the first input image contains the data as row vectors and the second input image contains the parameters for each cluster the plugin evaluates the gaussian mixture with the given parameters for each vector Inpin 1 First input image of type IMAGE _GREY_F or IMAGE_GREY_8 Inpin 2 Second input image of type IMAGE_GREY_F or IMAGE _GREY_8 If the pixel values differ more than 3 0 you should take the LOG of the pixel values to avoid that x mean gets too big where x is a data row vector Outpin 1 Output image of the same type as the first input image Parameters cluster_ number of clusters count long By default it is set to 2 iteration long number of iterations By default it is set to 100 eps double is added to the diagonal of the covariance matrix By default it is set to 0 01 verbose bool print function feedback to log area delta double if the difference between the last loglikelihood function and the new loglikelihood is less than delta the algorithm will be stopped By default it is set to 0 001
224. ult it is set to 0 interpola This parameter determines whhat kind of interpolation if any will be used Possible values tion string are NONE and BILINEAR XY plane By default ist is set to NONE 8 10 19 Plugin Resize Resizes an image Resizes an image by given scales in x and y direction or optionally with respect to the size of a second input image The output is comupeted using a bilinear interpolation e Inpin 1 First input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Inpin 2 OPTIONAL Second input image of type IMAGE_GREY_F or IMAGE_GREY_8 specifying the dimension of the output image 111 8 10 Manipulation Plugins Algorithm Documentation e Outpin 1 Output image of type as the first input image Parameters scale_x double resizing scale in x direction By default it is set to 1 scale_y double resizing scale in y direction By default it is set to 1 keep_ratio bool controls whether in case of a second input image the aspect ration of the resized image is kept or not For keep_ratio true resizing is done by the same smaller scale in both directions By default it is set to false See Also Scale a centered image resize keeping the original image dimensions Shrink resize by a factor 2 using a specified method to compute the output values 8 10 20 Plugin Rotate Node to rotate an image clockwise around a given angle Rotates an image clock
225. ult it is set to NULL 150 Algorithm Documentation 8 15 Utility Plugins See Also ReadASCII to read data from an ASCII file SAvelmage to save data to an image file format 8 15 27 Plugin ReadMap Node to extract single entries from a ValueMap This node copies the ValueMap entry with the given key to the output map If the requested key does not exist in the input map an exception is thrown Currently only ValueLong ValueDouble ValueString and ValueBool are supported e Inpin 1 input ValueMap e Outpin 1 output ValueMap containing the selected key Parameters key string The key of the value map entry to be extracted By default it is set to NULL verbose bool print function feedback to log area 8 15 28 Plugin ReplaceValue Node to replace one specific pixel value with another one Replaces one pixel value in the input image with another one e Inpin 1 Input image of type IMAGE_GREY_F e Outpin 1 Output image of the same size and type as the input image Parameters src_ source value to be replaced value double long By default it is set to O dst_ destination value replacing the src_value value double long By default it is set to 0 8 15 29 Plugin RingBuffer This node creates a ring buffer for images Incoming images are appended in a ring buffer to an output image in a given coordinate direction The size of the ring buffer is fixed
226. ults in inf for float ror bool result image or O for integer result image By default it is set to true i e division by zero is treated as error 8 3 6 Plugin Equal Node to compare two images pixel wise or an image and a scalar Results in an image holding two pixel values One is indicating equality the other one inequality If two input images are given they will be compared pixel wise If the pixel values match the result at this position is set to the value given by parameter true_value Otherwise the result at this position is set to the value given by parameter false_val e Inpin 1 Inp ue If only one input image is given each pixel will be compared to the parameter equal ut image of type IMAGE_GREY_F or IMAGE_GREY 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 and must be of the same size as first input image e Outpin 1 Output image of the same type and size as input image s For mixed input image types output type is always IMAGE _ GREY F Parameters This parameter is only used if just one input image is given It must be a constant and the equal double long input pixel values will be compared to it It will implicitly be cast to double and is set to 0 0 by default upcast bool Indicates whether the output image is cast to float By default it is set to false epsilon double Sets numerical precision for the comparison More precisely if epsilon
227. us box an executing ban is activated i e further processing of the following branch is being prevented This functionality is useful when during execution certain branches shouldn t be processed It can be used in combination with the tool bar actions Start Stop the graph and Execute consecutively lightning bolt 37 5 1 Plugins Nodes and Specifications After execution the color of the status field of the nodes Display View and Plotview will change to orange By clicking on it the display window will disappear 5 1 2 Parameter Button By clicking on the blue parameter button the parameter window see figure 5 2 will open In this window all parameters for the plugin can be set Under the tab Description is a brief description of the node W Multith 1 Parameters Image gt Segmentation gt MultiTh Parameters Mappings Comment Description method string l ENT th_count long th_divide_by double 1 0 New Parameter Run Figure 5 2 Parameter window of a plugin node Setting parameters is most comfortable using the tab Parameters Behind each parameter the expected type is shown in parentheses It is also possible to edit the parameters directly in XML notation by using the tab XML The corresponding XML file of the node will be opened and can be changed The tab comments can be used to add notes to the current plugin This might for instance be information about
228. ut image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types the output type is IMAGE_GREY_F In case of two input images the size of the output image is the minimum of the respective input image sizes Parameters This constant value will be added to the first input image in case only one input image is add double long provided By default it is set to 0 0 upcast bool Indicates whether the output image is cast to float By default it is set to false 8 3 4 Plugin And Node to apply the logical AND operation on two images of the same size Applies the logical AND operation on two images of the same size If no second image is given the first image and an arbitrary value of the parameter bitmask will be concatenated by AND e Inpin 1 Input images of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Input images of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as the input images Parameters bitmask string binary or hexadecimal string applied to each pixel in case no second input is given By default it is set to OXF FFF no change upcast bool Indicates whether the output image is cast to float By default it is set to false run_flag bool INTERNAL Indicates whether the node already run before By default it is set to false 8 3 5 Plugin Divide Node to divide two images pixel w
229. utpin 1 Output image of type IMAGE_GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information and meta information for each output feature Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 15 Plugin LBPHist Node to compute the Local Binary Pattern LBP histogram This plugin computes the local binary pattern histogram as described by Ojala et al in 1994 Out of the gray value image an 8 digit binary pattern image is created In each pixel the 8 neighbors are described by their value relative to the pixel itself 1 if it is lower 0 if it is bigger Over the 8 digit binary pattern subsequently a histogram is constructed The node can be useful to characterize texture data e Inpin 1 First input image must be of type IMAGE_GREY_F e Inpin 2 Second input label image e Outpin 1 Output image of type IMAGE _GREY_F with n x m pixel where n is the number of labels number of rows and m is the number of features number of columns e Outpin 2 Value vector with the same information Parameters verbose bool Prints function feedback to log area By default it is set to false 8 7 16 Plugin Median computes the median of grey values for all regions in an image Note if the number of pixels in the region is even then the right
230. value informations of the points on the circle If a pixel value of a point on the circle is larger than the reference pixel value it is coded with 1 otherwise with 0 The resulting binary pattern is assigned to the reference pixel For 3D images the function is being applied plane by plane e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of type IMAGE _GREY_F or IMAGE_GREY_8 Parameters radius long Sets the radius around the midpoint By default it is set to 1 neighbors long Sets the number of points on the circle By default it is set to 8 8 9 17 Plugin LocalBinaryPatterns Node to compute the local binary patterns LBP of the input image Computes the local binary pattern of the input image The reference pixel gray value in the middle of a circle is binary coded by the pixel gray value informations of the points on the circle If a pixel gray value of a point on the circle is larger than the reference pixel gray value it is coded with 1 otherwise with 0 The resulting binary pattern is assigned to the reference pixel The LBP can be computed invariant of the rotation of an image The boundary is treated with reflection For 3D images the function is being applied plane by plane e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of type IMAGE_GREY_32 IMAGE_GREY_16 or IMAGE_GREY_8 depend ing on parameter neighbors Parameters
231. vergence is guaranteed for any image If reconstruction by dilation is used the result will always be below the original image mask in every pixel If reconstruction by erosion is used the result will always be above the original image mask in every pixel The effect of these transformations can be very different depending on the choice on the mask image e Inpin 1 marker image usually some processed version of the original image IMAGE _GREY_8 or IMA GE_GREY_F e Inpin 2 mask image usually the original image IMAGE_GREY_8 or IMAGE_GREY_F e Outpin 1 reconstruction result Parameters method This parameter determines which reconstruction method will be applied e DILATION e EROSION By default it is set to DILATION Note This is an important sub routine in many geodesic transformations So usually this will be called from some other algorithm node e g fill holes cut hills h extrema You may use this node directly to construct other custom transformations Literature e P Soille Morphological Image Analysis Ch 6 Springer 1999 133 8 13 Morphology Plugins Algorithm Documentation 8 13 16 Plugin SelfDualTopHat Class to perform the morphological selfdual top hat on the input image This function performs the morphological selfdual top hat SDTH f fB foB i e the difference between a closing and an opening of the input image f The selfdual top hat can serve
232. wise around a given angle The parameter resize defines whether the original image size is retained unchanged or the output image size is adjusted by the rotation The pixel value for those pixels that may not be filled by the rotated image can be set e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Outpin 1 Output image of the same type as the input image Note Currently only implemented for 2d images Parameters an the angle used for the clockwise rotation By default it is set to 0 gle doubble long bg_ pixel value for those pixels that are not filled by the rotation By default it is set to 0 value doubble long resize bool defines whether the original image size is retained unchanged or the output image size is adjusted by the rotation By default it is set to false method string defines the interpolation method being used Available methods are BILINEAR FAst and easy 2x2 neighborhood interpolation e BICUBIC smoother 4x4 neighborhood interpolation e CUBIC_SPLINES more accurate method using cubical splines By default it is set to BILINEAR verbose bool print function feedback to log area By default it is set to false See Also Reorient implements a special rotation using the main direction of a second input image as rotation angle 8 10 21 Plugin Scale Class to scale the image data 112 Algorithm Documentation 8 10 Manipulation Plugins Sca
233. with the value of the parameter multiply e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_ 8 e Inpin 2 Optional second input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of the same type as input image s For mixed input image types output type is always IMAGE_GREY F In case of two input images the size of the output image is the minimum of the respective input image sizes Parameters upcast bool Indicates whether the output image is cast to float By default it is set to false multi Value to multiply the input image with if only one image is given It will be cast to double ply double Nong By default it is set to 1 0 8 3 12 Plugin Negative Node to compute the negative of the input image pixel wise Computes the negative of the input image pixel wise The input image gets subtracted pixel wise from the parameter value shift e Inpin 1 Input image of type IMAGE_GREY_F or IMAGE_GREY_8 e Outpin 1 Output image of same type and size as input image 63 8 3 Arithmetic Plugins Algorithm Documentation Note If the input image is of type IMAGE_GREY_8 the subtraction is done with respect to 256 possible gray values 0 to 255 If the input image is of type IMAGE_GREY_8 shift is rounded down to the next integer Parameters Value to subtract the pixel values from It is cast to double By default it is set to 0 0 thus shift double long only the sign
234. x An example of the Box Plugin e Inpin 1 Input image to determine type and size of the output image Must be of type IMAGE _GREY_F IMAGE_GREY_8 IMAGE_GREY_16 IMAGE GREY_32 or IMAGE_GREY_D e Inpin 2 Second input image optional with 4 columns and n rows encoding the coordinates of n boxes to be drawn The box coordinates are specified by four entries in each row These entries define the coordinates of left right top and bottom corners of each box It must be of type IMAGE_GREY_F 68 Algorithm Documentation 8 6 Data Plugins e Outpin 1 Output image of same type and size as the input image Note Tf the box lies partially outside of the image it will be restricted to the image area Boxes that lie completely outside of the image are ignored Parameters offset_x long Determines the starting point of the box in x direction By default it is set to 0 offset_y long Determines the starting point of the box in y direction By default it is set to 0 offset_z long Determines the starting point of the box in z direction By default it is set to 0 size_x long Determines the end point of the box in x direction If size_x lt 0 the box ends at the image boundary By default it is set to 1 size_y long Determines the end point of the box in y direction If size_y lt 0 the box ends at the image boundary By default it is set to 1 size_z long Determines the end point of the box i
235. y gt RAGBI RAGBI can be added into the current workspace via drag amp drop More details in the next section Custom Ui Plugins 4 2 RAGBI Generic gt Utility gt unGraph pul Qucpuz Graph Psramezers Graph CURRENT LF MAP 1 Inp t y Threaded execution U Resu t Directory mp Resu t pattern 11_ wd pxm Ty g Rep ace xisling uulpuls lun Hcp 22load G sph O cose Figure 4 6 The RunGraph window Figure 4 6 shows the RABGI window Various things can be customized most importantly the graph that is used as well as input and output images How this is done is now explained in detail 1 Selection menu to navigate to the graph that shall be executed default is the graph currently active in ToolIP 2 Button to reset the graph that shall be executed to the default i e the currently active ToolIP graph CUR RENT TLP MAP 3 Input image area Number of input tabs corresponds to the number of input ports of the graph 30 Graphical User Interface 4 2 RAGBI a Curser to move the selected image in the list up down b Selection menu to choose input images This button is inactive if your graph has no input port c Delete selected images from list d List of pictures 4 Number of threads used to run graph Default is to use all available threads value 0 5 Path to output directory i e folder where images outputs are saved 6 Naming convention for the saving the output i
236. ype conditions are allowed In default mode every input is forwarded to its corresponding output if the condition is true However if you click the true false button once so that it displays false it will forward the input data if the condition is false If no node is connected to the condition pin it will be considered to be true thus forwarding data if the true false button is set to true and blocking further execution if it is set to false By default the switch node comes with only one pair of input output pins If additional input output pairs are needed they can be added by pressing the button If you press this button while holding the Shift key you can remove a pair of input output pins again ReadASCH PixelValue Paral ReadIm aqe C doc exampl Figure 5 23 Graph using the data flow control Switch An alternative way to construct a data flow as shown in 5 19 is by using two switch nodes as shown in 5 23 The top flow puts the input image on the merge node in case the boolean is false Otherwise the data stream at the bottom applies a gaussian smoothing on the input image Only one of the streams is being transferred to the display plugin 47 5 3 Data Flow Control Nodes and Specifications 48 Chapter 6 Further Examples In this chapter we take a look at some further examples to point out useful tips and tricks for a better working experience with ToolIP 6 1 Interactive choice of par
237. zed while the within class variance is minimal If a second input image is given as a marker image only the areas marked by it are considered for the computation of the threshold The parameter ignore_bg determines whether the parts not marked by the second image are thresholded or set to false_value e Inpin 1 Input image of type IMAGE_GREY_8 or IMAGE _GREY_F e Inpin 2 Optional second input image of of the same type as the first image e Outpin 1 Output image of the same type as the first input image Parameters true_value Output pixel value if image values are larger than the automatically determined threshold By default it is set to 1 false_value Output pixel value if images value are smaller or equal to the automatically determined threshold By default it is set to 0 factor This parameter determines whether the computed threshold is altered before applying it to the image If factor 1 the threshold is used unchanged If factor lt 1 the threshold is diminished If factor gt 1 the threshold is augmented It will be cast to double By default it is set to 1 The factor must be positive ignore_bg This boolean value determines in case of a second input image if the background that is NOT contained in the marker image is ignored from thresholding and set to false_value By default it is set to true verbose bool prints function feedback to log area By default it is set to false 8 14
Download Pdf Manuals
Related Search
Related Contents
OPERATING INSTRUCTIONS MULTI - RANGE Q&A[地域資源活用型] - MIESC 公益財団法人三重県産業支援センター Life Fitness MTSTE User's Manual Olympus MJU 740 Samsung DVD-V6000 User's Manual Technical information Durst Rhopac 160 User's Manual Manual de instalación del programa EDDI 7 desde el disco compacto UHF帯RFIDによる災害時電子掲示板 への情報伝達に関する検討 Copyright © All rights reserved.
Failed to retrieve file