Halcon马赛图拼接(双图)

不需要事先获取相机内参
*在拼接应用程序中匹配两个图像。
read_image (Image1, 'C:/Users/zjm/Desktop/图像拼接/3.jpg')
read_image (Image2, 'C:/Users/zjm/Desktop/图像拼接/4.jpg')
get_image_size (Image1, Width, Height) 
* 使用Foerstner寻找特征点
points_foerstner (Image1, 1, 2, 3, 50, 0.1, 'gauss', 'true', Rows1, Columns1, CoRRJunctions, CoRCJunctions, CoCCJunctions, RowArea, ColumnArea, CoRRArea, CoRCArea, CoCCArea)
points_foerstner (Image2, 1, 2, 3, 50, 0.1, 'gauss', 'true', Rows2, Columns2, CoRRJunctions, CoRCJunctions, CoCCJunctions, RowArea, ColumnArea, CoRRArea, CoRCArea, CoCCArea)
*****************************进行了畸变修正*************************************
*之前实现的凭借功能并未实现修正图像畸变现在,我们将执行一个径向的投影匹配。现在,我们要做一个投影匹配,它是径向的。扭曲。
get_image_size (Image1, Width, Height)
*根据两幅图像的特征点,计算两幅图像之间的投影变换矩阵和径向畸变系数。
proj_match_points_distortion_ransac (Image1, Image2, Rows1, Columns1, Rows2, Columns2, 'ncc', 10, 0, 0, Height, Width, 0, 0.5, 'gold_standard', 1, 42, HomMat2D, Kappa, Error, Points1, Points2)
*构造相机参数以校正图像,以消除径向畸变。
CamParDist := [0.0,Kappa,1.0,1.0,0.5 * (Width - 1),0.5 * (Height - 1),Width,Height]
*从消除图像中的径向畸变。
change_radial_distortion_cam_par ('fixed', CamParDist, 0, CamPar)
change_radial_distortion_image (Image1, Image1, Image1Rect, CamParDist, CamPar)
change_radial_distortion_image (Image2, Image2, Image2Rect, CamParDist, CamPar)
*从两幅已校正的图像中构建马赛克。注意,图片配合完美。
concat_obj (Image1Rect, Image2Rect, ImagesRect)
gen_projective_mosaic (ImagesRect, MosaicImage, 1, 1, 2, HomMat2D, 'default', 'false', MosaicMatrices2D)
* Display rectified results
get_image_size (MosaicImage, Width, Height)
dev_clear_window ()
dev_open_window (0, 0, Width/3, Height/3, 'white', WindowHandle)
dev_display (MosaicImage)

效果图:


  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Halcon是一款功能强大的像处理软件,可以用于像的拼接拼接是将多个像按一定的方式合并成一个更大的像的过程。在Halcon中进行拼接主要分为以下几个步骤。 首先,我们需要加载需要拼接像。在Halcon中,可以使用read_image函数加载像文件,常见的像格式如bmp、jpg等都可以支持。 接下来,我们需要确定拼接的方式。Halcon提供了多种拼接的方法,比如平移拼接、旋转拼接等。我们可以根据实际需求选择合适的方法。 然后,我们需要确定拼接后的像的位置。根据拼接方式的不同,我们可以通过设置相应的参数来确定拼接像的位置和大小。比如,对于平移拼接,可以通过设置平移的距离和方向,将拼接在一起。 最后,将拼接后的像保存到指定的位置。在Halcon中,可以使用write_image函数将像保存为指定格式的文件。拼接后的像可以保存为bmp、jpg等常见的像格式。 需要注意的是,在进行拼接之前,我们需要保证要拼接像具有相同的大小和分辨率。如果像的大小不同,可以使用resize_image函数进行统一。 综上所述,Halcon像简单拼接的主要步骤为加载像、确定拼接方式、确定拼接像的位置、保存拼接后的像。通过Halcon强大的像处理功能,可以方便快捷地完成拼接任务。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值