有着60余年历史的Gabor公司是
德国知名的鞋业
制造企业,是由Gabor先生于1949年创立的家族企业,公司的总部位于
巴伐利亚州中部、
慕尼黑附近的
罗森海姆市,现在已经发展成为一个上市公司,在欧洲的其他国家还有工厂和分支机构,公司共有4300位员工,6个生产基地,每天生产能力为3.3万双鞋。保证每一双鞋达到品质标准最高值这一理念使Gabor成为一个传统品牌,然而,传统并不能代表一切,在过去十几年中,Gabor公司引进了许多新技术和新多元的产品生产链。只有顶级的皮料和部件才能达到Gabor鞋的标准。高品质同样还要求精湛的手工技术,做一双Gabor鞋需要250个独立的组件,45种不同的材料,140多道加工工序,每双鞋在经过140多道工序后,员工还有很多机器以外的精细手工需要操作。Gabor鞋的制造专由
奥地利、
斯洛伐克和
葡萄牙这些位于
欧洲的工厂完成,有非常严格的标准和检查制度,以保证所有工厂生产的品质是一样的。
成功的理念公式数个世纪以来都没有更改。每一双Gabor鞋都遵循三个标准而设计制造:时尚、品质、舒适。将这三个要素的完美结合是Gabor品牌的标识,也是这一点使Gabor在女鞋时尚界前沿稳坐一席。
产品系列
1.Trend这是一个所谓超时尚的产品系列,它紧随时代潮流,非常现代。其在整个鞋的产量中比重不大。
2.Fashion不失时尚,但不是单为最赶时髦的某一类人设计的,而是比较大众化,适合全球销售的一个产品系列。3.Sport休闲、舒适,适于全天日常穿着。Fashion和Sport产品系列占总产量的60%。
4.Comfort这是专为成熟女性设计的系列。5.Jolly给年轻人设计的一个系列,前卫、个性、色彩多样。
6.GaborMan男士鞋也分为几个小的系列:运动、优雅、商务。
函数
Gabor变换属于加窗傅立叶变换,Gabor函数可以在频域不同尺度、不同方向上提取相关的特征。另外Gabor函数与人眼的生物作用相仿,所以经常用作纹理识别上,并取得了较好的效果。二维Gabor函数可以表示为:
其中:
v的取值决定了Gabor滤波的波长,u的取值表示Gabor核函数的方向,K表示总的方向数。参数决定了高斯窗口的大小,这里取。程序中取4个频率(v=0,1,...,3),8个方向(即K=8,u=0,1,...,7),共32个Gabor核函数。不同频率不同方向的Gabor函数可通过下图表示:
三、代码实现
Gabor函数是复值函数,因此在运算过程中要分别计算其实部和虚部。代码如下:
privatevoidCalculateKernel(intOrientation,intFrequency)
{
for(intx=-(GaborWidth-1)/2;x\u003c(GaborWidth-1)/2+1;x++)
for(inty=-(GaborHeight-1)/2;y\u003c(GaborHeight-1)/2+1;y++)
{
real=KernelRealPart(x,y,Orientation,
频率);
img=KernelImgPart(x,y,Orientation,Frequency);
KernelFFT2[(x+(GaborWidth-1)/2)+256*(y+(GaborHeight-1)/2)].Re=real;
}
}
privatedoubleKernelRealPart(intx,inty,intOrientation,intFrequency)
{
doubleU,V;
doubleSigma,Kv,Qu;
doubletmp1,tmp2;
U=Orientation;
Kv=Math.PI*Math.Exp((-(V+2)/2)*Math.Log(2,Math.E));
Qu=U*Math.PI/8;
tmp1=Math.Exp(-(Kv*Kv*(x*x+y*y)/(2*Sigma)));
tmp2=Math.Cos(Kv*Math.Cos(Qu)*x+Kv*Math.Sin(Qu)*y)-Math.Exp(-(Sigma/2));
returntmp1*tmp2*Kv*Kv/Sigma;
有了Gabor核函数后就可以采用前文中提到的“离散二维叠加和卷积”或“快速傅立叶变换卷积”的方法求解Gabor变换,并对变换结果求均值和
方差作为提取的特征。32个Gabor核函数对应32次变换可以提取64个特征(包括均值和方差)。由于整个变换过程代码比较复杂,这里仅提供测试代码供下载。该代码仅计算了一个101×101尺寸的Gabor函数变换,得到均值和方差。代码采用两种卷积计算方式,从结果中可以看出,快速傅立叶变换卷积的效率是离散二维叠加和卷积的近50倍。