• 大小: 13.7MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-31
  • 语言: 其他
  • 标签: 车牌识别  

资源简介

这是一整套的车牌定位程序,其汉字由于作者比较懒做字符集的时候只做了。三个省份的:粤,鄂,湘。这个程序公开是为了向ForeverYang2015致敬,当初是他的公开程序才让我开始接触车牌识别。

资源截图

代码片段和文件信息

#include “carID_Detection.h“



void RgbConvToGray(const Mat& inputImageMat & outpuImage)  //g = 0.3R+0.59G+0.11B
{
outpuImage = Mat(inputImage.rows inputImage.cols CV_8UC1);  

for (int i = 0 ;i {
uchar *ptrGray = outpuImage.ptr(i); 
const Vec3b * ptrRgb = inputImage.ptr(i);
for (int j = 0 ;j {
ptrGray[j] = 0.3*ptrRgb[j][2]+0.59*ptrRgb[j][1]+0.11*ptrRgb[j][0];
}
}
}

void posDetect_closeImg(Mat &inputImage  vector  & rects  )   //初步找到候选区域 rects
{

Mat img_canny;
Canny(inputImage img_canny 150 220);
Mat img_threshold;
threshold(img_canny  img_threshold0255  CV_THRESH_OTSU+CV_THRESH_BINARY); //otsu算法自动获得阈值

Mat element = getStructuringElement(MORPH_RECT Size(17 3));  //闭形态学的结构元素
morphologyEx(img_threshold img_thresholdCV_MOP_CLOSEelement);  //形态学处理
morphologyEx(img_threshold img_thresholdMORPH_OPENelement);
//寻找车牌区域的轮廓
vector< vector  > contours;
findContours(img_threshold contoursCV_RETR_EXTERNAL CV_CHAIN_APPROX_NONE);//只检测外轮廓
//对候选的轮廓进行进一步筛选
vector< vector  > ::iterator itc = contours.begin();

while( itc != contours.end())
{
RotatedRect mr = minAreaRect(Mat( *itc )); //返回每个轮廓的最小有界矩形区域
   if(!verifySizes_closeImg(mr))  //判断矩形轮廓是否符合要求
{
itc = contours.erase(itc);
}
else     
{

rects.push_back(mr);
++itc;
}      
}

}


bool verifySizes_closeImg(const RotatedRect & candidate)
{
float error = 0.4;
const float aspect = 44/14; //长宽比
int min = 20*aspect*20; //最小区域
int max = 180*aspect*180;  //最大区域
float rmin = aspect - aspect*error; //考虑误差后的最小长宽比
float rmax = aspect + aspect*error; //考虑误差后的最大长宽比

int area = candidate.size.height * candidate.size.width;
float r = (float)candidate.size.width/(float)candidate.size.height;
if(r <1)
r = 1/r;

if( (area < min || area > max) || (r< rmin || r > rmax)  )
return false;
else
return true;
}

void posDetect(Mat &inputImage  vector  & rects  )   //初步找到候选区域 rects
{
Mat img_sobel;
Sobel(inputImage  img_sobel  CV_8U 10310);
//Sobel(img_sobelimg_sobelCV_8U1310);
Mat img_threshold;
threshold(img_sobel  img_threshold0255  CV_THRESH_OTSU+CV_THRESH_BINARY); //otsu算法自动获得阈值

Mat element = getStructuringElement(MORPH_RECT Size(17 3));  //闭形态学的结构元素
morphologyEx(img_threshold img_thresholdCV_MOP_CLOSEelement);  
morphologyEx(img_thresholdimg_thresholdMORPH_OPENelement);

//Sobel(img_thresholdimg_thresholdCV_8U10310);
//morphologyEx(img_threshold img_thresholdCV_MOP_CLOSEelement);  
//morphologyEx(img_thresholdimg_thresholdMORPH_OPENelement);

namedWindow(“img“CV_WINDOW_NORMAL);
imshow(“img“img_threshold);
//waitKey();
//寻找车牌区域的轮廓
vector< vector  > contours;
findContours(img_threshold contoursCV_RETR_EXTERNAL CV_CHAIN_APPROX_NONE);//只检测外轮廓
//对候选的轮廓进行进一步筛选
vector< vecto

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-07-25 20:37  CarNumber\
     文件      125522  2016-06-17 11:39  CarNumber\1.jpg
     文件      164788  2016-06-17 11:39  CarNumber\10.jpg
     文件      152372  2016-06-17 11:39  CarNumber\11.jpg
     文件      171524  2016-06-17 11:39  CarNumber\12.jpg
     文件      192436  2016-06-17 11:39  CarNumber\13.jpg
     文件      109126  2016-06-17 11:39  CarNumber\14.jpg
     文件      293362  2016-06-17 11:39  CarNumber\15.jpg
     文件      318958  2016-06-17 11:39  CarNumber\16.jpg
     文件      153084  2016-06-17 11:39  CarNumber\17.jpg
     文件      345177  2016-06-17 11:39  CarNumber\18.jpg
     文件      187703  2016-06-17 11:39  CarNumber\19.jpg
     文件      168293  2016-06-17 11:39  CarNumber\2.jpg
     文件      197126  2016-06-17 11:39  CarNumber\20.jpg
     文件      176264  2016-06-17 11:39  CarNumber\21.jpg
     文件      144435  2016-06-17 11:39  CarNumber\22.jpg
     文件      135291  2016-06-17 11:39  CarNumber\23.jpg
     文件      119776  2016-06-17 11:39  CarNumber\24.jpg
     文件      335158  2016-06-17 11:39  CarNumber\25.jpg
     文件      180912  2016-06-17 11:39  CarNumber\26.jpg
     文件      105402  2016-06-17 11:39  CarNumber\27.jpg
     文件      158370  2016-06-17 11:39  CarNumber\28.jpg
     文件      202602  2016-06-17 11:39  CarNumber\3.jpg
     文件      121013  2016-06-17 11:39  CarNumber\4.jpg
     文件      232989  2016-06-17 11:39  CarNumber\5.jpg
     文件      154374  2016-06-17 11:39  CarNumber\6.jpg
     文件      370419  2016-06-17 11:39  CarNumber\7.jpg
     文件      137046  2016-06-17 11:39  CarNumber\8.jpg
     文件      200607  2016-06-17 11:39  CarNumber\9.jpg
     文件      795336  2017-03-21 15:41  CarNumber\ann_xml.xml
     文件       61946  2017-03-21 14:26  CarNumber\ann_xml_character.xml
............此处省略1949个文件信息

评论

共有 条评论