一、挑件海思文档重要描述
1、拼接原理:
使用HiPQTools工具HiPQStitchingTool进行图像拼接,就要先进行标定,确定相机之间的位置关系,和畸变校正,
前面写的文章中,介绍了,使用opencv的surf特征匹配和最佳缝合线算法,进行处理,然后离线计算获得参数,查表法进行图像拼接
存在局限性,只能适合静态的放置相机,和纹理丰富的场景,安防监控,不适合运动的场景,比如车载运动的全景场景。
全景拼接的基本方法是将各路采集的图像按照对应的镜头模型投影到虚拟球面,进行拼接融合,然后再通过设置的投影方式输出平面全图。AVSP 标定的目的就是通过标定估计出相应的镜头模型参数,包括内部参数、外部参数及有效区域。其中内部参数用于矫正镜头的畸变,外部参数用于匹配不同镜头之间的相对位置,有效区域的标定主要是为了减小重叠区从而减小系统的处理压力,特别是鱼眼图像,由于鱼眼图像有效区域为圆饼图,故需要将相应的圆饼图区域标定出来进行处理,其他区域省略,提高系统处理效率。
步骤 1 模型标定。
模型标定阶段每个产品类型只需标定一次,可从同一批产品中挑选一个结构最佳的机器作为模型标定机器。标定时该机器需要拍取大量的棋盘格图片,以保证标定结果的鲁棒性。第一步标定完成后可使用 AVSP 标定工具生成模型标定结果.cal 文件。模型标定需要一个特定的棋盘格,推荐使用规格如图 3-2(a)所示,具体规格如下:棋盘格内角点数为 9*6,内角点的定义如图 3-2(b)红圈所示,单个格子大小 5cm。棋盘格边缘保留至少 8cm 以上的白色边缘,有利于提高棋盘格检测的速度及准确性


步骤 2 产线标定.
产线标定阶段每个产品个体都需要标定,以解决个体之间的差异,标定时只需将个体放在特定球形环境里每路拍取一张图像即可。将拍取的图像与第一步生成的.cal 文件作为第二步输入,即可使用 AVSP 标定工具生成针对该个体的标定结果.cal 文件。
一般不需要产线标定,不进行量产的。
步骤 3 生成 LUT 及 BBox 表。
步骤 3 之前,需要制作每路输入的 Mask 模板图像,用于标识出输入图像的有效区域。Mask 图像必须是与输入分辨率相同的.png 图像,白色区域表示有效区域,黑色区域表示无效区域。对于双鱼眼结构,mask 为白色的圆形图像,如图 3-9(a)所示。对于水平环绕四鱼眼结构,由于水平方向重叠区较大,mask 推荐为椭圆形图像,将水平方向裁剪剩余大约 120°视角,垂直方向不裁剪,如图 3-9(b)所示。
对于非鱼眼图像,一般来说,mask 为全白的图像即可,如果需要裁剪一些重叠区域,则可以制作成白色的矩形图像,如图 3-9©和图 3-9(d)所示。大部分情况下,并不需要裁剪掉部分重叠区域,只有当系统处理压力较大时,可以通过调整 Mask 的有效区域,减小重叠区,从而减小系统的处理性能压力。但需要特别注意的是,重叠区的裁剪必须格外小心,裁剪过多会导致融合区不够平滑,影响拼接效
果。一般情况下,有效区域的边缘定义不需要太精确,在圆饼图半径及中心点个体差异小于 2%时,相同产品类型的相机可以共用一套 mask 图片。若个体差异大于 2%,则可能造成融合区清晰度下降或者融合区大小不对称问题。而非鱼眼图像不存在无效区域,故一般情况下相同产品类型的相机共用一套 mask 图片即可。

二、使用工具,模拟拼接
标定工具对标定图像命名的要求是:图像编号需按照从 0 开始顺序编号。故标定图像抓拍时可将 pipe0 命名为 camera0,pipe2 命名为 camera1,pipe4 命名为 camera2,pipe6命名为 camera3,标定图抓拍后进行模型或者产线标定,并生成标定文件(即.cal 文
件)。
标定相邻镜头相对位置的图片。此时需先确定相邻镜头,每组相邻镜头同时拍取标定图片,抓拍时将棋盘格放置于重叠区内,相邻镜头都要看到完整的棋盘格,不断变换棋盘格在重叠区的位置或距离或小幅度旋转,每个重叠区至少抓拍 10 对
20 张图片。保存时以
<固定前缀名>
<镜头号>
<较小镜头号>
<较大镜头号>较大镜头号>
较小镜头号>
<帧序号>
.jpg 来对图像进行命名。
帧序号>
镜头号>
固定前缀名>
2、使用hipq工具,标定,生成.cal文件
将前面的图片,全部放在同一个文件夹下,不能用中文,在工具里指定图片所在路径。
标定时,如果一直busy,说明图片有问题,可以看下工具下的tmp目录下,是否检测到了角点,会把正确的图片读入到当前文件下,

三、hipq软件预览
四、下载到板端
将.cal、.bin,.yuv,下载到板端,后续通过应用层,avs自带的例程,打开文件,进行实时拼接使用。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/205431.html原文链接:https://javaforall.net
