一种动态纹理生成方法 技术领域
本发明属于虚拟现实领域,具体涉及一种动态纹理生成方法。
背景技术
纹理是一类复杂的自然表面,其表达的关键在于对纹理的数学建
模。目前,人工生成纹理主要为基于FBM模型产生的纹理,FBM模
型假设纹理具有理想的自相似性,其增量服从高斯分布,并且具有各
向同性的特点。
但是,在对实际自然纹理分析过程中,发现很多类型的纹理并不
具有FBM模型的统计特性,如岩石表面、带有气泡的海水背景等,仅
有少数如热液纹理符合FBM模型。问题的根源在于FBM模型中假设:
纹理的增量服从高斯分布,这使得其对纹理的描述局限在一定的范围
内,不能对更广泛的纹理进行描述。
发明内容
针对现有技术的不足,本发明提供一种动态纹理生成方法,能够
生成丰富的动态纹理。
为实现上述目的,本发明通过以下技术方案予以实现:
一种动态纹理生成方法,该方法包括如下步骤:
S1.定义生成纹理图像的大小x*y及图像数n;
S2.随机生成若干个服从alpha稳定分布Sα(σ,β,μ)的平稳增量X,
其中α为特征因子、σ为尺度参数、β为偏斜因子、μ为中心位置偏移
参数;
S3.从随机生成的平稳增量X中选取x*y个变量写入预先设置的2
维矩阵中,利用随机中点置换法对该矩阵进行处理,得到大小为x*y
的各向同性纹理图像;
S4.重复步骤S2-S3,直到生成n帧各向同性纹理图像;
S5.将步骤S4得到的n帧图像写入视频文件,生成各向同性动态纹
理。
其中,所述利用随机中点置换法对该矩阵进行处理,得到大小为
x*y的各向同性纹理图像为:
取矩阵中四个端点像素值的平均值再加上预先设置的随机位移量
作为中心点像素值,对矩阵中的所有点按上述方式进行处理,即得到
大小为x*y的各向同性纹理图像,其中预先设置的随机位移量服从
alpha稳定分布。
其中,在步骤S4之后包括对n帧图像做归一化处理,使其像素值
为[0,255]。
其中,在步骤S5之前包括对n帧图像做相关性处理。
进一步,该方法还包括:
S6.将步骤S4生成的每帧各向同性纹理图像输入结构滤波器,得到
n帧各向异性纹理图像;
S7.将步骤S6得到的n帧图像写入视频文件,生成各向异性动态纹
理。
其中,所述步骤S6包括:
设结构滤波器的系统函数为:
Hφ(ωx,ωy)=(1+α-2αcos2(ωθ-θ0))-1,
其中θ0为方向角参数,α为强度参数;
利用2维FFT变换将步骤S4生成的n帧各向同性纹理图像依次变
换到频域,并记为SI(ωx,ωy);
将每帧各向同性纹理图像输入到结构滤波器,得到各向异性纹理
图像SA(ωx,ωy),其中SA(ωx,ωy)=SI(ωx,ωy)Hφ(ωx,ωy);
将SA(ωx,ωy)通过2维的IFFT变换,得到时域的各向异性纹理图像。
其中,在步骤S6之后包括对n帧图像做归一化处理,使其像素值
为[0,255]。
其中,在步骤S7之前包括对n帧图像做相关性处理。
本发明至少具有如下的有益效果:
本发明提供的动态纹理生成方法,能够生成更为丰富和细腻的自
然纹理,诸如岩石表面或带有气泡的海水背景等各向同性或各向异性
的自然纹理,对于传统的基于FBM模型不能生成的纹理,本发明提供
了一种新的方式进行复杂纹理的生成,满足了人们的需要。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面
将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而
易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通
技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图
获得其他的附图。
图1是本发明实施例中动态纹理生成方法的流程图;
图2是本发明实施例所述动态纹理生成方法生成的各向同性纹理
示意图;
图3是本发明实施例所述动态纹理生成方法生成的各向异性纹理
示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结
合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、
完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是
全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有
作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护
的范围。
本发明实施例提出了一种动态纹理生成方法,参见图1,包括以下
步骤:
步骤101:定义生成纹理图像的大小x*y及图像数n。
在本步骤中,定义生成纹理图像的大小x*y及图像数n,例如定义
生成的纹理图像大小为128*128,一共129帧。
步骤102:随机生成若干个服从alpha稳定分布Sα(σ,β,μ)的平稳增
量X。
一般地,alpha稳定分布的概率密度函数除少数特例外,不存在闭
式表达,一般用特征函数来描述其分布特性。随机变量X服从alpha稳
定分布,则其特征函数形式为:
EexpiθX = exp { - σ α | θ | α ( 1 - iβ ( signθ ) tan πα 2 ) + iμθ } , α ≠ 1 exp { - σ | θ | ( 1 + iβ π 2 ( signθ ) ln | θ | ) + iμθ } , α ≠ 1 ]]>
其中,signθ是符号函数,0<α≤2,σ≥0,-1≤β≤1以及实数μ。
符合此特征函数表达的四个参数,称之为alpha稳定分布的标准参数
系。其中,四个参数分别是:特征因子α、尺度参数σ、偏斜因子β、
中心位置偏移参数μ,alpha稳定分布简记为Sα(σ,β,μ)。
在本步骤中,随机生成若干个服从alpha稳定分布Sα(σ,β,μ)的平稳
增量X。这里以均值(尺度参数)为0,离散程度(中心位置偏移参数)
为1的alpha稳定分布为例,其还具有两个参数,分别是特征因子α,
偏斜因子β,记为Sα(1,β,0),具体生成方式如下:
令γ是(-π/2,π/2)上的均匀分布的随机变量,W是一个均值为1的
指数分布随机变量,并且γ和W相互独立,当α≠1时,服从alpha稳定
分布Sα(0,β,1)的平稳增量X可描述为:
X = sin α ( γ - γ 0 ) ( cos γ ) 1 / α ( cos ( γ - α ( γ - γ 0 ) ) W ) ( 1 - α ) / α ]]>
X服从Sα(1,β,0)分布,其中K(α)为符号函数,
当α>1时,K(α)=α;当α<1时,K(α)=α-2。
当α=1时,服从alpha稳定分布Sα(0,β,1)的平稳增量X可描述为:
X = ( π 2 + βγ ) tan γ - β log ( W cos γ π 2 + βγ ) . ]]>
在本实施例中,取alpha稳定分布的参数为α=1.7,β=0,因此生
成服从alpha稳定分布S1.7(1,0,0)的平稳增量,由于当α≠1时,
X = sin α ( γ - γ 0 ) ( cos γ ) 1 / α ( cos ( γ - α ( γ - γ 0 ) ) W ) ( 1 - α ) / α ]]>
其中K(α)为符号函数,当α>1时,K(α)=α,
按照上述X的表达式计算出若干个平稳增量,这里计算出的平稳增量
个数要大于x*y。
步骤103:从随机生成的平稳增量X中选取x*y个变量写入预先
设置的2维矩阵中,利用随机中点置换法对该矩阵进行处理,得到大
小为x*y的各向同性纹理图像。
在本步骤中,从随机生成的平稳增量X中选取x*y个变量写入预
先设置的2维矩阵中,然后取矩阵中四个端点像素值的平均值再加上
预先设置的随机位移量作为中心点像素值,对矩阵中的所有点按上述
方式进行处理,即得到大小为x*y的各向同性纹理图像,其中预先设
置的随机位移量服从alpha稳定分布。最后对生成的纹理数据进行尺度
变化,将所有像素值变化到[0,255]。
步骤104:判断是否需要生成各向异性纹理,若需要,执行步骤
105,否则执行步骤106。
步骤105:将各向同性纹理图像通过结构滤波器生成各向异性纹理
图像。
在本步骤中,所述结构滤波器为表征各向异性的结构滤波器,完
全刻画了纹理的各向异性特征,从各向同性纹理映射到各向异性纹理,
可等价于将各向同性纹理通过一个满足特定结构函数的结构滤波器。
各向异性纹理FA(x,y)可视为各向同性纹理FI(x,y)通过滤波器h(u,v)得
到,即:
FA(x,y)=∫FI(x-u,y-v)h(u,v)d(u,v);
相应的频谱表示为:
SA(ωx,ωy)=SI(ωx,ωy)Hφ(ωx,ωy),
其中,Hφ(ωx,ωy)为滤波器的频域表示,结构滤波器具体形式为:
Hφ(ωx,ωy)=(1+α-2αcos2(ωθ-θ0))-1,其中,参数α∈[0,1]为
各向异性纹理的强度,参数θ0∈[0,π]为各向异性纹理的方向。
结构滤波器并不改变纹理的自相关性,只是改变其方向分布特性,
本实施例中设定结构滤波器的方向角参数强度参数α=0.7。
首先利用2维FFT变换将已得到的各向同性纹理图像变换到频域,
并记为SI(ωx,ωy)。各向异性纹理可视为各向性纹理通过结构滤波器的响
应,将每帧各向同性纹理图像输入到结构滤波器,得到各向异性纹理
图像SA(ωx,ωy),其中SA(ωx,ωy)=SI(ωx,ωy)Hφ(ωx,ωy);
将SA(ωx,ωy)通过2维的IFFT变换,得到时域的各向异性纹理图像;
最后,对生成的纹理数据进行尺度变化,将所有像素值变化到
[0,255]。
步骤106:判断生成的纹理图像的个数是否等于n,若等于,执行
步骤107,否则执行步骤102。
步骤107:对n帧纹理图像做相关性处理。
在本步骤中,为了使生成的纹理更具连贯性,需要增加图像序列
相互之间的相关性,具体操作为对相邻的若干帧图像求和取平均后作
为一帧图像(例如对相邻的5帧图像求和取平均),按照此方式对所有
图像依次增加相关性。
步骤108:将n帧纹理图像写入视频文件,生成动态纹理。
在本步骤中,将相关性处理后的图像写入视频文件,生成动态纹
理。
本发明实施例提供的动态纹理生成方法,能够生成更为丰富和细
腻的自然纹理,诸如岩石表面或带有气泡的海水背景等各向同性或各
向异性的自然纹理,对于传统的基于FBM模型不能生成的纹理,本发
明提供了一种新的方式进行复杂纹理的生成,满足了人们的需要。
以上实施例仅用于说明本发明的技术方案,而非对其限制;尽管
参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员
应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,
或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使
相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。