Download HALCON Extension Package Programmer`s Manual
Transcript
CHAPTER 2. OPERATOR DESCRIPTION (’DEF’-FILES) 24 Note that the slot method may contain any combination of the strings ‘split tuple’, ‘split channel’, and ‘split domain’, because an operator may be parallelized by using any combination of those three methods. However, if ‘none’ is specified with the slot method, no other string should be specified with it in order to keep the description consistent. If no slot method is filled in with an operator, it is assumed that the operator is not suitable for being automatically parallelized (“pessimistic” assumption). domain split: an unsigned integer value ; This subslot of parallelization must (only) be set for operators that are suitable for being parallelized by splitting the domain of iconic input objects (i.e. slot method contains ‘split domain’). For such operators the value of domain split assigns, whether the input domain may be split disjunctively (value ‘0’) or not. In the latter case the domain is split into several overlapping stripes (note, that the splitting of domain regions is always done row-wise). If the domain is split disjunctively, the value (> 0) of domain split assigns the index ([1..n]) of that input control parameter which determines the extent of the overlapping regions (in number of pixels) by its content. For example, for the operator eliminate min max the extent of the overlapping regions depends on the height of the filter mask. Therefore, the content of the second input control parameter (compare the operator’s description in the Reference Manuals) directly determines the extent of the overlapping regions. Thus, the slot domain split is set to ‘2’ for eliminate min max. The example below shows the whole parallelization slot for eliminate min max. parallelization process_exclusively: process_locally: process_mutual: method: domain_split: false; false; false; split_tuple, split_channel, split_domain; 2; If method contains ‘split domain’, the slot domain split must be filled in. In all other cases, the slot should be omitted! Though, we recommend to specify the whole slot parallelization, it is also possible to completely leave it out in an operator’s description. In this case, it is assumed that the operator is reentrant, i.e. it is not processed under (complete or mutual) exclusion, and that it must be processed “locally”. The latter also means that no parallelization is used when processing the operator. This assumption corresponds exactly to those which are used in the case of missing single subslots (see descriptions above). 2.2.13 complexity The slot complexity describes the complexity of the operation in terms of number of points along a contour, the area of an image region etc. complexity.english Let $F$ be the area of the input region. Then the runtime complexity is $O(F)$.; HALCON Extension Package Interface / 2000-11-16