最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

利用鱼眼镜头生成全景图像的方法

IT圈 admin 23浏览 0评论

2024年5月16日发(作者:严雨)

2010年

第1期

工程图学学报

JOURNALOFENGINEERINGGRAPHICS

2010

No.1

利用鱼眼镜头生成全景图像的方法

邓松杰

1

,周松斌

2

,程韬波

2

(1.中国科学院广州地球化学研究所遥感与GIS专业,广东广州510640;

2.广东省科学院自动化工程研制中心,广东广州510070)

摘要:介绍了一种利用鱼眼镜头在特殊角度下所拍摄成的图像,以优化的快速展

开模型为基础,经过像点坐标变换、双三次插值及内部拼接,生成全景图像的方法。该方法

无须运用多幅标准照片拼接,且无须运用柱面模型及成像仪器的参数。最后从MATLAB仿

真的实例中验证了此方法的有效性。

关键词:计算机应用;全景图像;快速展开模型;鱼眼图像

文章编号:1003-0158(2010)01-0135-04

中图分类号:TP391.4

文献标识码:A

Omni-DirectionalImageMakingBasedonFisheyeLens

DENGSong-jie

1

,ZHOUSong-bin

2

,CHENGTao-bo

2

(&GIS,GuangzhouInstituteofGeochemistry,ChineseAcademyofSciences,GuangzhouGuangdong510640,China;

tionEngineeringR&MCenter,GuangdongAcademyofSciences,GuangzhouGuangdong510070,China)

Abstract:Baseonanoptimizedfastoutspreadtheory,fisheyelensimagecanbetransformed

sbytransformingthecoordinateswiththebicubic

snoneedofstitchingsomephotostakenbycameraor

nd,theeffectivenessof

themethodisdemonstratedbythefinalexamplesbywayofMATLAB.

Keywords:computerapplication;omni-directionalimage;fastoutspreadtheory;fisheye

lensimage

全景图像生成技术近期发展迅速,传统的方

法主要有利用多幅照片拼接的方法

[1-5]

和基于柱

面模型变换的方法

[6-9]

。多幅照片拼接的方法操作

麻烦,缺乏实用性和实时性;基于柱面模型变换

的方法,理论模型较为复杂,且需要考虑摄像头

焦距、镜头双曲面方程等参数,在真实系统中难

以运用。为了克服上述缺点,本文提出了一种利

用鱼眼镜头生成全景图像的方法。由于无论是通

过计算机生成的图像,还是经过光学投射在成像

元件如CCD中形成的数字图像,都是基于像素

点矩阵的,且无论是柱面模型变换或是其他模型

的变换也只是按照一定的数学关系对图像像素

收稿日期:2008-04-17

作者简介:邓松杰(1980-),男,广东高要人,硕士研究生,主要研究方向为遥感、自动化及图像处理。

136工程图学学报2010年

点矩阵进行变换,若非运用插值或变换过程中数

据的丢失,像素点的数量是不会发生变化的。所

以基于这种思想,本文运用一种优化的快速展开

模型,结合双三次插值

[10]

和内部拼接的方法,达

到生成全景图的目的。

1原理

1.1均匀的快速展开模型

鱼眼镜头视角大,一般为180°,这使通过鱼

眼镜头生成全景图像具备了理论上的可能性。如

图1所示,此图像为鱼眼镜头在仰视角度下,对

四周景物的一次拍摄。

图1鱼眼镜头仰视拍摄图

根据图像性质,首先假设一种均匀的快速展

开模型。如图2所示,将鱼眼图像像“切蛋糕”

一样,均匀分割若干块,然后展开,分割的块数

越多,像素点分布越均匀,可是分割的块数越多,

运算起来越复杂且原始数据丢失越严重。在上述

情况运用插值,会出现“锯齿形”失真。

图2均匀的快速展开模型

1.2优化的快速展开模型

为了改善失真的情况,设计一种优化的快速

展开模型,如图3所示,鱼眼图像被a,b,c,d,e,

f,g,h线段分割,展开形成8个三角形,每个三

角形由隔一相邻的两条线段与底边组成,两两三

角形之间有一半的区域相同。

f

e

g

d

c

h

a

b

c

d

ef

g

hab

