在预处理之后,接下来就要进行码字提取。在码字提取部分,我们采用的就是霍夫(Hough transform)变换。通过霍夫变换我们可以知道整个二维码倾斜的角度,然后我们就可以进行二维码的矫正。
霍夫变换具体如下:采用分级的Hough变换方法,不但降低了Hough变换的运算量,而且精确的求得了条码的倾斜角度。其次,扫描 PDF417条码的起始和终止符确定条码的左右边界线方程,结合Hough 变换求得的上下边界方程,确定条码四个顶点的位置坐标, 能后采用反透视变换完成条码图像几何畸变的校正。 最后,对投影法分层法进行了改进,并采用其完成PDF417条码的码字提取,整个过程如下图所示:
要进行图像提取,我们需要先进倾斜矫正。要进行倾斜矫正,那么我们必须先知道倾斜角度。一般来说,要知道倾斜角度,就可以使用投影特性法、 Hough变换法和傅立叶变换法等。投影特性法就是以一定的步长角度值不断的对图像进行投影试探,当获得最佳的投影结果时,即认为这个角度为图像的倾斜角度。投影特性法是为了提高求取倾斜角度的精度,就需要减小单位步长角度值,计算次数就会成倍的增加。傅立叶变换法是Postl等人提出来的,证明了傅立叶空间密度最高的方向就是图像的倾斜角度, 但此方法的时间和空间复杂度都比较高,不适用于对实时性要求较高的嵌入式设备。Hough变换求图像中的直线时具有良好的鲁棒性, 它利用图像的全局特性,对直线上的点进行累加,所以受噪声和边界间断的影响较小。但 Hough 变换也存在计算量非常大的问题精度越高,参数空间的量化就要求越精细,计算量也就越大,不能满足解码实时性的要求,导致 Hough 变换的使用场合受到了极大的限制。本文在Hough变换的基础上,采用一种分级的Hough变换方法,既能够精确的求得PDF417条码的倾斜角度,又能够大幅的降低Hough变换的运算量,使之满足解码实时性的要求,能够应用到嵌入式设备中。