dev_update_window ('off') read_image (Image, 'clip2.bmp') get_image_pointer1 (Image, _, _, Width, Height) dev_close_window () dev_open_window (0, 0, Width, Height, 'black', WindowHandle) dev_display (Image) dev_set_colored (12) dev_set_line_width (2) dev_set_draw ('margin') stop () * * ///// Create shape model ///// read_region (Region, 'region') reduce_domain (Image, Region, ImageReduced) inspect_shape_model (ImageReduced, ModelImage, ModelRegion, 1, 30) area_center (ImageReduced, _, RowRef, ColumnRef) dev_set_color ('green') dev_display (ModelRegion) dev_set_color ('red') disp_cross (WindowHandle, RowRef, ColumnRef, 30, 0) clear_all_shape_models () create_shape_model (ImageReduced, 0, rad(-180), rad(360), 0, 'no_pregeneration', 'ignore_global_polarity', 30, 10, ModelID) stop () * * ///// Pattern Mathing (Normal) ///// dev_display (Image) find_shape_model (Image, ModelID, rad(-180), rad(360), 0.6, 0, 0.1, 'interpolation', 0, 0.9, Row, Column, Angle, Score) for i := 0 to |Score| - 1 by 1 vector_angle_to_rigid (RowRef, ColumnRef, 0, Row[i], Column[i], Angle[i], HomMat2D) affine_trans_region (ModelRegion, RegionAffineTrans, HomMat2D, 'false') dev_set_color ('green') dev_display (RegionAffineTrans) dev_set_color ('red') disp_cross (WindowHandle, Row[i], Column[i], 30, 0) endfor stop () * * ///// Pattern Mathing (Extended) ///// tile_images_offset (Image, TiledImage, 75, 75, -1, -1, -1, -1, Width + 150, Height + 150) dev_set_window_extents (0, 0, Width + 150 - 1, Height + 150 - 1) full_domain (TiledImage, ImageFull) dev_display (ImageFull) find_shape_model (ImageFull, ModelID, rad(-180), rad(360), 0.25, 0, 0.1, 'interpolation', 0, 0.9, Row, Column, Angle, Score) for i := 0 to |Score| - 1 by 1 vector_angle_to_rigid (RowRef, ColumnRef, 0, Row[i], Column[i], Angle[i], HomMat2D) affine_trans_region (ModelRegion, RegionAffineTrans, HomMat2D, 'false') dev_set_color ('green') dev_display (RegionAffineTrans) dev_set_color ('red') disp_cross (WindowHandle, Row[i], Column[i], 30, 0) endfor stop () * clear_shape_model (ModelID) *