车牌定位与提取
车牌识别原理

车牌识别原理
车牌识别是指通过图像处理和模式识别技术,对车辆的车牌进行自动识别和文字提取的过程。
其原理可以概括为以下几个步骤:
1. 图像预处理:从摄像头获取的图像需要进行预处理,包括去噪、灰度化、二值化等操作。
去噪主要是为了减少图像中的干扰信息,而灰度化和二值化则是将图像转换为黑白二值图,方便后续处理。
2. 车牌定位:在经过预处理后的图像中,需要找到车牌所在的位置。
常用的方法有基于边缘检测、颜色分析和形状匹配等。
边缘检测可以提取图像中的边缘信息,颜色分析可以根据车牌的颜色特性进行筛选,形状匹配可以通过匹配车牌的形状特征来定位。
3. 字符分割:在定位到车牌后,需要将车牌上的字符进行分割。
常见的方法有基于边缘投影和垂直投影的字符分割算法。
边缘投影是通过检测字符边缘的变化情况来实现分割,垂直投影则是通过统计字符列中像素的数量来实现分割。
4. 字符识别:分割后得到的单个字符需要进行识别。
字符识别主要是通过模式识别技术,例如用神经网络、SVM等算法进
行训练和匹配。
训练集中包含了各种不同字符的样本,识别时将样本与待识别字符进行比对,找到最匹配的字符。
5. 结果输出:识别出的字符需要进行校验和整理,确保识别准
确无误。
最后将识别结果输出为文字或数字,用于后续的车辆管理和系统应用。
综上所述,车牌识别主要通过图像预处理、车牌定位、字符分割、字符识别和结果输出等步骤实现对车牌的自动识别和文字提取。
通过不同的算法和技术优化,可以提高识别的准确率和实时性,提升车牌识别系统的性能和可靠性。
车牌提取的实现方法

车牌提取的实现方法
车牌识别是计算机视觉和图像处理领域中的一个应用,其实现方法通常涉及以下步骤:
图像采集:使用摄像头或其他图像采集设备获取车辆图像。
这可以是实时视频流或静态图像。
图像预处理:对采集到的图像进行预处理,包括去噪、调整图像的亮度和对比度、图像增强等操作,以提高后续处理的准确性。
车牌定位:使用图像处理技术,例如边缘检测、色彩信息等,定位图像中的车牌位置。
车牌通常具有独特的形状和颜色,可以通过这些特征进行检测。
字符分割:对车牌区域进行字符分割,将每个字符分离开来。
这通常涉及到字符之间的空隙分析、连通区域分割等技术。
字符识别:对分割得到的字符进行识别,将其转换为文字信息。
字符识别可以使用光学字符识别(OCR)技术,也可以结合深度学习模型,例如卷积神经网络(CNN)。
后处理:对字符识别结果进行后处理,例如根据语法规则验证
识别的结果,纠正可能的误识别。
输出结果:最终输出识别到的车牌信息,通常包括车牌号码和相关信息。
在实际应用中,车牌识别系统可以使用传统的计算机视觉方法,也可以结合深度学习等先进技术。
深度学习方法,尤其是使用卷积神经网络(CNN)的方法,在车牌识别任务中取得了很好的效果,尤其是在大规模数据集上进行训练的深度学习模型在复杂场景下表现较好。
一种复杂环境中的车牌定位算法

