当前位置:网站首页>Shape template matching based on Halcon learning [VII] reuse_ model. Hdev routine
Shape template matching based on Halcon learning [VII] reuse_ model. Hdev routine
2022-07-05 07:55:00 【BoomBiuBiu】
This sample program shows how to reuse the created model .
1、 Read the picture
dev_update_window ('off')
* Read the picture
read_image (ModelImage, 'rings_and_nuts')
* Get a channel Pointer( Indicator )
get_image_pointer1 (ModelImage, Pointer, Type, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'white', WindowHandle)
dev_set_part (0, 0, Height - 1, Width - 1)
dev_display (ModelImage)
* Set some column parameters
dev_set_color ('cyan')
dev_set_draw ('margin')
dev_set_line_width (2)
set_display_font (WindowHandle, 14, 'mono', 'true', 'false')
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
2、 Create a template
* Create a template
Row := 324
Column := 279
Radius := 60
gen_circle (ROI1, Row, Column, Radius)
gen_circle (ROI2, Row, Column, 0.5 * Radius)
* Difference set
difference (ROI1, ROI2, ModelROI)
* Cutout
reduce_domain (ModelImage, ModelROI, ImageROI)
* Create a template
create_scaled_shape_model (ImageROI, 'auto', -rad(30), rad(60), 'auto', 0.6, 1.4, 'auto', 'none', 'use_polarity', 60, 10, ModelID)
inspect_shape_model (ImageROI, ShapeModelImage, ShapeModelRegion, 1, 30)
dev_clear_window ()
dev_display (ShapeModelRegion)
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
3、 The storage model ( Include XLD)
ModelFile := 'model_nut.sbm'
* Save template
write_shape_model (ModelID, ModelFile)
* Besides , We store the model area
ModelRegionFile := 'model_region_nut.png'
write_image (ImageROI, 'png', 0, ModelRegionFile)
* Clear template
clear_shape_model (ModelID)
4、 Read the model from the file
read_shape_model (ModelFile, ReusedModelID)
* Access the parameters used to create the model
get_shape_model_contours (ReusedShapeModel, ReusedModelID, 1)
get_shape_model_origin (ReusedModelID, ReusedRefPointRow, ReusedRefPointCol)
get_shape_model_params (ReusedModelID, NumLevels, AngleStart, AngleExtent, AngleStep, ScaleMin, ScaleMax, ScaleStep, Metric, MinContrast)
* Access model area
read_image (ImageModelRegion, 'model_region_nut.png')
get_domain (ImageModelRegion, DomainModelRegion)
dev_display (ImageModelRegion)
dev_display (DomainModelRegion)
stop ()
5、 Search for
read_image (SearchImage, 'rings_and_nuts')
dev_display (SearchImage)
* Begin to match
find_scaled_shape_model (SearchImage, ReusedModelID, AngleStart, AngleExtent, ScaleMin, ScaleMax, 0.65, 0, 0, 'least_squares', 0, 0.8, RowCheck, ColumnCheck, AngleCheck, ScaleCheck, Score)
for i := 0 to |Score| - 1 by 1
* Affine transformation
vector_angle_to_rigid (ReusedRefPointRow, ReusedRefPointCol, 0, RowCheck[i], ColumnCheck[i], AngleCheck[i], MovementOfObject)
hom_mat2d_scale (MovementOfObject, ScaleCheck[i], ScaleCheck[i], RowCheck[i], ColumnCheck[i], MoveAndScalingOfObject)
affine_trans_contour_xld (ReusedShapeModel, ModelAtNewPosition, MoveAndScalingOfObject)
dev_display (ModelAtNewPosition)
endfor
disp_continue_message (WindowHandle, 'black', 'true')
stop ()
6、 Clear template
clear_shape_model (ModelID)
边栏推荐
- Cadence learning records
- The browser cannot access Baidu
- solver. Learning notes of prototxt file parameters
- Train your dataset with yolov4
- 1-stm32 operation environment construction
- A simple method to prove 1/t Fourier transform
- Global and Chinese market of rammers 2022-2028: Research Report on technology, participants, trends, market size and share
- Global and Chinese markets for medical oxygen machines 2022-2028: Research Report on technology, participants, trends, market size and share
- Factors affecting the quality of slip rings in production
- Query the table name used by kettle in Oracle
猜你喜欢
Software designer: 03 database system
Reasons for rapid wear of conductive slip rings
Beijing Winter Olympics opening ceremony display equipment record 3
About the problem that MySQL connector net cannot be cleared in MySQL
Application of ultra pure water particle counter in electronic semiconductors
Altium designer 19.1.18 - change the transparency of copper laying
Programming knowledge -- basis of C language
Development tools -- gcc compiler usage
Shell脚本基本语法
mysql 盲注常见函数
随机推荐
Numpy——1. Creation of array
Altium designer 19.1.18 - hide the fly line of a network
Use stm32cubemx tool to write the demo program of FreeRTOS
IEEE access personal contribution experience record
L'étude a révélé que le système de service à la clientèle du commerce électronique transfrontalier a ces cinq fonctions!
Batch modify the txt file code to UTF-8 (notepad++)
Calibre garbled
How to realize audit trail in particle counter software
How to define guid in AMI code
LED display equipment records of the opening ceremony of the Beijing Winter Olympics
Communication standard -- communication protocol
. Net service governance flow limiting middleware -fireflysoft RateLimit
GPIO circuit principle of stm32
Query the table name used by kettle in Oracle
Record the opening ceremony of Beijing Winter Olympics with display equipment
IC software learning
Function and usage of function pointer
Global and Chinese market of urban rail connectors 2022-2028: Research Report on technology, participants, trends, market size and share
RF ride side door processing of prompt box
如何进行导电滑环选型