abcdefgh

图3鱼眼图像展开示意图

如图4所示,三角形X,Y中每一行像素点坐

标按比例拉伸,分别变换为矩形A,B,底边长度

保持不变。从两矩形M,N区域内算出缝合线的

位置进行拼接,组合成矩形C。

如此类推,8个三角形进行变换,两两内部

缝合,最终生成全景图像。

c

X

a′c′

A

a

d

Y

b′

d′

b

B

M

b′

A

c′

a′

a′

d′

b′

c′

B

d′

NC

图4任意两子图变换与拼接示意图

2算法

2.1展开算法分析

设鱼眼图像像素点坐标表示为

f(i,j)

,图像

的边长为L,则图像矩阵表达为

第1期邓松杰等:利用鱼眼镜头生成全景图像的方法137

f(1,1)f(1,2)"f(1,j)

f(2,1)f(2,2)"f(2,j)

####

i,j≤L

f(i,1)f(i,2)"f(i,j)

f(i,j)

表示该像点所具有的RGB值,i表示

矩阵的行,j表示矩阵的列。

如图5所示,在鱼眼图像上附加一极坐标系,

图像中心与极坐标系原点重合。假设图像上任意

一点

P(ρ

1

,

1

)

变换到子图像OABC矩阵中,子

矩阵以

f

1

(i

1

,j

1

)

表示,

P

点位置不变,坐标系改

变,

ij

L

1

,

1

2

;点

P(ρ

1

,

1

)

的极坐标形式对应

的笛卡尔坐标形式为

f

1

(i

2

,j

2

)

P(ρ

1

,

1

)

通过

优化的快速展开模型变换为矩阵

S

1

(u,v)

中的点

S

1

(u

1

,v

1

)

,它们之间的关系是:

u

1

1

v

LL

1

=

j

2

ρ,u≤

2

;当坐标变换完毕后,

1

运用双三次插值,赋值于空白的像点,形成完整

的矩形图像。如此类推,其余的子图通过旋转,

进入图5所示的坐标系中进行变换。

f(1,1)f(1,j)

f

1

(1,1)

f

1

(1,j

1

)

O

C

f

1

(i

2

,j

2

)

C

O

P(ρ

1

1

)

P(ρ

1

1

)

f(i,j)

A

B

f(i,1)AB

f

1

(i

1

,1)f

1

(i

1

,j

1

)

S

1

(1,1)S

1

(1,v)

S

1

(u

1

,v

1

)

S

1

(u,1)S

1

(u,v)

图5子图矩阵坐标变换原理图

2.2内部拼接算法分析

鱼眼图像矩阵经过变换计算与双三次插值

后,初步生成8个子图像,如图4中的矩形图像

A与B,其原始像素点分布越往左、右上角则越

稀疏,即失真越严重。此时,需要运用与优化的

快速展开模型算法对应的内部拼接算法改善失

真情况。如图6所示,区域M中任意一列像素点

与区域N中任意一列像素点,两列中同一行的两

像素点比较,当S

1

(u,v

1

)=S

2

(u,v

2

)时,则T=T+1,

T为对应两像素点相等的次数,初始值为零;当

T为最大值时,图像A的v

1

与图像B的v

2

为缝

合线。由于像素点是离散的,进行展开模型变换

时难免会有误差,故缝合线未必就是M,N区域

的中线。然后,将A矩阵大于v

1

列的像素点删除,

将B矩阵小于v

2

列的像点删除,合并A,B矩阵

形成新的矩阵,同样的方法,将8幅子图拼接成

一幅全景图。

S

1

(1,1)S

1

(1,v)S

2

(1,1)S

2

(1,v)

S

1

(u,v

1

)

S

2

(u,v

2

)

AB

S

1

(u,1)

M

S

1

(u,v)

S

2

(u,1)

N

S

2

(u,v)

图6任意两子图内部拼接原理图

3结论

通过MATLAB软件执行上述算法,利用图

1采取上述方法,图7为最终的结果。优化的快

速展开模型变换的实现,只用简单的坐标系转换

和矩阵变换计算,无须通过复杂的柱面模型,无

须考虑鱼眼镜头的参数,只需直接针对鱼眼镜头

