当前位置:网站首页>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)
边栏推荐
- . Net service governance flow limiting middleware -fireflysoft RateLimit
- Batch modify the txt file code to UTF-8 (notepad++)
- 生产中影响滑环质量的因素
- Global and Chinese market of rammers 2022-2028: Research Report on technology, participants, trends, market size and share
- Altium designer 19.1.18 - change the transparency of copper laying
- Altium designer 19.1.18 - hide the fly line of a network
- Application of ultra pure water particle counter in electronic semiconductors
- Rename directory in C [closed] - renaming a directory in C [closed]
- Embedded composition and route
- Day08 ternary operator extension operator character connector symbol priority
猜你喜欢

Embedded composition and route

如何进行导电滑环选型

1-stm32 operation environment construction

Use of orbbec Astra depth camera of OBI Zhongguang in ROS melody

C#,数值计算(Numerical Recipes in C#),线性代数方程的求解,LU分解(LU Decomposition)源程序

Programming knowledge -- assembly knowledge

UEFI development learning 5 - simple use of protocol

软件设计师:03-数据库系统

Acwing - the collection of pet elves - (multidimensional 01 Backpack + positive and reverse order + two forms of DP for the answer)

Acwing-宠物小精灵之收服-(多维01背包+正序倒序+两种形式dp求答案)
随机推荐
研究发现,跨境电商客服系统都有这五点功能!
The global and Chinese market of lithographic labels 2022-2028: Research Report on technology, participants, trends, market size and share
Count and sort the occurrence times of specific fields through SQL statements
Openxlsx field reading problem
Shell script basic syntax
Network communication process
Process communication mode between different hosts -- socket
UEFI development learning 2 - running ovmf in QEMU
Numpy——1.數組的創建
The sublime version that XP can run is 3114
2021-10-28
如何进行导电滑环选型
Basic embedded concepts
PIL's image tool image reduction and splicing.
Logistic regression: the most basic neural network
Function of static
GPIO circuit principle of stm32
Latex notes
How to migrate the device data accessed by the RTSP of the easycvr platform to easynvr?
LED display equipment records of the opening ceremony of the Beijing Winter Olympics