Giter Site home page Giter Site logo

easypr-java's Introduction

EasyPR-Java

Introduction 简介

EasyPR-Java是liuruoze/EasyPR 的Java版本。 EasyPR是一个中文的开源车牌识别系统,其目标是成为一个简单、高效、准确的车牌识别引擎。

假设我们有如下的原始图片,需要识别出中间的车牌字符与颜色:

EasyPR 原始图片

经过EasyPR的第一步处理车牌检测(PlateDetect)以后,我们获得了原始图片中仅包含车牌的图块:

EasyPR 车牌

接着,我们对图块进行OCR过程,在EasyPR中,叫做字符识别(CharsRecognize)。我们得到了一个包含车牌颜色与字符的字符串:

“蓝牌:苏EUK722”

Release Notes 更新

v0.1 first release This is the first release can recognize plate in some simple cases.

Downloads and Installation 下载安装

Git克隆一份拷贝到你本机或者直接下载zip压缩。EasyPR-Java 支持以下两种平台:

Eclipse

使用Eclipse直接导入EasyPR的目录。

INTELLIJ IDEA

本fork版本没有测试

Required Software

本版本在以下平台测试通过:

  • windows7 64bit
  • Eclipse (Luna)
  • jdk1.8.0_45
  • junit 4
  • javacv 0.11

easypr-java's People

Contributors

mumu10 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

easypr-java's Issues

应该如何将此项目导入Eclipse中

你好,我是一个Java初学者,也是git初学者,对EasyPR-Java的项目比较感兴趣,想咨询一下该如何将此项目导入到Eclipse中,非常感谢。

识别的图片有什么要求么

你好,这个对识别的图片有什么要求么,我用手机拍照之后,然后压缩了之后,仍然无法识别出了。调试发现
/**
* 对多幅图像进行SVM判断
*
* @param inVec
* @param resultVec
* @return
*/
public int plateJudge(Vector inVec, Vector resultVec) {

    for (int j = 0; j < inVec.size(); j++) {
        Mat inMat = inVec.get(j);

        if (1 == plateJudge(inMat)) {
            resultVec.add(inMat);
        } else { // 再取中间部分判断一次
            int w = inMat.cols();
            int h = inMat.rows();

            Mat tmpDes = inMat.clone();
            Mat tmpMat = new Mat(inMat, new Rect((int) (w * 0.05), (int) (h * 0.1), (int) (w * 0.9),
                    (int) (h * 0.8)));
            resize(tmpMat, tmpDes, new Size(inMat.size()));

            if (plateJudge(tmpDes) == 1) {
                resultVec.add(inMat);
            }
        }
    }

    return 0;
}

这个方法,对于你提供的测试图片 返回就是1 但是对我拍照的图片返回值就 0 要么就报 Bad argument (INTERNAL ERROR: Unknown SVM type, the SVM structure is probably corrupted) in CvSVM::predict。。

到底应该饮用啥jar阿

尝试了 如下的 几个 全部都不行

    <!-- https://mvnrepository.com/artifact/org.bytedeco/opencv -->
    <!-- https://mvnrepository.com/artifact/org.bytedeco/openblas-platform -->
    <!-- https://mvnrepository.com/artifact/org.bytedeco/opencv-platform -->
    <!-- https://mvnrepository.com/artifact/org.bytedeco/javacv -->
    <dependency>
        <groupId>org.bytedeco</groupId>
        <artifactId>javacv</artifactId>
        <version>1.5.1</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.bytedeco.javacpp-presets/opencv -->

SVMTrain 文件中有代码报错,new Mat() 参数无法是int [ ]

报错代码如下

int []labels = new int[trainingLabels.size()];
  for(int i=0;i<trainingLabels.size();++i)
  labels[i] = trainingLabels.get(i).intValue();
   new Mat(labels).copyTo(classes);  //本行报错

报错的错误日志是
Mat(long)in Mat cannot be applied to (int[]
我看了Mat的构造参数中没有支持 Int[] 的,请问如何解决?

ANNTrain tr = new ANNTrain(); tr.annMain();

ANNTrain tr = new ANNTrain();
tr.annMain();

报错:

A fatal error has been detected by the Java Runtime Environment:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000057f0bfe3, pid=1552, tid=3620

JRE version: Java(TM) SE Runtime Environment (7.0_71-b14) (build 1.7.0_71-b14)
Java VM: Java HotSpot(TM) 64-Bit Server VM (24.71-b01 mixed mode windows-amd64 compressed oops)
Problematic frame:
C [msvcr100.dll+0x3bfe3]

Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
An error report file with more information is saved as:
E:\EasyPR-Java-master\hs_err_pid1552.log

If you would like to submit a bug report, please visit:
http://bugreport.sun.com/bugreport/crash.jsp
The crash happened outside the Java Virtual Machine in native code.
See problematic frame for where to report the bug.

java.lang.UnsatisfiedLinkError: no opencv_core2411 in java.library.path

Java运行时报错
java.lang.UnsatisfiedLinkError: no jniopencv_core in java.library.path

at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:536)
at org.bytedeco.javacpp.Loader.load(Loader.java:411)
at org.bytedeco.javacpp.Loader.load(Loader.java:354)
at org.bytedeco.javacpp.opencv_core.<clinit>(opencv_core.java:10)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.bytedeco.javacpp.Loader.load(Loader.java:386)
at org.bytedeco.javacpp.Loader.load(Loader.java:354)
at org.bytedeco.javacpp.opencv_highgui.<clinit>(opencv_highgui.java:13)
at org.easypr.test.EasyPrTest.testPlateRecognise(EasyPrTest.java:29)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

Caused by: java.lang.UnsatisfiedLinkError: no opencv_core2411 in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:536)
at org.bytedeco.javacpp.Loader.load(Loader.java:402)
... 30 more

VS2013编译提示类型用作表达式。

LOAD_SVM_MODEL(svm_, svm_xml_);
错误 1 error C2275: “cv::ml::SVM”: 将此类型用作表达式非法 c:\easypr-master\src\train\svm_train.cpp 68 1 libeasypr
错误 2 error C2275: “cv::ml::SVM”: 将此类型用作表达式非法 c:\easypr-master\src\core\plate_judge.cpp 20 1 libeasypr
错误 3 error C2275: “cv::ml::SVM”: 将此类型用作表达式非法 c:\easypr-master\src\core\plate_judge.cpp 24 1 libeasypr
错误 4 error C2275: “cv::ml::SVM”: 将此类型用作表达式非法 c:\easypr-master\src\core\plate_judge.cpp 33 1 libeasypr
LOAD_ANN_MODEL(ann_, path);
错误 5 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 22 1 libeasypr
错误 6 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 23 1 libeasypr
错误 7 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 24 1 libeasypr
错误 8 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 36 1 libeasypr
错误 9 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 44 1 libeasypr
错误 10 error C2275: “cv::ml::ANN_MLP”: 将此类型用作表达式非法 c:\easypr-master\src\core\chars_identify.cpp 52 1 libeasypr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.