一种复杂环境中的车牌定位算法车牌定位是智能交通系统中重要的一环,它是车辆识别系统的关键步骤。
然而,在复杂环境中,如光线不均匀、天气恶劣或者车辆位置和角度变化较大时,车牌定位变得尤为困难。
因此,为了提高车牌定位的准确性和鲁棒性,在这种复杂环境下,可以采用以下算法。
首先,可以通过颜色特征进行车牌定位。
车牌通常具有特定的颜色,例如蓝色、黄色或者绿色等。
因此,可以使用颜色分割算法来提取图像中的车牌区域。
该算法首先根据颜色阈值将图像分割为不同的颜色区域,然后通过形态学操作来滤除小的非车牌区域。
最后,根据车牌的特定形状和比例进行筛选和检测。
其次,可以利用边缘检测算法来进行车牌定位。
边缘检测可以识别图像中的边缘信息,而车牌通常具有较为明显的边缘。
可以采用经典的边缘检测方法,如Canny算子,对图像进行边缘提取。
然后,根据车牌的特定形状和比例进行车牌候选区域的筛选。
此外,可以采用模板匹配的方法进行车牌定位。
模板匹配是一种基于相似度的匹配算法,可以在复杂背景下识别车牌。
首先,需要采集车牌图像的样本,然后使用特定的特征提取算法,如卷积神经网络(CNN),将车牌样本转换为特征向量。
接下来,对于待检测图像,也使用同样的特征提取算法,将图像转换为特征向量。
最后,通过计算图像特征向量与车牌样本特征向量之间的相似度来判断是否为车牌区域。
最后,可以结合多种算法进行车牌定位。
由于复杂环境下的车牌定位问题具有较高的难度,单一算法往往无法满足要求。
因此,可以采用多种算法的组合,例如,先通过颜色分割算法提取初始车牌区域,然后再使用边缘检测和模板匹配算法进行进一步的筛选和确认。
综上所述,复杂环境中的车牌定位算法可以结合颜色分割、边缘检测、模板匹配等多种方法。
同时,对于车牌定位的准确性和鲁棒性,还需要考虑光照变化、天气条件等因素,并采用适当的预处理和参数调整方法来提高算法的性能。
提取车牌

提取车牌的具体步骤如下:1、提取原始图像的行,列和维数,并将数字图像坐标化;2、对汽车图像进行行扫描,并对此方向进行像素分析,将蓝色像素点三基色范围的颜色坐标统计并记录下来,记入一个矩阵IY中,IY为包含行方向车牌像素点的一幅数字图像;3、对数字图像IY进行列方向扫描,同时进行蓝色像素点统计,将统计的像素点记入矩阵Plate 中,Plate就是要提取的目标图像,即车牌图像;4、保存车牌图像,便于下一步提取图像。
基于颜色提取汽车车牌的程序如下所示:I=imread('DSC00944.JPG');subplot(2,3,1),imshow(I);title('原始图像');[y,x,z]=size(I);myI=double(I);Blue_y =zeros(y,1);fori=1:yfor j=1:xif(((myI(i,j,1)<=55)&&(myI(i,j,1)>=0))&&((myI(i,j,2)<=100)&&(myI(i,j,2)>=30))&&... ((myI(i,j,3)<=200) &&(myI(i,j,3)>=90)))%蓝色RGB的颜色范围Blue_y(i,1)=Blue_y(i,1)+1;%蓝色像素点统计endendend[tempMaxY]=max(Blue_y);%Y方向车牌区域确定PY1=MaxY;while((Blue_y(PY1,1)>=5)&&(PY1>1))PY1=PY1-1;endPY2=MaxY;while((Blue_y(PY2,1)>=5)&&(PY2<y))PY2=PY2+1;endIY=I(PY1:PY2,:,:);subplot(2,3,2),plot(Blue_y);gridtitle('Y方向统计')subplot(2,3,4),imshow(IY);title(' Y方向车牌区域确定')%X方向统计Blue_x=zeros(1,x);%进一步确定X方向的车牌区域for j=1:xfori=PY1:PY2if((myI(i,j,1)<=55)&&myI(i,j,1)>=0&&((myI(i,j,2)<=100)&&(myI(i,j,2)>=30))&&... ((myI(i,j,3)<=200)&& (myI(i,j,3)>=90)))Blue_x(1,j)=Blue_x(1,j)+1;endendendPX1=1;while((Blue_x(1,PX1)<3)&&(PX1<x))PX1=PX1+1;endPX2=x;while((Blue_x(1,PX2)<3)&&(PX2>PX1))PX2=PX2-1;endsubplot(2,3,3),plot(Blue_x);gridtitle('X方向统计')%对车牌区域的修正PX1=PX1-2;PX2=PX2+2;Plate=I(PY1:PY2,PX1-2:PX2,:);subplot(2,3,5),imshow(Plate);title('车牌显示');imwrite(Plate,'chepai.bmp');程序输出结果如下:图4.1 车牌定位结果4.4 图像的预处理4.4.1预处理方法流程由于本系统的车牌图像是在室外进行拍摄,因此不可避免地会受到自然季节、光线等因素的影响。
车牌识别(一)-车牌定位

