基于彩色跳变点和颜色密度的车牌定位方法

文档序号:6426482阅读:296来源:国知局
专利名称:基于彩色跳变点和颜色密度的车牌定位方法
技术领域
本发明属于智能交通的领域。基于彩色跳变点和颜色密度信息,在HSV空间中依据颜色距离对图像颜色进行分类,利用各车牌底色和彩色跳变点来确定车牌的大致范围, 通过颜色密度和连通域信息不断缩小车牌区域直到精确定位出车牌的位置。
背景技术
随着社会的发展,人们对交通系统的要求越来越高,大力发展智能交通系统 (Intelligent Transportation System,简称ITS),已成为亟待解决的问题。ITS是集电子、 通信、计算机、人工智能、机器视觉、数字图像处理等多门科学和技术的综合化系统。智能交通系统的发展正在日益影响着社会生活、国民经济、城市建设等方方面面,因而受到政府和研究机构的高度重视。我国政府对这方面的研究高度重视,并制定了很多相关的发展规划和相关政策。新一代智能交通控制系统技术被列为国家“863计划”。许多有相关技术基础的高校、科研单位、企业也纷纷加入到相关的研究中。各地对智能交通的需求主要集中在如合节省资金和节约人力的情况下提高对车辆监控和管理的自动化程度。而一个高效、准确的智能交通系统,将能为很多部门提供便利以及技术支持。比如使用智能交通系统可以为公安交通部门提供交通违章行为的执法证据,还能有效的减少人为活动的参与,节约人力资源;还能对犯罪嫌疑人员的交通工具实施实时定位;能对高速路上的车辆实施自动收费和管理,大大提高工作效率。车牌识别(License Plate Location)是智能交通系统中最重要和基础的技术之一,其任务是通过对车牌图片的处理来定位和识别出车牌号码。车牌识别系统可以应用于高速公路收费站、治安卡口、道路违章管理等场合。车牌识别系统包含车牌定位、车牌分割、 字符识别三个步骤,其中车牌定位是识别系统的关键,直接决定车牌识别的效果。关于车牌定位已经提出了很多方法,总的来说这些方法可以分为基于灰度图像的方法和基于彩色图像的方法两大类,也有的方法同时利用灰度图和彩色图来定位车牌。基于灰度图像的方法主要有基于灰度边缘检测的方法、基于扫描行的方法、基于数学形态学的方法、基于小波的方法、基于分类器的方法等。由于人类视觉系统对彩色要比灰度敏感的多,如果能利用好车牌图片的颜色信息将可以大大提高车牌定位的准确率,因此基于彩色图像的车牌定位受到了很多研究者的关注。基于彩色图像的方法主要有基于彩色图像边缘检测的方法、基于边缘颜色点对的方法、基于车牌底色与字符颜色有固定搭配的方法、基于遗传算法和神经网络的方法等。上述彩色车牌定位算法中,基于边缘检测的方法容易受背景干扰且算法复杂;基于边缘颜色点对的方法在图像质量差的情况下容易产生误判;基于车牌底色和字符颜色有固定搭配的方法定位速度快但容易产生伪车牌区域;基于遗传算法和神经网络的方法需要大量样本算法复杂。

