halcon仿射变换demo
1. 对区域进行平移、旋转、缩放
* 对区域region进行仿射变换
read_image (Image, '3.PNG')
rgb1_to_gray (Image, GrayImage)
binary_threshold (GrayImage, Region, 'max_separability', 'dark', UsedThreshold)
area_center (Region, Area, Row, Column)* 仿射变换-平移
hom_mat2d_identity (HomMat2DIdentity1)
* 计算将region按照x轴方向移动100的变换矩阵
hom_mat2d_translate (HomMat2DIdentity1, 100, 0, HomMat2DTranslate)
affine_trans_region (Region, RegionAffineTrans1, HomMat2DTranslate, 'nearest_neighbor')* 仿射变换-旋转
hom_mat2d_identity (HomMat2DIdentity)
* 计算按照region中心点旋转90度的变换矩阵
hom_mat2d_rotate (HomMat2DIdentity, rad(90), Row, Column, HomMat2DRotate)
affine_trans_region (Region, RegionAffineTrans, HomMat2DRotate, 'nearest_neighbor')* 仿射变换-缩放
hom_mat2d_identity (HomMat2DIdentity2)
* 计算按照region中心点缩放一半的变换矩阵
hom_mat2d_scale (HomMat2DIdentity2, 0.5, 0.5, Row, Column, HomMat2DScale)
affine_trans_region (Region, RegionAffineTrans2, HomMat2DScale, 'nearest_neighbor')* 仿射变换-平移-旋转-缩放
hom_mat2d_identity (HomMat2DIdentity3)
* 计算将region按照x轴方向移动100的变换矩阵
hom_mat2d_translate (HomMat2DIdentity3, 100, 0, HomMat2DTranslate1)
* 计算按照region中心点旋转90度的变换矩阵
hom_mat2d_rotate (HomMat2DTranslate1, rad(90), Row, Column, HomMat2DRotate1)
* 计算按照region中心点缩放一半的变换矩阵
hom_mat2d_scale (HomMat2DRotate1, 0.5, 0.5, Column, Row, HomMat2DScale1)
affine_trans_region (Region, RegionAffineTrans3, HomMat2DScale1, 'nearest_neighbor')* 计算按照region中心点x轴方向移动100,旋转90度的变换矩阵
vector_angle_to_rigid (Row, Column, rad(0), Row + 100, Column, rad(90), HomMat2D)
affine_trans_region (Region, RegionAffineTrans4, HomMat2D, 'nearest_neighbor')
2. 仿射变换的追踪定位
read_image (Image, 'C:/Users/JOVISION/Desktop/halcon_demo/4.PNG')
* 原始的矩形区域
gen_rectangle2 (Rectangle, 50, 70, rad(45), 50, 20)
* 原始的圆形区域
gen_circle (Circle, 80, 90, 30)
* 平移、旋转后的矩形区域
gen_rectangle2 (Rectangle1, 190, 100, rad(90), 50, 20)
* 计算矩形区域旋转变换矩阵
vector_angle_to_rigid (50, 70, rad(45), 190, 100, rad(90), HomMat2D)
* 对圆形区域做仿射变换
affine_trans_region (Circle, RegionAffineTrans, HomMat2D, 'nearest_neighbor')
halcon仿射变换demo相关推荐
- Halcon仿射变换及应用
Halcon仿射变换及应用 仿射变换类型 求稳定的特征点 仿射变换流程 根据特征点.角度计算仿射变换矩阵 从空变换矩阵创建仿射变换矩阵 把旋转角度添加到仿射变换矩阵 把缩放添加到仿射变换矩阵 把平移添 ...
- Qt添加Halcon窗体Demo(以及Halcon简单的灰化效果)
Qt调用Halcon13.0机器视觉算法包 Qt:5.6.1 MSVC2013 32bit Halcon版本:13.0(注意,这里最好是正版,或者已经破译的版本,否则会引起很多意料之外的问题) 1.在 ...
- halcon 仿射变换和区域跟随
仿射变换和区域跟随 1. 应用场景 2. 应用示例 1. 应用场景 当感兴趣区域不容易被捕捉,但是又必须要定位它的位置的时候,可以先选择定位其他的特征区域.我们先找到特征区域,因为这个特征区域和感兴趣 ...
- Halcon 仿射变换
目录 1. 仿射变换类型 2. 仿射变换相关函数 2.1 求仿射变换矩阵的函数: 2.2 仿射变换函数 3. 插值算法类型 4. 平移旋转缩放实例 5. 车牌仿射变换实例 1. 仿射变换类型 平移 旋 ...
- Halcon区域几何变换和仿射变换
Halcon区域几何变换和仿射变换 一.Halcon区域几何变换 1.move_region 平移 2.zoom_region 缩放 3.mirror_region 镜像 4.transpose_re ...
- 智能机器视觉应用视频 海康威视视觉零基础入门到精通教程 工业机器人
Halon视觉应用内容 1.相机.镜头.光源认识及选型 2.Halcon软件认识.完成基本硬件连接.软件与相机连接拍图 3.Halcon基础语法 4.BLOB分析 内容:通过BLOB分析提取特定的图像 ...
- 【朝夕教育】2023年04月 Halcon机器视觉-仿射变换详解
文章目录 一.概述 二.仿射变换类型 三.仿射变换流程 四.根据特征点.角度计算仿射变换矩阵 1.1 从空变换矩阵创建仿射变换矩阵 1.2 把旋转角度添加到仿射变换矩阵 1.3 把缩放添加到仿射变换矩 ...
- Halcon:二维仿射变换实例探究
二维仿射变换,顾名思义就是在二维平面内,对对象进行平移.旋转.缩放等变换的行为(当然还有其他的变换,这里仅论述这三种最常见的). Halcon中进行仿射变换的常见步骤如下: ① 通过hom_mat2d ...
- Halcon学习路线——模板匹配和仿射变换
模板匹配 1. 模板匹配分类 2. 看一个案例 3. 资源下载 1. 模板匹配分类 halcon对模板匹配进行了详细的分类 基于灰度的模板匹配是最基础也是最简单的,但是由于其受光照影响很大,匹配的精度 ...
最新文章
- 51 nod 机器人走方格
- 移动端触屏click点击事件延迟问题,以及tap的解决方案
- 【深度学习】PyTorch 中的线性回归和梯度下降
- Python 匿名函数 lambda - Python零基础入门教程
- Redhat 7 Web服务器配置
- 隐形Euler方法的java程序_常微分方程的解法 (二): 欧拉(Euler)方法
- python html解析对比_python htmlparse页面解析示例
- Eclipse下搭建安卓开发环境(初步)
- 学校培训课程预约报名登记收缴费用小程序开发制作
- 如何使用Internet Download Manager批量下载音乐素材?
- VBA轻松实现多色渐变填充
- Linux识别不了希捷移动硬盘,希捷(Seagate)移动硬盘无法识别怎么办?
- 使用HTML及简单的JavaScript脚本制作一个点名器
- linux 用户和组详解
- html背景飘汽水气泡,HTML5网页背景气泡上升
- JavaScript判断对象中每一项属性都不为空
- 【转载】迅雷应用开发(调用迅雷自…
- 【vscode 】如何通过vscode完成JAVA编译环境配置
- 运营商都有哪些数据?
- Android开发工程师