车牌识别(⼀)-车牌定位在对车牌识别过程中,常⽤的⽅法有:基于形状、基于⾊调、基于纹理、基于⽂字特征等⽅法。
⾸先基于形状,在车牌中因为车牌为形状规格的矩形,所以⽬的转化为寻找矩形特征,常常是利⽤车牌长宽⽐例特征、占据图像的⽐例等。
基于⾊调,国内的车牌往往是蓝底⽩字,可以采⽤图像的⾊调或者饱和度特征,进⼊⽣成⼆值图,定位车牌位置。
基于纹理特征⾃⼰还没有基础到。
基于⽂字特征往往是根据⽂字轮廓特征进⾏识别,原理是基于相邻⽂字轮廓特征、⽐例进⾏定位车牌位置。
⼀、图像⼆值化正如前⾯⽂章所⾔,⾸先进⾏获取图像⼆值化特征,本⽂采取了根据图像亮度特征,提⾼对⽐度,进⾏可以清晰获取⽂字的图像,为下⼀步的⽂字轮廓识别打好基础。
1.1 算法流程伪代码1、图像转化为HSV图像,获取V通道图像2、提⾼对⽐度3、V图像⾼斯滤波,去除噪声4、图像⼆值化程序源码:def get_colorvalue(image):height, width, shape = image.shapeimage_hsv = np.zeros((height,width), np.uint8)image_hsv = cv2.cvtColor(image, cv2.COLOR_RGB2HSV)image_hue, image_saturation, image_value = cv2.split(image_hsv)return image_valuedef enhance_contrast(image):kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3,3))img_tophat = cv2.morphologyEx(image, cv2.MORPH_TOPHAT,kernel)img_blackhat = cv2.morphologyEx(image, cv2.MORPH_BLACKHAT, kernel)image_plus_tophat = cv2.add(image, img_tophat)image_plus_blackhat_minus_blackhat = cv2.subtract(image_plus_tophat, img_blackhat)return image_plus_blackhat_minus_blackhatdef preprocess(srcimage):image_value = get_colorvalue(srcimage)image_enhance = enhance_contrast(image_value)image_blur = cv2.GaussianBlur(image_enhance, (5,5), 0)# _, image_binary = cv2.threshold(image_blur, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)_, image_binary = cv2.threshold(image_blur, 100, 255, cv2.THRESH_BINARY )cv2.imwrite('image_binary.png',image_binary)return image_binary1.2 算法分析在实验中在获取通道图像时,发现可以利⽤图像饱和度图像进⾏定位。
基于ERDAS进行车牌定位与车牌号提取的方法

基于ERDAS进行车牌定位与车牌号提取的方法龚 涛 周东卫(西南交通大学测量工程系 四川成都 610031)摘要 本文针对普通数码相机摄取实际环境下的汽车图象,提出了一种在ERDAS IMAGINE上进行车牌定位和车牌号提取的方法,包括:应用图像分类功能对车牌进行非监督分类,通过构造知识工程师进行车牌粗定位,基于车牌区域的纹理特征进行车牌精定位,应用Marr-Hildreth算子完成字符边缘提取的实现过程。
关键词 数码相机 ERDAS IMAGINE 车牌识别A Method for the License Plate Location and ExtractionBased on ERDAS IMAGINE SoftwareGong Tao Zhou Dongwei(Southwest JiaoTong University, Chengdu,610031,China)1 .概述车牌识别是智能交通系统中的一个较为重要的环节。
车牌识别技术对于交通车辆管理、高速公路自动收费管理、区域车辆管理、停车场管理等都有着十分重要的实用意义和经济价值。
车牌识别系统包括:汽车图象的获取,图象的预处理,车牌的定位,车牌字符的提取与识别四大功能。
ERDAS IMAGINE系统是美国ERDAS公司开发的一款遥感和数字图像处理的专业软件,它以模块化的方式提供给用户,用户可根据自己的应用要求、合理的选择不同的功能模块和不同的组合,对系统进行精简,充分利用软硬件资源,并最大限度地满足用户的专业应用要求。
其功能强大,可以完成矢量、栅格、数码、航摄影像等各种数据源文件的处理,并支持90多种数据格式的输入和输出操作 [1]。
本文正是基于ERDAS IMAGINE系统强大的数字图象处理功能,对数码相机所摄取的小型汽车图像,根据车牌提取的实际需要,在ERDAS IMAGE上开发了车牌定位与车牌号提取的一套处理方法,取得了满意的效果。
汽车牌照识别系统中的牌照定位方法研究的开题报告

