carNumber.rar
carNumber.rar
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 19538 2018-05-05 10:56 carNumber1.jpg
文件 25536 2018-03-18 11:45 carNumber29.jpg
文件 26204 2018-05-14 18:49 carNumber5.jpg
文件 795336 2017-03-21 15:41 carNumberann_xml.xml
文件 61946 2018-03-25 15:30 carNumberann_xml_character.xml
文件 22492 2018-04-04 16:29 carNumbercarID_Detection.cpp
文件 2083 2018-04-04 16:23 carNumbercarID_Detection.h
文件 136491 2018-05-14 18:50 carNumbercarNumber
文件 790 2018-05-14 18:53 carNumberchar10.jpg
文件 784 2018-05-14 18:53 carNumberchar11.jpg
文件 712 2018-05-14 18:53 carNumberchar12.jpg
文件 796 2018-05-14 18:53 carNumberchar13.jpg
文件 380 2018-05-14 18:53 carNumberchar14.jpg
文件 771 2018-05-14 18:53 carNumberchar15.jpg
文件 797 2018-05-14 18:53 carNumberchar16.jpg
文件 390 2013-11-05 11:37 carNumbercharSamples (1).png
文件 376 2013-11-07 08:35 carNumbercharSamples (10).png
文件 413 2013-11-10 08:12 carNumbercharSamples (11).png
文件 413 2013-11-09 08:47 carNumbercharSamples (12).png
文件 376 2013-11-06 07:31 carNumbercharSamples (13).png
文件 413 2013-11-07 10:29 carNumbercharSamples (14).png
文件 398 2013-11-07 01:38 carNumbercharSamples (15).png
文件 390 2013-11-09 16:11 carNumbercharSamples (16).png
文件 413 2013-11-05 23:09 carNumbercharSamples (17).png
文件 413 2013-11-04 07:38 carNumbercharSamples (18).png
文件 413 2013-11-10 17:49 carNumbercharSamples (19).png
文件 413 2013-11-04 17:45 carNumbercharSamples (2).png
文件 452 2013-11-07 09:17 carNumbercharSamples (20).png
文件 328 2013-11-09 09:13 carNumbercharSamples (21).png
文件 578 2013-11-06 07:23 carNumbercharSamples (22).png
............此处省略1927个文件信息
#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
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 19538 2018-05-05 10:56 carNumber1.jpg
文件 25536 2018-03-18 11:45 carNumber29.jpg
文件 26204 2018-05-14 18:49 carNumber5.jpg
文件 795336 2017-03-21 15:41 carNumberann_xm
文件 61946 2018-03-25 15:30 carNumberann_xm
文件 22492 2018-04-04 16:29 carNumbercarID_Detection.cpp
文件 2083 2018-04-04 16:23 carNumbercarID_Detection.h
文件 136491 2018-05-14 18:50 carNumbercarNumber
文件 790 2018-05-14 18:53 carNumberchar10.jpg
文件 784 2018-05-14 18:53 carNumberchar11.jpg
文件 712 2018-05-14 18:53 carNumberchar12.jpg
文件 796 2018-05-14 18:53 carNumberchar13.jpg
文件 380 2018-05-14 18:53 carNumberchar14.jpg
文件 771 2018-05-14 18:53 carNumberchar15.jpg
文件 797 2018-05-14 18:53 carNumberchar16.jpg
文件 390 2013-11-05 11:37 carNumbercharSamples (1).png
文件 376 2013-11-07 08:35 carNumbercharSamples (10).png
文件 413 2013-11-10 08:12 carNumbercharSamples (11).png
文件 413 2013-11-09 08:47 carNumbercharSamples (12).png
文件 376 2013-11-06 07:31 carNumbercharSamples (13).png
文件 413 2013-11-07 10:29 carNumbercharSamples (14).png
文件 398 2013-11-07 01:38 carNumbercharSamples (15).png
文件 390 2013-11-09 16:11 carNumbercharSamples (16).png
文件 413 2013-11-05 23:09 carNumbercharSamples (17).png
文件 413 2013-11-04 07:38 carNumbercharSamples (18).png
文件 413 2013-11-10 17:49 carNumbercharSamples (19).png
文件 413 2013-11-04 17:45 carNumbercharSamples (2).png
文件 452 2013-11-07 09:17 carNumbercharSamples (20).png
文件 328 2013-11-09 09:13 carNumbercharSamples (21).png
文件 578 2013-11-06 07:23 carNumbercharSamples (22).png
............此处省略1927个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)