发明内容
技术问题针对在自然环境下车牌定位易受背景干扰和受车牌大小不一致、车牌倾斜影响导致车牌定位错误或定位不准确的问题,本发明的目的是提供一种在车牌图片有背景干扰和倾斜的情况下仍然能准确定位出车牌位置的基于彩色跳变点和颜色密度来定位车牌的方法。本方法充分利用了图片的颜色信息,方法简单且对车牌在图片中的位置、车牌大小和车牌倾斜角度没有特殊的限制,定位准确,具有较好的鲁棒性。技术方案一种基于彩色跳变点和颜色密度来定位车牌的方法,具体步骤如下步骤1 将车牌图像用双线性插值法缩小到原图片的0. 2倍,用I表示缩放后的车牌图像,步骤2 将缩放后的彩色车牌图片红绿蓝RGB颜色空间转化到HSV颜色空间,H、S、 V分别代表颜色的色调Hue、饱和度Mturation和亮度Value,在HSV空间中依据颜色间距离计算公式,计算图片中每一像素到八种基准颜色蓝、黄、白、黑、绿、青、红、洋红的距离d, 所述的八种基准颜色在HSV空间的坐标分别为(240,1,1)> (60,1,1)、(0,0,1)、(0,0,0), (120,1,1)、(180,1,1)、(0,1,1)、(300,1,1),所述的颜色间距离计算公式为d = [V1-V2)2+(S1^coS Ii1-S2氺Cosh2)2+(SjSinh1-S2氺Sinh2)2]1/2对彩色车牌图片的颜色进行分类,以最小距离d所对应的颜色作为该像素点分类后的颜色,其中V1^2分别表示两像素在HSV空间中亮度Value分量值,Sl、s2分别表示两像素在HSV空间中饱和度&ituration分量值,h1 h2分别表示两像素在HSV空间中色调Hue 分量值,用18表示颜色分类后的车牌图像,并用一个和车牌图像18长度和宽度一样的矩阵 N8来存储车牌图像18中的颜色信息,数值从1到8分别代表蓝、黄、白、黑、绿、青、红、洋红,步骤3 颜色分类后的车牌图像18进行彩色二值化,分别将可能成为车牌底色的黑、白、蓝、黄四种颜色置为前景白色即赋值为1,再分别将剩余的七种颜色置为黑色即赋值为0,得到四幅二值图片,分别称这四幅图片为黑色二值图、白色二值图、蓝色二值图、黄色二值图,步骤4 将二值图片中的白色像素个数大于给定阈值500的二值图片作为可能存在车牌的二值图片,如果黑色二值图满足其中白色像素个数大于给定阈值500这个条件, 则转入步骤5. 1,如果白色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 2,如果蓝色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 3,如果黄色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤 5. 4,步骤5:步骤5. 1 如果相邻元素中的一个元素为黑色且另一个元素为白色,则以前一元素为1个黑白跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数,直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数,直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黑色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5.2 如果相邻元素中的一个元素为白色且另一个元素为黑色,则以前一元素为1个白黑跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数,直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数,直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在白色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5.3 如果相邻元素中的一个元素为蓝色且另一个元素为白色,则以前一元素为1个蓝白跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数,直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数,直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在蓝色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5. 4:如果相邻元素中的一个元素为黄色且另一个元素为黑色,则以前一元素为1个黄黑跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数,直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数,直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黄色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤6 标记出二值图中所有的白色像素点的四连通域,四连通域指的是1个白色像素点或连续且不间断排列的1以上的白色像素点,对每一个四连通域进行判定,当该四连通域所包含的像素个数小于阈值12或四连通域的宽度小于阈值5或四连通域的长度小于阈值5时,将该四连通域中的像素置为黑色,所述的四连通域的宽度指该区域中像素列坐标的最大差值,四连通域的长度指该区域中像素行坐标的最大差值,图9是四连通域、四连通域长度、四连通域宽度的示意图,步骤7 步骤7. 1 分别寻找二值图中最上方、最下方、最左边和最右边的白点,将它们所在的行或列分别作为新的车牌图像上边界、下边界、左边界和右边界,统计由以上边界围合而成区域内所有白点的个数colorsum,计算该范围内的颜色密度colord,颜色密度colord 的值为所有白点的个数colorsum除以总像素个数,转入步骤7. 2,步骤7. 2 当颜色密度大于0. 7或小于0. 4时,计算所有白色像素点坐标的平均值,将该平均值赋给P点,标记出二值图中所有的白色像素点的四连通域,计算所有四连通域到P点的距离,四连通区域到P点的距离为该四连通域中与P点距离最近的像素点到P点的距离,将距离P点最远的四连通域中的像素置为黑色,转入步骤7. 1,当颜色密度大于0. 4 并且小于0. 7时停止操作,将由最终得到的车牌图像边界而确定的车牌图像输出。有益效果与现有技术相比,本发明具有如下优点首先,充分利用了车牌图片的颜色信息。对车牌图片进行颜色分类,使车牌图片包含八种基准颜色。利用彩色跳变点来定位出车牌的上下边界,由于彩色跳变点是由特定的两种颜色的像素相邻产生的,因此它的准确性比黑白跳变点要高很多,大大减少了其他区域对车牌定位的干扰。在初定位后利用彩色二值化图像,通过车牌底色来确定车牌区域,排除了其他颜色对定位的干扰,使得定位更加准确。其次,本发明对车牌的大小和倾斜情况没有特别的限制。通过车牌底色寻找车牌,将颜色密度的要求设定为0. 4 0. 7之间,这放宽了对车牌倾斜角度的要求。由于没有利用车牌长宽比,字符间距等先验知识,增强了该方法的鲁棒性。最后,本发明算法简单实时性好,只要进行颜色分类,然后简单的根据颜色进行分析和判断就可以定位到车牌位置,也不需要滤波,去噪,平滑等预处理步骤,可以满足系统的实时性要求。综上,本发明对各种复杂条件下获得的车牌图片均能够准确的定位到车牌位置,同时具有较好的鲁棒性和实时性。下面用车牌图像做实验来比较本发明方法和基于黑白跳变点车牌定位方法的定位效果。图10是存在背景干扰的车牌图片。图11是图10使用本发明方法的定位结果。图 12是图10使用基于黑白跳变点方法的定位结果。图13是倾斜情况下的车牌图片。图14 是图13使用本发明方法的定位结果。图15是图13使用基于黑白跳变点方法的定位结果。