汽车牌照识别系统中的牌照定位方法研究的开题报告一、选题背景随着社会的不断发展和城市化的加速推进,交通拥堵问题逐渐凸显,交通安全问题成为社会关注的焦点。
为了提高交通管理水平和交通安全性,各国都陆续推出了基于视频监控和图像识别技术的交通管理系统。
在这些系统中,车牌识别系统是一个非常重要的部分,能够准确地把车辆的识别信息传递给交通管理部门,帮助管理部门高效地进行交通管控、追踪违法行为等,有助于缓解拥堵、提升交通安全。
车牌识别系统中,牌照定位技术是其中的一个重要环节,其作用是对车辆牌照的位置进行定位和提取,从而为后续的牌照识别提供可靠的数据。
如何准确快速地实现牌照定位,是车牌识别系统设计的一个关键问题。
二、选题意义传统的车牌识别系统需要人工标注,然后才能进行车牌的识别,耗时、耗力。
而现代的车牌识别系统利用计算机视觉技术,能够实现自动化检测和识别车牌。
因此,车牌识别系统具有工作效率高、准确率高、操作简单等优点。
同时,车牌识别技术还广泛应用于人脸识别、安防监控、智能交通等领域。
本研究旨在探究车牌定位技术的具体实现方式,提升车牌识别系统的效率和准确性,为智能交通的发展做出贡献。
三、研究内容本研究的主要内容将包括以下几个方面:1.分析车牌定位的原理,综述目前国内外车牌定位技术的研究现状和应用情况。
2.设计和实现基于卷积神经网络的车牌定位系统,通过大量的样本数据训练和优化模型,实现车牌定位的自动化。
3.在模型搭建的过程中,选取几种不同的卷积神经网络结构进行比对,对比各种结构的优缺点和适用场景。
4.对比分析传统的车牌定位方法和基于卷积神经网络的车牌定位方法的优势和劣势,探究基于卷积神经网络的车牌定位方法的可行性。
5.根据实验结果,结合实际应用场景,对车牌定位系统进行性能评估和功能完善,提高系统的实用性和稳定性。
四、研究方法本研究将采用文献调研、算法设计、模型实现和实验分析等多种研究方法,具体步骤如下:1.通过查阅相关文献、研究报告等资料,全面了解车牌识别系统和牌照定位技术的发展现状和应用情况。
车牌识别原理简介

