16#ifndef __MILEDGEEXTR_H__
17#define __MILEDGEEXTR_H__
36#define M_CONTOUR 0x800L
44#define M_CHAIN_ALL_NEIGHBORS 3L
45#define M_MAGNITUDE_TYPE 10L
47#define M_SQR_NORM 4001L
49#define M_FILTER_WIDTH 109L
50#define M_KERNEL_SIZE 301L
51#define M_MAX_POWER_LOSS 0x1200L
52#define M_FILTER_MODE 122L
53#define M_FILTER_MAX_DEPTH 302L
54#ifdef M_MIL_75_COMPATIBLE
55#define M_KERNEL 0x00000200L
57#define M_KERNEL 0x00400000L
59#define M_RECURSIVE 0x00040000
61#define M_EXPONENTIAL 2
62#define M_GAUSSIAN 0x805L
63#define M_SOBEL M_EDGE_DETECT
64#define M_PREWITT M_EDGE_DETECT2
65#define M_FREI_CHEN M_ID_OFFSET_OF_DEFAULT_KERNEL + 9L
66#define M_DERICHE M_ID_OFFSET_OF_DEFAULT_KERNEL + 10L
67#define M_FILTER_SMOOTHNESS 1047L
68#define M_ACCURACY 106L
69#define M_THRESHOLD_TYPE 3000L
70#define M_THRESHOLD_MODE 33L
71#define M_THRESHOLD_VALUE_LOW 3001L
72#define M_THRESHOLD_VALUE_HIGH 3002L
73#define M_THRESHOLD_LOW M_THRESHOLD_VALUE_LOW
74#define M_THRESHOLD_HIGH M_THRESHOLD_VALUE_HIGH
75#define M_DETAIL_LEVEL 111L
76#define M_NO_HYSTERESIS 20L
77#define M_FULL_HYSTERESIS 25L
78#define M_HYSTERESIS 31L
79#define M_SAVE_DERIVATIVES 11L
80#define M_SAVE_ANGLE 12L
81#define M_SAVE_MAGNITUDE 13L
82#define M_SAVE_MASK 39L
83#define M_SAVE_CHAIN_MAGNITUDE 59L
84#define M_SAVE_CHAIN_ANGLE 60L
85#define M_SAVE_IMAGE 61L
86#define M_MASK_SIZE_X 0x0000001DL
87#define M_MASK_SIZE_Y 0x0000001EL
88#define M_FILL_GAP_DISTANCE 44L
89#define M_FILL_GAP_ANGLE 45L
90#define M_FILL_GAP_POLARITY 46L
91#define M_FILL_GAP_CONTINUITY 38L
92#define M_EXTRACTION_ANGLE 47L
93#define M_EXTRACTION_TOLERANCE 48L
94#define M_EXTRACTION_USE_POLARITY 49L
100#define M_VERY_HIGH 4L
103#define M_FLOAT_MODE 70L
104#define M_ALLIGNEMENT_MODE 51L
105#define M_TIMEOUT 2077L
108#define M_BOX_X_MIN 6L
109#define M_BOX_Y_MIN 7L
110#define M_BOX_X_MAX 8L
111#define M_BOX_Y_MAX 9L
112#define M_X_MIN_AT_Y_MIN 21L
113#define M_X_MAX_AT_Y_MAX 22L
114#define M_Y_MIN_AT_X_MAX 23L
115#define M_Y_MAX_AT_X_MIN 24L
116#define M_CHAIN_APPROXIMATION 0x00010200L
117#define M_CHAINS 0x105L
118#define M_APPROXIMATION_TOLERANCE 26L
119#define M_LINE 0x00000080L
120#define M_ARC 0x00000081L
121#define M_CENTER_OF_GRAVITY_X 34L
122#define M_CENTER_OF_GRAVITY_Y 35L
123#define M_POSITION 0x00000402L
124#define M_POSITION_X 0x00003400L
125#define M_POSITION_Y 0x00004400L
126#define M_MOMENT_ELONGATION 50L
128#define M_FAST_LENGTH 52L
129#define M_TORTUOSITY 76L
131#define M_STRENGTH 55L
132#define M_AVERAGE_STRENGTH 57L
134#define M_CONTACT_POINTS 0x102L
135#define M_CENTER_OF_GRAVITY 0x103L
136#define M_LENGTH 0x00002000L
140#define M_FERET_BOX M_FERET
141#define M_FERET_MIN_ANGLE 15L
142#define M_FERET_MAX_ANGLE 17L
143#define M_FERET_MIN_DIAMETER 14L
144#define M_FERET_MAX_DIAMETER 16L
145#define M_FERET_MEAN_DIAMETER 18L
146#define M_FERET_ELONGATION 27L
147#define M_NUMBER_OF_FERETS 63L
148#define M_CONVEX_PERIMETER 20L
149#define M_GENERAL_FERET 0x400L
151#define M_GENERAL_FERET_ANGLE 62L
152#define M_ALL_FEATURES 0x100L
153#define M_FIRST_FERET_INDEX 640L
154#define M_SECOND_FERET_INDEX 257L
155#define M_FERET_INDEX (M_FIRST_FERET_INDEX|M_SECOND_FERET_INDEX)
156#define M_NEAREST_EDGEL_X 37L
157#define M_NEAREST_EDGEL_Y 264L
158#define M_NEAREST_EDGEL (M_NEAREST_EDGEL_X|M_NEAREST_EDGEL_Y)
161#define M_FOREGROUND_VALUE 4L
162#define M_FOREGROUND_BLACK 0x100L
163#define M_FOREGROUND_WHITE 0x80L
164#define M_ANY 0x11000000L
165#define M_SAVE_CHAIN_WIDTH 28L
166#define M_TOPOLOGY 28L
167#define M_AVERAGE_WIDTH 104L
170#define M_SORT1_UP 0x02000000L
171#define M_SORT1_DOWN 0x0A000000L
172#define M_SORT2_UP 0x04000000L
173#define M_SORT2_DOWN 0x0C000000L
174#define M_SORT3_UP 0x06000000L
175#define M_SORT3_DOWN 0x0E000000L
179#define M_MIN 0x02000000L
180#define M_MAX 0x04000000L
181#define M_MEAN 0x08000000L
182#define M_MIN_ABS 0x00200000L
183#define M_MAX_ABS 0x00800000L
184#define M_STANDARD_DEVIATION 0x10000000L
187#define M_DRAW_RELATIVE_ORIGIN_X 319L
188#define M_DRAW_RELATIVE_ORIGIN_Y 320L
189#define M_DRAW_SCALE_X 3203L
190#define M_DRAW_SCALE_Y 3204L
191#define M_DRAW_CROSS_SIZE 115L
192#define M_MODEL_FINDER_COMPATIBLE 19L
199#define M_CONTEXT_TYPE 2L
200#define M_FILTER_POWER 1048L
201#define M_OVERSCAN 53L
202#define M_OVERSCAN_REPLACE_VALUE 54L
203#define M_MIRROR 0x01000061L
204#define M_REPLACE 0x01000060L
210#define M_INCLUDE_ONLY 0x101L
212#define M_EXCLUDE_ONLY 0x102L
216#define M_ALL_EDGES 0x00200000L
217#define M_INCLUDED_EDGES 0x00400000L
218#define M_EXCLUDED_EDGES 0x00800000L
221#define M_OUT_RANGE 2L
223#define M_NOT_EQUAL 4L
226#define M_GREATER_OR_EQUAL 7L
227#define M_LESS_OR_EQUAL 8L
229#define M_INSIDE_BOX 300L
230#define M_INSIDE_CHAIN 301L
231#define M_OUTSIDE_BOX 302L
232#define M_OUTSIDE_CHAIN 303L
233#define M_EQUAL_CHAIN 0x40
234#define M_INSIDE_OR_EQUAL_BOX (M_INSIDE_BOX|M_EQUAL_CHAIN)
235#define M_INSIDE_OR_EQUAL_CHAIN (M_INSIDE_CHAIN|M_EQUAL_CHAIN)
236#define M_OUTSIDE_OR_EQUAL_BOX (M_OUTSIDE_BOX|M_EQUAL_CHAIN)
237#define M_OUTSIDE_OR_EQUAL_CHAIN (M_OUTSIDE_CHAIN|M_EQUAL_CHAIN)
238#define M_CROP_CHAIN 304L
239#define M_NEAREST_NEIGHBOR 0x00000040L
240#define M_ALL_NEAREST_NEIGHBORS 0x00000080L
245#define M_LABEL_VALUE 1L
246#define M_THRESHOLD_VALUES 3003L
247#define M_THRESHOLDS M_THRESHOLD_VALUES
248#define M_NUMBER_OF_CHAINS 0x769L
249#define M_CHAIN_MAGNITUDE 36L
250#define M_CHAIN_ANGLE 258L
251#define M_IMAGE_ID M_BUF_ID
252#define M_MASK_ID (M_BUF_ID | 0x80000L)
253#define M_ANGLE_ID 0x20000000L
254#define M_MAGNITUDE_ID 0x20000L
255#define M_FIRST_DERIVATIVE_X_ID 0x10000L
256#define M_FIRST_DERIVATIVE_Y_ID 0x8000L
257#define M_SECOND_DERIVATIVE_X_ID 0x4000L
258#define M_SECOND_DERIVATIVE_Y_ID 0x1000L
259#define M_CROSS_DERIVATIVE_ID 0x800L
260#define M_FIRST_DERIVATIVES_ID (M_FIRST_DERIVATIVE_X_ID | M_FIRST_DERIVATIVE_Y_ID)
261#define M_SECOND_DERIVATIVES_ID (M_SECOND_DERIVATIVE_X_ID | M_SECOND_DERIVATIVE_Y_ID)
262#define M_NUMBER_OF_CHAINED_PIXELS 56L
263#define M_NUMBER_OF_CHAINED_EDGELS M_NUMBER_OF_CHAINED_PIXELS
264#define M_CHAIN_CODE 58L
265#define M_FIRST_POINT_X 75L
266#define M_FIRST_POINT_Y 132L
267#define M_FIRST_POINT (M_FIRST_POINT_X|M_FIRST_POINT_Y)
268#define M_CHAIN_INDEX 67L
270#define M_CHAIN_Y 144L
271#define M_CHAIN (M_CHAIN_X|M_CHAIN_Y)
272#define M_VERTICES_CHAIN_INDEX 71L
273#define M_VERTICES_INDEX 79L
274#define M_VERTEX_X 68L
275#define M_VERTEX_Y 40L
276#define M_VERTEX (M_VERTEX_X|M_VERTEX_Y)
277#define M_VERTICES_X M_VERTEX_X
278#define M_VERTICES_Y M_VERTEX_Y
279#define M_VERTICES M_VERTEX
280#define M_NUMBER_OF_VERTICES 73L
281#define M_NUMBER_OF_VERTEXES M_NUMBER_OF_VERTICES
282#define M_NUMBER_OF_VERTEX M_NUMBER_OF_VERTICES
284#define M_BULGES M_BULGE
290#define M_NEAREST_NEIGHBOR_RADIUS 116L
291#define M_NEIGHBOR_MINIMUM_SPACING 117L
292#define M_NEIGHBOR_MAXIMUM_NUMBER 118L
293#define M_NEIGHBOR_SEARCH_RADIUS_MAX 120L
294#define M_NEIGHBOR_SEARCH_RADIUS_MIN 121L
295#define M_NEIGHBOR_POLARITY 122L
296#define M_NEIGHBOR_POLARITY_TOLERANCE 123L
297#define M_NEIGHBOR_DIRECTION 124L
298#define M_NEIGHBOR_DIRECTION_TOLERANCE 125L
299#define M_NEIGHBOR_DIRECTION_SIGN 126L
300#define M_GET_EDGELS 1L
301#define M_GET_SUBEDGELS 2L
307#define M_DRAW_LABEL 1L
308#define M_DRAW_IMAGE 2L
309#define M_DRAW_EDGES 4L
310#define M_DRAW_EDGE M_DRAW_EDGES
311#define M_DRAW_FERET_MAX 0x008L
312#define M_DRAW_FERET_BOX 16L
313#define M_DRAW_BOX 32L
314#define M_DRAW_POSITION 64L
315#define M_DRAW_CENTER_OF_GRAVITY 0x080L
316#define M_DRAW_INDEX 0x100L
317#define M_DRAW_MASK 0x200L
318#define M_DRAW_VERTICES 0x400L
319#define M_DRAW_VERTEXES M_DRAW_VERTICES
320#define M_DRAW_VERTEX M_DRAW_VERTICES
321#define M_DRAW_SEGMENTS 0x800L
322#define M_DRAW_FERET_MIN 0x1000L
323#define M_DRAW_FIRST_DERIVATIVE_X 0x2000L
324#define M_DRAW_FIRST_DERIVATIVE_Y 0x4000L
325#define M_DRAW_MAGNITUDE 0x8000L
326#define M_DRAW_SECOND_DERIVATIVE_X 0x10000L
327#define M_DRAW_SECOND_DERIVATIVE_Y 0x20000L
328#define M_DRAW_ANGLE 0x40000L
329#define M_DRAW_CROSS_DERIVATIVE 0x80000L
330#define M_DRAW_GENERAL_FERET 0x100000L
331#define M_DRAW_EDGELS 0x200000L
332#define M_DRAW_ACTIVEMIL_INDEX 0x400000L
333#define M_DRAW_VALUE 0x800000L
334#define M_DRAW_NEAREST_EDGELS 0x1000000L
340#define M_ENABLE -9997L
341#define M_DISABLE -9999L
342#define M_PACKED 0x00020000L
343#define M_SUPPORTED 0x20000000L
344#define M_AVAILABLE 0x40000000L
345#define M_TYPE_LABEL 0x01000000L
346#define M_TYPE_INDEX 0x02000000L
347#define M_ALL 0x40000000L
348#define M_DEFAULT 0x10000000L
349#define M_TYPE_LONG 0x00040000L
350#define M_TYPE_DOUBLE 0x00100000L
351#define M_TYPE_MIL_ID 0x00400000L
352#define M_NUMBER_OF_RESULTS 0x80000000L
355#define M_NO_CHECK 0x80000000L
357#define M_SAME_OR_REVERSE 5L
358#define M_SAME_EDGE 67L
360#define M_ANY 0x11000000L
361#define M_SIZE_X 1002L
362#define M_SIZE_Y 1003L
363#define M_SIZE_BAND 1005L
366#define M_SIZE_BIT 1007L
367#define M_WORLD 0x2000L
368#define M_FULL_ANGLE 78L
369#define M_SIZE_BYTE 5061L
370#ifndef M_MIL_75_COMPATIBLE
371#define M_MEMORY (M_APP_INQUIRE_SYS_START+120L)
375#define M_EDGE_CONTOUR (M_EDGE_OBJECT | 0x00000001L)
376#define M_EDGE_CONTEXT (M_EDGE_OBJECT | 0x00000002L)
377#define M_EDGE_RESULT (M_EDGE_OBJECT | 0x00000004L)
378#define M_EDGE_RESULT_BUFFER M_EDGE_RESULT
379#define M_INTERACTIVE M_NULL
408 double ControlValue);
433 void* FirstResultArrayPtr,
434 void* SecondResultArrayPtr);
486 double* SrcArrayAngle,
502 double* pArrayMagnitude,
long MIL_ID
Definition: AcqOdyssey.h:45
MFTYPE32 void MFTYPE MedgeGetResult(MIL_ID ResultId, long ResultIndex, long ResultType, void *FirstResultArrayPtr, void *SecondResultArrayPtr)
MFTYPE32 void MFTYPE MedgePut(MIL_ID ResultId, long NbEdgels, long *pArrayLabel, double *pArrayX, double *pArrayY, double *pArrayAngle, double *pArrayMagnitude, long ControlFlag)
MFTYPE32 void MFTYPE MedgeDraw(MIL_ID GraphContId, MIL_ID EdgeResultId, MIL_ID DestImageId, long Operation, long IndexOrLabel, long ControlFlag)
MFTYPE32 MIL_ID MFTYPE MedgeAllocResult(MIL_ID SystemId, long ControlFlag, MIL_ID *EdgeResultIdPtr)
MFTYPE32 void MFTYPE MedgeSave(MIL_TEXT_PTR FileName, MIL_ID ContextOrResultId, long ControlFlag)
MFTYPE32 void MFTYPE MedgeControl(MIL_ID ContextOrResultId, long ControlType, double ControlValue)
MFTYPE32 void MFTYPE MedgeCalculate(MIL_ID ContextId, MIL_ID SourceImageId, MIL_ID SourceDeriv1Id, MIL_ID SourceDeriv2Id, MIL_ID SourceDeriv3Id, MIL_ID EdgeResultId, long ControlFlag)
MFTYPE32 void MFTYPE MedgeFree(MIL_ID ObjectId)
MFTYPE32 MIL_ID MFTYPE MedgeAlloc(MIL_ID SystemId, long EdgeFinderType, long ControlFlag, MIL_ID *ContextIdPtr)
MFTYPE32 long MFTYPE MedgeInquire(MIL_ID ContextOrResultId, long InquireType, void *UserVarPtr)
MFTYPE32 void MFTYPE MedgeMask(MIL_ID ContextId, MIL_ID MaskImageId, long ControlFlag)
MFTYPE32 void MFTYPE MedgeGetNeighbors(MIL_ID ResultId, long SizeOfArray, double *SrcArrayX, double *SrcArrayY, double *SrcArrayAngle, double *DstArrayX, double *DstArrayY, long *Index, long *Label, long ControlFlag)
MFTYPE32 MIL_ID MFTYPE MedgeRestore(MIL_TEXT_PTR FileName, MIL_ID SystemId, long ControlFlag, MIL_ID *ContextIdPtr)
MFTYPE32 void MFTYPE MedgeSelect(MIL_ID EdgeResultId, long Operation, long Feature, long Condition, double Param1, double Param2)
char * MIL_TEXT_PTR
Definition: Milos.h:90