拍摄的数字图像矩阵。由于像点矩阵是离散的,

坐标是以整数表示,在变换过程中难免有小部分

原始像素点数据丢失,故在优化的快速展开模型

的前提下配合运用内部拼接算法缝合两两具有

1/2相同部分的8幅子图,能有效补偿变换过程

中像素点数据的丢失和减少图像边缘的误差,改

善均匀快速展开模型的“锯齿形”失真。

MATLAB仿真实验证明了该算法的有效性。

138工程图学学报2010年

图7全景展开图

相关的两步全景图拼接算法[J].系统仿真学报,

参考文献

[6]

[1]封靖波,苏志勋,刘秀平.一种基于相似曲线的全

景图自动拼接算法[J].计算机学报,2003,26(11):

1604-1608.

[2]

[3]

付厚超,陈宗海.基于垂直边缘处理的全景图像的

拼接[J].计算机工程,2004,30(4):132-134.

李立鸿,施鹏飞,赵群飞.基于多分辨率技术的快

速全景图图像匹配算法[J].中国图像图形学报,

2006,11(6):1271-1275.

[4]葛诚,彭启民,刘鹏,等.基于多域分析和全局[9]

[10]

优化的全景图拼接方法[J].中国图像图形学报,

2006,11(7):971-976.

[5]薛峰,张佑生,江巨浪,等.基于最大梯度和灰度

[8]

[7]

2005,17(12):2965-2968.

童宇,刘典型.全景图自动生成算法中几个相关

问题的研究[J].计算技术与自动化,2006,25(3):

111-114.

凌云峰,朱齐丹,吴自新,等.全景视觉图像柱面理

论展开算法实现及其改进[J].应用科技,2006,33(9):

4-6.

徐玮,王炜,张茂军,等.一种基于凸曲面反射

镜的柱面全景图像无缝快速生成系统[J].计算机工

程与科学,2006,28(11):33-36.

平洁,殷润民.一种全景图快速生成算法及其实

现[J].微计算机应用,2006,27(1):59-62.

贺兴华,周媛媛,王继阳,等.MATLAB7.x图像处

理[M].北京:人民邮电出版社,2006.45-49.

2024年5月16日发(作者:严雨)

2010年

第1期

工程图学学报

JOURNALOFENGINEERINGGRAPHICS

2010

No.1

利用鱼眼镜头生成全景图像的方法

邓松杰

1

,周松斌

2

,程韬波

2

(1.中国科学院广州地球化学研究所遥感与GIS专业,广东广州510640;

2.广东省科学院自动化工程研制中心,广东广州510070)

摘要:介绍了一种利用鱼眼镜头在特殊角度下所拍摄成的图像,以优化的快速展

开模型为基础,经过像点坐标变换、双三次插值及内部拼接,生成全景图像的方法。该方法

无须运用多幅标准照片拼接,且无须运用柱面模型及成像仪器的参数。最后从MATLAB仿

真的实例中验证了此方法的有效性。

关键词:计算机应用;全景图像;快速展开模型;鱼眼图像

文章编号:1003-0158(2010)01-0135-04

中图分类号:TP391.4

文献标识码:A

Omni-DirectionalImageMakingBasedonFisheyeLens

DENGSong-jie

1

,ZHOUSong-bin

2

,CHENGTao-bo

2

(&GIS,GuangzhouInstituteofGeochemistry,ChineseAcademyofSciences,GuangzhouGuangdong510640,China;

tionEngineeringR&MCenter,GuangdongAcademyofSciences,GuangzhouGuangdong510070,China)

Abstract:Baseonanoptimizedfastoutspreadtheory,fisheyelensimagecanbetransformed

sbytransformingthecoordinateswiththebicubic

snoneedofstitchingsomephotostakenbycameraor

nd,theeffectivenessof

themethodisdemonstratedbythefinalexamplesbywayofMATLAB.

Keywords:computerapplication;omni-directionalimage;fastoutspreadtheory;fisheye

lensimage

全景图像生成技术近期发展迅速,传统的方

法主要有利用多幅照片拼接的方法

[1-5]

和基于柱

面模型变换的方法

[6-9]

。多幅照片拼接的方法操作

麻烦,缺乏实用性和实时性;基于柱面模型变换