车牌识别原理车牌识别是基于图像分割和图像识别理论,对含有车辆号牌的图像进行分析处理,从而确定牌照在图像中的位置,并进一步提取和识别出文本字符。
车牌识别过程包括图像采集、预处理、车牌定位、字符分割、字符识别、结果输出等一系列算法运算,其运行流程如下图所示:图像采集:通过高清摄像抓拍主机对卡口过车或车辆违章行为进行实时、不间断记录、采集。
预处理:图片质量是影响车辆识别率高低的关键因素,因此,需要对高清摄像抓拍主机采集到的原始图像进行噪声过滤、自动白平衡、自动曝光以及伽马校正、边缘增强、对比度调整等处理。
车牌定位:车牌定位的准确与否直接决定后面的字符分割和识别效果,是影响整个车牌识别率的重要因素。
其核心是纹理特征分析定位算法,在经过图像预处理之后的灰度图像上进行行列扫描,通过行扫描确定在列方向上含有车牌线段的候选区域,确定该区域的起始行坐标和高度,然后对该区域进行列扫描确定其列坐标和宽度,由此确定一个车牌区域。
通过这样的算法可以对图像中的所有车牌实现定位。
字符分割:在图像中定位出车牌区域后,通过灰度化、灰度拉伸、二值化、边缘化等处理,进一步精确定位字符区域,然后根据字符尺寸特征提出动态模板法进行字符分割,并将字符大小进行归一化处理。
字符识别:对分割后的字符进行缩放、特征提取,获得特定字符的表达形式,然后通过分类判别函数和分类规则,与字符数据库模板中的标准字符表达形式进行匹配判别,就可以识别出输入的字符图像。
结果输出:将车牌识别的结果以文本格式输出。
车牌识别技术的实现原理和实现方式车辆牌照的识别是基于图像分割和图像识别理论,对含有车辆号牌的图像进行分析处理,从而确定牌照在图像中的位置,并进一步提取和识别出文本字符。
识别步骤概括为:车牌定位、车牌提取、字符识别。
三个步骤地识别工作相辅相成,各自的有效率都较高,整体的识别率才会提高。
识别速度的快慢取决于字符识别,字符的识别目前的主要应用技术为比对识别样本库,即将所有的字符建立样本库,字符提取后通过比对样本库实现字符的判断,识别过程中将产生可信度、倾斜度等中间结果值;另一种是基于字符结构知识的字符识别技术,更加有效的提高识别速率和准确率,适应性较强。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于MATLAB 的车牌定位及提取算法与实现1.车牌定位的基本理论与算法1.1彩色图像灰度化彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度,因此在对图像进行识别等处理中经常将彩色图像转变为灰度图像,以加快处理速度。
经过灰度变换后,像素的动态范围增加,图像的对比度扩展,使图像变得更加清晰、细腻、容易识别。
在车牌识别中要利用灰度分布的特征进行进一步的分割、识别,因此对车牌图像进行灰度化成为车牌定位的必要步骤之一。
1.2灰度拉伸车牌图像定位是个难点,抓拍图像受环境因素影响很大,尤其当外界光照条件过强或过弱时,容易使得整幅图像偏亮或偏暗,这种情况成为低对比度。
为了提高对比度,把感兴趣的灰度范围拉开,使得该范围内的像素,亮的越亮,暗的越暗,就要对图像进行灰度拉伸,使图像上的边缘更加凸显,这样牌照区的笔画特征就会更加明显,更有益于下一步的处理。
灰度拉伸变换原理图如图10.3所示,函数表达式为⎪⎪⎪⎩⎪⎪⎪⎨⎧>---≤≤+---<=b x b x b d bx a c a x ab c d a x x ad x f ),(255255,)()( (10.5)式(10.5)中(a,c)和(b,d)是图10.3中的两个转折点的坐标。
设图像为mxn 像素,其直方图为h(i),a 取满足10)(0mni h ai ≥∑=的最小整数,b 取满足 mn i h ai 109)(0≤∑=的最大整数,c 和d 分别可以在程序中动态设定,也可以根据经验自行设定。
在图10.4中取23,9.0bd a c ==1.3边缘检测图像的边缘是图像的最基本特征。
所谓边缘是指其周围像素灰度有阶跃变化或屋顶变化的那些像素的集合。
边缘广泛存在于物体和背景之间、物体和物体之间、基元和基元之间。
因此,它是图像分割所依赖的重要特征。
常用的边缘检测方法有Sobel 边缘算子、Prewitt 边缘算子、Kirseh 边缘算子、高斯--拉普拉斯算子等等。
该文采用的是Canny 边缘检测的方法。
该方法为最优的阶梯型边缘检测算法。
1.4开闭操作图像滤波形态学的数学基础和所用语言是集合论,其基本运算有四种:膨胀、腐蚀、开启和闭合。
基于这些基本运算,还可以推导和组合成各种数学形态学实用算法。
对图像做了开运算和闭运算,闭运算可以使图像的轮廓线更为光滑,它通常用来消掉狭窄的间断和长细的鸿沟,消除小的孔洞,并弥补轮廓线中的断裂。
1.5 区域标记对二值图像进行区域提取时,首先需要对对图像每个区域进行标记,其中应用到了连通对象进行标注函数bwlabel 主要对二维二值图像中各个分离部分进行标注,其用法如下:[L,num] = bwlabel(BW,n)其中,L 表示返回和BW 相同大小的数组,而且包含了连通对象的标注。
参数n 为4或8,分别对应4邻域和8邻域,默认值为8。
Num 为返回连通数。
然后,需要得到图像区域属性。
计算每个区域的图像特征参数:区域中心位置、最小包含矩形、面积。
这里给出在Matlab 图像处理工具箱中非常重要的一个图像分析函数:regionprops 。
它的用途是get the properties of region ,即用来度量图像区域属性的函数。
其用法如下:S = regionprops(L,properties)其中,测量标注矩阵L中每一个标注区域的一系列属性。
L中不同的正整数元素对应不同的区域,例如:L中等于整数1的元素对应区域1;L中等于整数2的元素对应区域2;以此类推。
返回值S是一个长度为max(L(:))的结构数组,结构数组的相应域定义了每一个区域相应属性下的度量。
properties可以是由逗号分割的字符串列表、饱含字符串的单元数组、单个字符串‘all' 或者‘basic'。
如果properties等于字符串‘all',则所有下述字串列表中的度量数据都将被计算,如果properties 没有指定或者等于‘basic',则属性:‘Area',‘Centroid', 和‘BoundingBox' 将被计算。
本文对已经得到了可行车牌区域的连通域,进行连通域分析均用到上述函数,从而计算出包含所标记的区域的最小宽和高。
并根据先验知识,即对标准车牌而言这个宽高比大致为44:14,不妨取34:14~54:14为字符区域的宽高比范围。
比较谁的宽高比更接近实际车牌宽高比,将更接近的提取并显示出来。
2.车牌定位算法MATLAB实现2.1图像预处理2.1.1图像灰度化I=imread('che01.jpg');figure(1),imshow(I);I_gray=rgb2gray(I);%对原图进行灰度化figure(2),imshow(I_gray);2.1.2灰度拉伸增强I_ls=fdlasen(I_gray);%用自编函数fdlasen对图像拉伸增强2.1.3边缘检测%边缘检测,canny检测出的图像噪声较少[I_ed,t]=edge(I_ls,'canny',[],'both');2.2开闭操作图像滤波%开闭图像操作图像滤波I5=imclose(I_ed,strel('rectangle',[5,19]));I6=imopen(I5,strel('rectangle',[5,20]));I_op=imopen(I6,strel('rectangle',[35,1]));2.3车牌定位并提取%车牌提取[I_bw,num]=bwlabel(I_op,8);S = regionprops(I_bw,'basic');Area=[S.Area];BoundingBox=[S.BoundingBox];for i=0:num-1rectangle('Position',BoundingBox(:,4*i+1:4*i+4));p=BoundingBox(:,4*i+3)/BoundingBox(:,4*i+4);if p>34/14&p<54/14t=I_gray(BoundingBox(:,4*i+2):BoundingBox(:,4*i+2)+BoundingBox(:,4*i+4),BoundingBox (:,4*i+1):BoundingBox(:,4*i+1)+BoundingBox(:,4*i+3));figure,imshow(t)endend附录主程序:clc;clear;close all;%定位之前需要对原图像进行预处理(包括:灰度化、图像增强、边缘检测)I=imread('che01.jpg');figure(1),imshow(I);I_gray=rgb2gray(I);%对原图进行灰度化figure(2),imshow(I_gray);I_ls=fdlasen(I_gray);%用自编函数fdlasen对图像拉伸增强figure(3),imshow(I_ls);%边缘检测,canny检测出的图像噪声较少%[J,t]=edge(I,'roberts',[],'both');%[K,t]=edge(I,'sobel',[],'both');%[L,t]=edge(I,'prewitt',[],'both');[I_ed,t]=edge(I_ls,'canny',[],'both');figure(4),imshow(I_ed);%开闭图像操作图像滤波I5=imclose(I_ed,strel('rectangle',[5,19]));I6=imopen(I5,strel('rectangle',[5,20]));I_op=imopen(I6,strel('rectangle',[35,1]));figure(7),imshow(I_op);%车牌提取[I_bw,num]=bwlabel(I_op,8);S = regionprops(I_bw,'basic');Area=[S.Area];BoundingBox=[S.BoundingBox];for i=0:num-1rectangle('Position',BoundingBox(:,4*i+1:4*i+4));p=BoundingBox(:,4*i+3)/BoundingBox(:,4*i+4);if p>34/14&p<54/14t=I_gray(BoundingBox(:,4*i+2):BoundingBox(:,4*i+2)+BoundingBox(:,4*i+4),BoundingBox (:,4*i+1):BoundingBox(:,4*i+1)+BoundingBox(:,4*i+3));figure,imshow(t)endend灰度增强函数:function K=fdlasen(A);[m,n]=size(A);Fd=imhist(A,256);a=0;S=0;while S<n*m/10a=a+1;S=S+Fd(a);endb=119;S=sum(Fd);while S>n*m*9/10b=b-1;S=S-Fd(b);endc=a/0.9;d=3*b/2;for i=1:mfor j=1:nif A(i,j)<aA(i,j)=A(i,j)*d/a;elseif A(i,j)>=a&A(i,j)<=bA(i,j)=(d-c)*(A(i,j)-a)/(b-a)+c;elseA(i,j)=(255-d)*(A(i,j)-b)/(255-b)+d;endendendK=A;。