Winform之算法模块-形状模板匹配-形状模板匹配

在这里插入图片描述


        /// <summary>
        /// 模板匹配
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_MatchModel_Click(object sender, EventArgs e)
        {
            // 1.读取模板图像
            // 2.读取模板区域
            // 3.获取模板图像
            // 4.创建模板
            // 5.获取搜索区域图像
            // 6.模板匹配
            // 7.显示匹配结果
            // 7.1刷新当前显示控件
            // 7.2获取模板形状
            // 7.3获取仿射矩阵
            // 7.4对轮廓进行仿射变换
            // 7.5显示轮廓
            deleteModelFlag = true;


            // 1.读取模板图像
            HOperatorSet.ReadImage(out HObject ModelImagre, @"D:\\ModelImage");

            // 2.读取模板区域
            HOperatorSet.ReadRegion(out HObject paint_region_final, @"D:\\paint_region_final.reg");

            // 3.获取模板图像
            HOperatorSet.ReduceDomain(ModelImagre, paint_region_final,out HObject RealModelImage);

            // 4.创建模板
            HOperatorSet.CreateShapeModel(RealModelImage, 0, -3.14, 6.28, "auto", "auto", "use_polarity", 30, "auto", out HTuple ModelId);
            // 5.获取搜索区域图像
            HOperatorSet.ReduceDomain(CurrImage, SearchRegion, out HObject SeatchImage);
            // 6.模板匹配
            HOperatorSet.FindShapeModel(SeatchImage, ModelId, -3.14, 6.28, 0.5, 1, 0.5, "least_squares", 0, 0.5, out HTuple row, out HTuple column, out HTuple angle, out HTuple score);

            // 7.显示匹配结果

            // 7.1刷新当前显示控件
            hWindow_Final1.HobjectToHimage(SeatchImage);

            // 7.2获取模板形状
            HOperatorSet.GetShapeModelContours(out HObject modelxld, ModelId,1);

            // 7.3获取仿射矩阵
            HOperatorSet.VectorAngleToRigid(0,0,0, row, column, angle,out HTuple homMat2D);

            // 7.4对轮廓进行仿射变换
            HOperatorSet.AffineTransContourXld(modelxld,out HObject modelXldAfter, homMat2D);

            // 7.5显示轮廓
            hWindow_Final1.DispObj(modelXldAfter, "red");
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值