HyperLPR是一个使用深度学习针对对中文车牌识别的实现,开源地址:https://github.com/zeusees/HyperLPR,在windows下,使用vs2013编译成功,编译前需要修改opencv340的include和lib路径。
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 43912 2017-11-15 04:56 lpre2eA88888.jpg
文件 492 2018-01-30 11:00 lpre2eincludeCNNRecognizer.h
文件 326 2018-01-30 11:00 lpre2eincludeFastDeskew.h
文件 630 2018-01-30 11:00 lpre2eincludeFineMapping.h
文件 3983 2018-01-30 11:00 lpre2einclude
iBlackThreshold.h
文件 2107 2018-01-31 08:27 lpre2eincludePipeline.h
文件 812 2018-01-30 11:00 lpre2eincludePlateDetection.h
文件 3847 2018-01-30 11:00 lpre2eincludePlateInfo.h
文件 1211 2018-01-30 11:00 lpre2eincludePlateSegmentation.h
文件 581 2018-01-30 11:00 lpre2eincludeRecognizer.h
文件 637 2018-01-30 11:00 lpre2eincludeSegmentationFreeRecognizer.h
文件 5583 2018-01-31 10:59 lpre2elpre2ee2e.cpp
文件 7401 2018-01-31 10:36 lpre2elpre2elpre2e.vcxproj
文件 2969 2018-01-31 08:12 lpre2elpre2elpre2e.vcxproj.filters
文件 165 2018-01-31 10:29 lpre2elpre2elpre2e.vcxproj.user
文件 356611 2018-01-30 11:00 lpre2elpre2emodelcascade.xml
文件 930906 2018-01-30 11:00 lpre2elpre2emodelCharacterRecognization.caffemodel
文件 1830 2018-01-30 11:00 lpre2elpre2emodelCharacterRecognization.prototxt
文件 47608 2018-01-30 11:00 lpre2elpre2emodelHorizonalFinemapping.caffemodel
文件 1337 2018-01-30 11:00 lpre2elpre2emodelHorizonalFinemapping.prototxt
文件 276969 2018-01-30 11:00 lpre2elpre2emodelSegmentation.caffemodel
文件 1719 2018-01-30 11:00 lpre2elpre2emodelSegmentation.prototxt
文件 9415241 2018-01-30 11:00 lpre2elpre2emodelSegmentationFree.caffemodel
文件 4935 2018-01-30 11:00 lpre2elpre2emodelSegmentationFree.prototxt
文件 3542646 2018-02-01 08:17 lpre2elpre2ex64ReleaseCNNRecognizer.obj
文件 3708681 2018-02-01 08:17 lpre2elpre2ex64Releasee2e.obj
文件 3425153 2018-02-01 08:17 lpre2elpre2ex64ReleaseFastDeskew.obj
文件 3572362 2018-02-01 08:17 lpre2elpre2ex64ReleaseFineMapping.obj
文件 993 2018-02-01 08:17 lpre2elpre2ex64Releaselpre2e.Build.CppClean.log
文件 12219 2018-02-01 08:17 lpre2elpre2ex64Releaselpre2e.log
............此处省略45个文件信息
#include “Pipeline.h“
std::vector CH_PLATE_CODE{ “京“ “沪“ “津“ “渝“ “冀“ “晋“ “蒙“ “辽“ “吉“ “黑“ “苏“ “浙“ “皖“ “闽“ “赣“ “鲁“ “豫“ “鄂“ “湘“ “粤“ “桂“
“琼“ “川“ “贵“ “云“ “藏“ “陕“ “甘“ “青“ “宁“ “新“ “0“ “1“ “2“ “3“ “4“ “5“ “6“ “7“ “8“ “9“ “A“
“B“ “C“ “D“ “E“ “F“ “G“ “H“ “J“ “K“ “L“ “M“ “N“ “P“ “Q“ “R“ “S“ “T“ “U“ “V“ “W“ “X“
“Y“ “Z““港““学““使““警““澳““挂““军““北““南““广““沈““兰““成““济““海““民““航““空“};
using namespace std;
template
static unsigned int levenshtein_distance(const T &s1 const T &s2) {
const size_t len1 = s1.size() len2 = s2.size();
std::vector col(len2 + 1) prevCol(len2 + 1);
for (unsigned int i = 0; i < prevCol.size(); i++) prevCol[i] = i;
for (unsigned int i = 0; i < len1; i++) {
col[0] = i + 1;
for (unsigned int j = 0; j < len2; j++)
col[j + 1] = min(
min(prevCol[1 + j] + 1 col[j] + 1)
prevCol[j] + (s1[i] == s2[j] ? 0 : 1));
col.swap(prevCol);
}
return prevCol[len2];
}
void TEST_ACC(){
pr::PipelinePR prc(“model/cascade.xml“
“model/HorizonalFinemapping.prototxt“ “model/HorizonalFinemapping.caffemodel“
“model/Segmentation.prototxt“ “model/Segmentation.caffemodel“
“model/CharacterRecognization.prototxt“ “model/CharacterRecognization.caffemodel“
“model/SegmentationFree.prototxt“ “model/SegmentationFree.caffemodel“
);
ifstream file;
string imagename;
int n = 0 correct = 0 j = 0 sum = 0;
char filename[] = “E:\general_test\1.txt“;
string pathh = “E:\general_test\“;
file.open(filename ios::in);
// cout << filename << endl;
while (!file.eof())
{
file >> imagename;
string imgpath = pathh + imagename;
// cout << imgpath << endl;
std::cout << “------------------------------------------------“ << endl;
cout << “图片名:“ << imagename << endl;
cv::Mat image = cv::imread(imgpath);
// cv::imshow(“image“ image);
// cv::waitKey(0);
std::vector res = prc.RunPiplineAsImage(image pr::SEGMENTATION_FREE_METHOD);
float conf = 0;
vector con;
vector name;
for (auto st : res) {
if (st.confidence > 0.1) {
//std::cout << st.getPlateName() << “ “ << st.confidence << std::endl;
con.push_back(st.confidence);
name.push_back(st.getPlateName());
//conf += st.confidence;
}
else
cout << “no string“ << endl;
}
// std::cout << conf << std::endl;
int num = con.size();
float max = 0;
string platestr chpr ch;
int diff = 0 dif = 0;
for (int i = 0; i < num; i++) {
if (con.at(i) > max)
{
max = con.at(i);
platestr = name.at(i);
}
}
// cout << “max:“< cout << “string:“ << platestr << endl;
chpr = platestr.substr(0 2);
ch = imagename.substr(0 2);
diff = levenshtein_distance(imagename platestr);
dif = diff - 4;
cout << “差距:“ << dif << endl;
sum += dif;
if (ch != chpr
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 43912 2017-11-15 04:56 lpre2eA88888.jpg
文件 492 2018-01-30 11:00 lpre2eincludeCNNRecognizer.h
文件 326 2018-01-30 11:00 lpre2eincludeFastDeskew.h
文件 630 2018-01-30 11:00 lpre2eincludeFineMapping.h
文件 3983 2018-01-30 11:00 lpre2einclude
iBlackThreshold.h
文件 2107 2018-01-31 08:27 lpre2eincludePipeline.h
文件 812 2018-01-30 11:00 lpre2eincludePlateDetection.h
文件 3847 2018-01-30 11:00 lpre2eincludePlateInfo.h
文件 1211 2018-01-30 11:00 lpre2eincludePlateSegmentation.h
文件 581 2018-01-30 11:00 lpre2eincludeRecognizer.h
文件 637 2018-01-30 11:00 lpre2eincludeSegmentationFreeRecognizer.h
文件 5583 2018-01-31 10:59 lpre2elpre2ee2e.cpp
文件 7401 2018-01-31 10:36 lpre2elpre2elpre2e.vcxproj
文件 2969 2018-01-31 08:12 lpre2elpre2elpre2e.vcxproj.filters
文件 165 2018-01-31 10:29 lpre2elpre2elpre2e.vcxproj.user
文件 356611 2018-01-30 11:00 lpre2elpre2emodelcascade.xm
文件 930906 2018-01-30 11:00 lpre2elpre2emodelCharacterRecognization.caffemodel
文件 1830 2018-01-30 11:00 lpre2elpre2emodelCharacterRecognization.prototxt
文件 47608 2018-01-30 11:00 lpre2elpre2emodelHorizonalFinemapping.caffemodel
文件 1337 2018-01-30 11:00 lpre2elpre2emodelHorizonalFinemapping.prototxt
文件 276969 2018-01-30 11:00 lpre2elpre2emodelSegmentation.caffemodel
文件 1719 2018-01-30 11:00 lpre2elpre2emodelSegmentation.prototxt
文件 9415241 2018-01-30 11:00 lpre2elpre2emodelSegmentationFree.caffemodel
文件 4935 2018-01-30 11:00 lpre2elpre2emodelSegmentationFree.prototxt
文件 3542646 2018-02-01 08:17 lpre2elpre2ex64ReleaseCNNRecognizer.obj
文件 3708681 2018-02-01 08:17 lpre2elpre2ex64Releasee2e.obj
文件 3425153 2018-02-01 08:17 lpre2elpre2ex64ReleaseFastDeskew.obj
文件 3572362 2018-02-01 08:17 lpre2elpre2ex64ReleaseFineMapping.obj
文件 993 2018-02-01 08:17 lpre2elpre2ex64Releaselpre2e.Build.CppClean.log
文件 12219 2018-02-01 08:17 lpre2elpre2ex64Releaselpre2e.log
............此处省略45个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)