dev_update_window ('off')
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
* dev_get_window (WindowHandle)
read_image (Image, 'board/board_01.png')
get_image_size (Image, Width, Height)
*
* Generate the ROIs: First the one for the shape model.
ModelRow1 := 450
ModelColumn1 := 470
ModelRow2 := 580
ModelColumn2 := 750
*
gen_rectangle1 (Rectangle, ModelRow1, ModelColumn1, ModelRow2, ModelColumn2)
area_center (Rectangle, Area, ModelAreaRow, ModelAreaColumn)
* Generate rectangles in which we will extract the lead edges.
* We define their center point relative to the model ROI.
* We will later apply the transformation of the found model
* instance on this relative displacements.
RectDeltaRow := 160
RectDeltaColumn := 10
RectPhi := 0
RectLength1 := 180
RectLength2 := 10
gen_rectangle2 (Rectangle1, ModelAreaRow - RectDeltaRow, ModelAreaColumn + RectDeltaColumn, RectPhi, RectLength1, RectLength2)
gen_rectangle2 (Rectangle2, ModelAreaRow + RectDeltaRow, ModelAreaColumn + RectDeltaColumn, RectPhi, RectLength1, RectLength2)
*
* Create and train the shape model.
reduce_domain (Image, Rectangle, ImageModel)
create_generic_shape_model (ModelID)
train_generic_shape_model (ImageModel, ModelID)
find_generic_shape_model (ImageModel, ModelID, MatchResultID, NumMatchResult)
get_generic_shape_model_result_object (Objects, MatchResultID, 'all', 'contours')
for I := 2 to 9 by 1
read_image (SearchImage, 'board/board_' + I$'02')
dev_set_window (WindowHandle)
dev_display (SearchImage)
count_seconds (S0)
find_generic_shape_model (SearchImage, ModelID, MatchResultID, NumMatchResult)
get_generic_shape_model_result_object (Objects1, MatchResultID, 'all', 'contours')
count_seconds (S1)
get_generic_shape_model_result (MatchResultID, 'all', 'hom_mat_2d', HomMat2D)
get_generic_shape_model_result (MatchResultID, 'all', 'row', HomRow)
get_generic_shape_model_result (MatchResultID, 'all', 'column', HomColumn)
get_generic_shape_model_result (MatchResultID, 'all', 'angle', HomAngle)
vector_angle_to_rigid (ModelAreaRow, ModelAreaColumn, 0, HomRow, HomColumn, HomAngle, HomMat2D1)
affine_trans_region (Rectangle1, RegionAffineTransRectangle1, HomMat2D1, 'constant')
affine_trans_region (Rectangle2, RegionAffineTransRectangle2, HomMat2D1, 'constant')
dev_display (Objects1)
dev_display (RegionAffineTransRectangle1)
dev_display (RegionAffineTransRectangle2)
stop()
endfor
create_generic_shape_model
最新推荐文章于 2024-06-17 21:42:41 发布