图1是本发明的整个过程的流程图。图2是缩放后的车牌图。图3是颜色分类后的车牌。图4是黄色二值化后的图片。图5是蓝色二值化后的图片。图6是初定位的车牌图片。图7是去除小连通域后的车牌图片。图8是最终定位到的车牌。图9是四连通域、四连通域长度、四连通域宽度的示意图。图10是存在背景干扰的车牌图片。图11是图10使用本发明方法的定位结果。图12是图10使用基于黑白跳变点方法的定位结果。图13是倾斜情况下的车牌图片。图14是图13使用本发明方法的定位结果。图15是图13使用基于黑白跳变点方法的定位结果。
具体实施例方式下面结合附图对本发明的具体实施方式
做进一步说明。在windows操作系统下选用MATLAB 7.1作为编程工具,对实际道路上拍摄到的车牌图片进行处理。该实例采用实际道路上拍摄到的车牌图片作为处理对象,最终得到精确的车牌图像。图1是本发明的整个过程的流程图。本发明利用彩色跳变点和颜色密度来定位车牌。其主要目的在于减少背景、车牌大小不一致和车牌倾斜对车牌定位的影响,快速、精确的从车牌图像中截取出车牌所在区域图像。其实现步骤为首先在HSV空间中依据颜色间距离对图片颜色进行分类,将图片转化只包含八种基准颜色的图片。然后对车牌图像进行彩色二值化,得到四幅二值图像,并根据图像中白色像素的数量,判定是否包含车牌。随后,利用彩色跳变点和车牌底色信息来初定位车牌位置。去除二值图中的小连通区域。最后通过颜色密度和连通域信息不断缩小车牌区域直到精确定位出车牌的位置。一种基于彩色跳变点和颜色密度来定位车牌的方法,其特征在于,具体步骤如下步骤1 将车牌图像用双线性插值法缩小到原图片的0. 2倍,用I表示缩放后的车牌图像。图2是缩放后的车牌图。步骤2 将缩放后的彩色车牌图片红绿蓝RGB颜色空间转化到HSV颜色空间,H、S、 V分别代表颜色的色调Hue、饱和度Mturation和亮度Value,在HSV空间中依据颜色间距离计算公式,计算图片中每一像素到八种基准颜色蓝、黄、白、黑、绿、青、红、洋红的距离d, 所述的八种基准颜色在HSV空间的坐标分别为(240,1,1)> (60,1,1)、(0,0,1)、(0,0,0), (120,1,1)、(180,1,1)、(0,1,1)、(300,1,1),所述的颜色间距离计算公式为
d = [(V1-V2)2+(S1^coS Ii1-S2氺cosh2)2+(S1^Sinh1-S2氺sinh2)2]1/2对彩色车牌图片的颜色进行分类,以最小距离d所对应的颜色作为该像素点分类后的颜色,其中V1^2分别表示两像素在HSV空间中亮度Value分量值,Sl、s2分别表示两像素在HSV空间中饱和度&ituration分量值,h1 h2分别表示两像素在HSV空间中色调Hue 分量值,用18表示颜色分类后的车牌图像,并用一个和车牌图像18长度和宽度一样的矩阵 N8来存储车牌图像18中的颜色信息,数值从1到8分别代表蓝、黄、白、黑、绿、青、红、洋红。图3是颜色分类后的车牌。步骤3 颜色分类后的车牌图像18进行彩色二值化,分别将可能成为车牌底色的黑、白、蓝、黄四种颜色置为前景白色即赋值为1,再分别将剩余的七种颜色置为黑色即赋值为0,得到四幅二值图片,分别称这四幅图片为黑色二值图、白色二值图、蓝色二值图、黄色
二值图。图4是黄色二值化后的图片。图5是蓝色二值化后的图片。步骤4 将二值图片中的白色像素个数大于给定阈值500的二值图片作为可能存在车牌的二值图片,如果黑色二值图满足其中白色像素个数大于给定阈值500这个条件, 则转入步骤5. 1,如果白色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 2,如果蓝色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 3,如果黄色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤 5. 4。步骤5 步骤5. 1 如果相邻元素中的一个元素为黑色且另一个元素为白色,则以前一元素为1个黑白跳变点。对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数,直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数,直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黑色二值图中围合而成的初定位车牌二值图,转入步骤6。步骤5.2 如果相邻元素中的一个元素为白色且另一个元素为黑色,则以前一元素为1个白黑跳变点。,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数,直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数,直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在白色二值图中围合而成的初定位车牌二值图,转入步骤6。步骤5.3 如果相邻元素中的一个元素为蓝色且另一个元素为白色,则以前一元素为1个蓝白跳变点。对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数,直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数,直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在蓝色二值图中围合而成的初定位车牌二值图,转入步骤6。步骤5. 4:如果相邻元素中的一个元素为黄色且另一个元素为黑色,则以前一元素为1个黄黑跳变点。对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数,直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数,直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令 h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像 18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黄色二值图中围合而成的初定位车牌二值图,转入步骤6。图6是初定位的车牌图片。步骤6 标记出二值图中所有的白色像素点的四连通域,四连通域指的是1个白色像素点或连续且不间断排列的1以上的白色像素点,对每一个四连通域进行判定,当该四
11连通域所包含的像素个数小于阈值12或四连通域的宽度小于阈值5或四连通域的长度小于阈值5时,将该四连通域中的像素置为黑色,所述的四连通域的宽度指该区域中像素列坐标的最大差值,四连通域的长度指该区域中像素行坐标的最大差值。图7是去除小连通域后的车牌图片。步骤7 步骤7. 1 分别寻找二值图中最上方、最下方、最左边和最右边的白点,将它们所在的行或列分别作为新的车牌图像上边界、下边界、左边界和右边界,统计由以上边界围合而成区域内所有白点的个数colorsum,计算该范围内的颜色密度colord,颜色密度colord 的值为所有白点的个数colorsum除以总像素个数,转入步骤7. 2。步骤7. 2 当颜色密度大于0. 7或小于0. 4时,计算所有白色像素点坐标的平均值,将该平均值赋给P点,标记出二值图中所有的白色像素点的四连通域,计算所有四连通域到P点的距离,四连通区域到P点的距离为该四连通域中与P点距离最近的像素点到P点的距离,将距离P点最远的四连通域中的像素置为黑色,转入步骤7. 1,当颜色密度大于0. 4 并且小于0. 7时停止操作,将由最终得到的车牌图像边界而确定的车牌图像输出。图8是最终定位到的蓝底白字的车牌。
权利要求
1. 一种基于彩色跳变点和颜色密度来定位车牌的方法,其特征在于,具体步骤如下步骤1 将车牌图像用双线性插值法缩小到原图片的0. 2倍,用I表示缩放后的车牌图像,步骤2 将缩放后的彩色车牌图片红绿蓝RGB颜色空间转化到HSV颜色空间,H、S、V分别代表颜色的色调Hue、饱和度Mturation和亮度Value,在HSV空间中依据颜色间距离计算公式,计算图片中每一像素到八种基准颜色蓝、黄、白、黑、绿、青、红、洋红的距离d,所述的八种基准颜色在HSV空间的坐标分别为_,1,1)、(60,1,1)、(0,0,1)、(0,0,0), (120, 1,1)、(180,1,1)、(0,1,1)、(300,1,1),所述的颜色间距离计算公式为d = [ (V1-V2) ^(sfcoshfh^^cosh^^Csfsinl^ii^sinh^2]1/2对彩色车牌图片的颜色进行分类,以最小距离d所对应的颜色作为该像素点分类后的颜色,其中Vl、V2分别表示两像素在HSV空间中亮度Value分量值,Sl、S2分别表示两像素在HSV空间中饱和度&ituration分量值,h1; h2分别表示两像素在HSV空间中色调Hue分量值,用18表示颜色分类后的车牌图像,并用一个和车牌图像18长度和宽度一样的矩阵N8 来存储车牌图像18中的颜色信息,数值从1到8分别代表蓝、黄、白、黑、绿、青、红、洋红,步骤3 颜色分类后的车牌图像18进行彩色二值化,分别将可能成为车牌底色的黑、 白、蓝、黄四种颜色置为前景白色即赋值为1,再分别将剩余的七种颜色置为黑色即赋值为 0,得到四幅二值图片,分别称这四幅图片为黑色二值图、白色二值图、蓝色二值图、黄色二值图,步骤4 将二值图片中的白色像素个数大于给定阈值500的二值图片作为可能存在车牌的二值图片,如果黑色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 1,如果白色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 2,如果蓝色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤 5. 3,如果黄色二值图满足其中白色像素个数大于给定阈值500这个条件,则转入步骤5. 4,步骤5 步骤5. 1 如果相邻元素中的一个元素为黑色且另一个元素为白色,则以前一元素为1 个黑白跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数, 直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黑白跳变点的个数,直到第一次出现当前搜索所在行的黑白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黑白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黑点,设定当前搜索中最先发现的黑点所在的列为初定位车牌图像18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黑色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5.2 如果相邻元素中的一个元素为白色且另一个元素为黑色,则以前一元素为1个白黑跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数, 直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的白黑跳变点的个数,直到第一次出现当前搜索所在行的白黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现白黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索白点,设定当前搜索中最先发现的白点所在的列为初定位车牌图像18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在白色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5.3 如果相邻元素中的一个元素为蓝色且另一个元素为白色,则以前一元素为1 个蓝白跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数, 直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的蓝白跳变点的个数,直到第一次出现当前搜索所在行的蓝白跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现蓝白跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索蓝点,设定当前搜索中最先发现的蓝点所在的列为初定位车牌图像18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在蓝色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤5. 4:如果相邻元素中的一个元素为黄色且另一个元素为黑色,则以前一元素为1 个黄黑跳变点,对矩阵N8进行从上往下的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数, 直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的上边界,同时令hi为所述当前搜索所在行的行序号;对矩阵N8进行从下往上的逐行搜索,同时统计当前搜索所在行的黄黑跳变点的个数,直到第一次出现当前搜索所在行的黄黑跳变点的个数大于给定阈值14个时,停止搜索并将第一次出现黄黑跳变点的个数大于给定阈值14个的当前搜索所在行设定为初定位车牌图像18的下边界,同时令h2为所述当前搜索所在行的行序号,在hi行和h2行之间从左往右逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像18的左边界wl ;再在hi行和h2行之间从右往左逐列搜索黄点,设定当前搜索中最先发现的黄点所在的列为初定位车牌图像18的右边界w2,得到由上边界hi、下边界h2、左边界wl及右边界w2在黄色二值图中围合而成的初定位车牌二值图,转入步骤6,步骤6 标记出二值图中所有的白色像素点的四连通域,四连通域指的是1个白色像素点或连续且不间断排列的1以上的白色像素点,对每一个四连通域进行判定,当该四连通域所包含的像素个数小于阈值12、四连通域的宽度小于阈值5或四连通域的长度小于阈值 5时,将该四连通域中的像素置为黑色,所述的四连通域的宽度指该区域中像素列坐标的最大差值,四连通域的长度指该区域中像素行坐标的最大差值, 步骤7 步骤7. 1 分别寻找二值图中最上方、最下方、最左边和最右边的白点,将它们所在的行或列分别作为新的车牌图像上边界、下边界、左边界和右边界,统计由以上边界围合而成区域内所有白点的个数colorsum,计算该范围内的颜色密度colord,颜色密度colord的值为所有白点的个数colorsum除以总像素个数,转入步骤7.步骤7. 2 当颜色密度大于0. 7或小于0. 4时,计算所有白色像素点坐标的平均值,将该平均值赋给P点,标记出二值图中所有的白色像素点的四连通域,计算所有四连通域到P 点的距离,四连通区域到P点的距离为该四连通域中与P点距离最近的像素点到P点的距离,将距离P点最远的四连通域中的像素置为黑色,转入步骤7. 1,当颜色密度大于0.4并且小于0. 7时停止操作,将由最终得到的车牌图像边界而确定的车牌图像输出。
全文摘要
一种利用彩色跳变点和颜色密度来定位车牌的方法。其主要目的在于减少背景、车牌大小不一致和车牌倾斜对车牌定位的影响,快速、精确的从车牌图像中截取出车牌所在区域图像。其实现步骤为首先在HSV空间中依据颜色间距离对图片颜色进行分类,将图片转化只包含八种基准颜色的图片。然后对车牌图像进行彩色二值化,得到四幅二值图像,并根据图像中白色像素的数量,判定是否包含车牌。随后,利用彩色跳变点和车牌底色信息来初定位车牌位置。去除二值图中的小连通区域。最后通过颜色密度和连通域信息不断缩小车牌区域直到精确定位出车牌的位置。整个定位过程中不包含计算复杂度很高的操作,实时性较好。
文档编号G06T7/40GK102254152SQ20111016283
公开日2011年11月23日 申请日期2011年6月17日 优先权日2011年6月17日
发明者周锋, 达飞鹏, 陆海洲 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1