的方法,理论模型较为复杂,且需要考虑摄像头

焦距、镜头双曲面方程等参数,在真实系统中难

以运用。为了克服上述缺点,本文提出了一种利

用鱼眼镜头生成全景图像的方法。由于无论是通

过计算机生成的图像,还是经过光学投射在成像

元件如CCD中形成的数字图像,都是基于像素

点矩阵的,且无论是柱面模型变换或是其他模型

的变换也只是按照一定的数学关系对图像像素

收稿日期:2008-04-17

作者简介:邓松杰(1980-),男,广东高要人,硕士研究生,主要研究方向为遥感、自动化及图像处理。

136工程图学学报2010年

点矩阵进行变换,若非运用插值或变换过程中数

据的丢失,像素点的数量是不会发生变化的。所

以基于这种思想,本文运用一种优化的快速展开

模型,结合双三次插值

[10]

和内部拼接的方法,达

到生成全景图的目的。

1原理

1.1均匀的快速展开模型

鱼眼镜头视角大,一般为180°,这使通过鱼

眼镜头生成全景图像具备了理论上的可能性。如

图1所示,此图像为鱼眼镜头在仰视角度下,对

四周景物的一次拍摄。

图1鱼眼镜头仰视拍摄图

根据图像性质,首先假设一种均匀的快速展

开模型。如图2所示,将鱼眼图像像“切蛋糕”

一样,均匀分割若干块,然后展开,分割的块数

越多,像素点分布越均匀,可是分割的块数越多,

运算起来越复杂且原始数据丢失越严重。在上述

情况运用插值,会出现“锯齿形”失真。

图2均匀的快速展开模型

1.2优化的快速展开模型

为了改善失真的情况,设计一种优化的快速

展开模型,如图3所示,鱼眼图像被a,b,c,d,e,

f,g,h线段分割,展开形成8个三角形,每个三

角形由隔一相邻的两条线段与底边组成,两两三

角形之间有一半的区域相同。

f

e

g

d

c

h

a

b

c

d

ef

g

hab

abcdefgh

图3鱼眼图像展开示意图

如图4所示,三角形X,Y中每一行像素点坐

标按比例拉伸,分别变换为矩形A,B,底边长度

保持不变。从两矩形M,N区域内算出缝合线的

位置进行拼接,组合成矩形C。

如此类推,8个三角形进行变换,两两内部

缝合,最终生成全景图像。

c

X

a′c′

A

a

d

Y

b′

d′

b

B

M

b′

A

c′

a′

a′

d′

b′

c′

B

d′

NC

图4任意两子图变换与拼接示意图

2算法

2.1展开算法分析

设鱼眼图像像素点坐标表示为

f(i,j)

,图像

的边长为L,则图像矩阵表达为

第1期邓松杰等:利用鱼眼镜头生成全景图像的方法137

f(1,1)f(1,2)"f(1,j)

f(2,1)f(2,2)"f(2,j)

####

i,j≤L

f(i,1)f(i,2)"f(i,j)

f(i,j)

表示该像点所具有的RGB值,i表示

矩阵的行,j表示矩阵的列。

如图5所示,在鱼眼图像上附加一极坐标系,

图像中心与极坐标系原点重合。假设图像上任意

一点

P(ρ

1

,

1

)

变换到子图像OABC矩阵中,子

矩阵以

f

1

(i

1

,j

1

)

表示,

P

点位置不变,坐标系改

变,

ij

L

1

,

1

2

;点

P(ρ

1

,

1

)

的极坐标形式对应

的笛卡尔坐标形式为

f

1

(i

2

,j

2

)

P(ρ

1

,

1

)

通过

优化的快速展开模型变换为矩阵

S

1

(u,v)

中的点

S

1

(u

1

,v

1

)

,它们之间的关系是:

u

1

1

v

LL

1

=

j

2

ρ,u≤

2

;当坐标变换完毕后,

1

运用双三次插值,赋值于空白的像点,形成完整

的矩形图像。如此类推,其余的子图通过旋转,

进入图5所示的坐标系中进行变换。

f(1,1)f(1,j)

f

1

(1,1)

f

1

(1,j

1

)

O

C

f

1

(i

2

,j

2

)

C

O

P(ρ

1

1

)

P(ρ

1

1

)

f(i,j)

A

B

f(i,1)AB

f

1

(i

1

,1)f

1

(i

1

,j

1

)

S

1

(1,1)S

1

(1,v)

S

1

(u

1

,v

1

)

S

1

(u,1)S

1

(u,v)

图5子图矩阵坐标变换原理图

2.2内部拼接算法分析

鱼眼图像矩阵经过变换计算与双三次插值

后,初步生成8个子图像,如图4中的矩形图像

A与B,其原始像素点分布越往左、右上角则越

稀疏,即失真越严重。此时,需要运用与优化的

快速展开模型算法对应的内部拼接算法改善失

真情况。如图6所示,区域M中任意一列像素点

与区域N中任意一列像素点,两列中同一行的两

像素点比较,当S

1

(u,v

1

)=S

2

(u,v

2

)时,则T=T+1,

T为对应两像素点相等的次数,初始值为零;当

T为最大值时,图像A的v

1

与图像B的v

2

为缝

合线。由于像素点是离散的,进行展开模型变换

时难免会有误差,故缝合线未必就是M,N区域

的中线。然后,将A矩阵大于v

1

列的像素点删除,

将B矩阵小于v

2

列的像点删除,合并A,B矩阵

形成新的矩阵,同样的方法,将8幅子图拼接成

一幅全景图。

S

1

(1,1)S

1

(1,v)S

2

(1,1)S

2

(1,v)

S

1

(u,v

1

)

S

2

(u,v

2

)

AB

S

1

(u,1)

M

S

1

(u,v)

S

2

(u,1)

N

S

2

(u,v)

图6任意两子图内部拼接原理图

3结论

通过MATLAB软件执行上述算法,利用图

1采取上述方法,图7为最终的结果。优化的快

速展开模型变换的实现,只用简单的坐标系转换

和矩阵变换计算,无须通过复杂的柱面模型,无

须考虑鱼眼镜头的参数,只需直接针对鱼眼镜头

拍摄的数字图像矩阵。由于像点矩阵是离散的,

坐标是以整数表示,在变换过程中难免有小部分

原始像素点数据丢失,故在优化的快速展开模型

的前提下配合运用内部拼接算法缝合两两具有

1/2相同部分的8幅子图,能有效补偿变换过程

中像素点数据的丢失和减少图像边缘的误差,改

善均匀快速展开模型的“锯齿形”失真。

MATLAB仿真实验证明了该算法的有效性。

138工程图学学报2010年

图7全景展开图

相关的两步全景图拼接算法[J].系统仿真学报,

参考文献

[6]

[1]封靖波,苏志勋,刘秀平.一种基于相似曲线的全

景图自动拼接算法[J].计算机学报,2003,26(11):

1604-1608.

[2]

[3]

付厚超,陈宗海.基于垂直边缘处理的全景图像的

拼接[J].计算机工程,2004,30(4):132-134.

李立鸿,施鹏飞,赵群飞.基于多分辨率技术的快

速全景图图像匹配算法[J].中国图像图形学报,

2006,11(6):1271-1275.

[4]葛诚,彭启民,刘鹏,等.基于多域分析和全局[9]

[10]

优化的全景图拼接方法[J].中国图像图形学报,

2006,11(7):971-976.

[5]薛峰,张佑生,江巨浪,等.基于最大梯度和灰度

[8]

[7]

2005,17(12):2965-2968.

童宇,刘典型.全景图自动生成算法中几个相关

问题的研究[J].计算技术与自动化,2006,25(3):

111-114.

凌云峰,朱齐丹,吴自新,等.全景视觉图像柱面理

论展开算法实现及其改进[J].应用科技,2006,33(9):

4-6.

徐玮,王炜,张茂军,等.一种基于凸曲面反射

镜的柱面全景图像无缝快速生成系统[J].计算机工

程与科学,2006,28(11):33-36.

平洁,殷润民.一种全景图快速生成算法及其实

现[J].微计算机应用,2006,27(1):59-62.

贺兴华,周媛媛,王继阳,等.MATLAB7.x图像处

理[M].北京:人民邮电出版社,2006.45-49.

发布评论

评论列表 (0)

  1. 暂无评论