【问题标题】:Neuroph Image Recognition and Android ErrorNeuroph 图像识别和 Android 错误
【发布时间】:2013-03-26 20:10:45
【问题描述】:

我正在尝试使用 Neuroph 框架和 Eclipse 为 android 创建一个图像识别应用程序,但我不断收到此错误

(使用2.7框架版本) 03-26 17:05:20.533:E/AndroidRuntime(3107):致命异常:dataLoader 03-26 17:05:20.533: E/AndroidRuntime(3107): java.lang.NoClassDefFoundError: org.neuroph.core.NeuralNetwork 03-26 17:05:20.533: E/AndroidRuntime(3107): at com.example.meuprojetoandroid1.MainActivity$1.run(MainActivity.java:49) 03-26 17:05:20.533: E/AndroidRuntime(3107): at java.lang.Thread.run(Thread.java:856)

(使用2.6框架版本) 03-26 17:05:44.299: E/AndroidRuntime(3478): java.lang.StackOverflowError 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.util.HashMap.get(HashMap.java:298) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectStreamClass.getReflectionField(ObjectStreamClass.java:190) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1091) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:455) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.util.ArrayList.readObject(ArrayList.java:649) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1354) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1137) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:455) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1369) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1137) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:455) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1369) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.util.ArrayList.readObject(ArrayList.java:657) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1354) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1137) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:455) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1369) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readFieldValues(ObjectInputStream.java:1137) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:455) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObjectForClass(ObjectInputStream.java:1369) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readHierarchy(ObjectInputStream.java:1266) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNewObject(ObjectInputStream.java:1851) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readNonPrimitiveContent(ObjectInputStream.java:787) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1999) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.io.ObjectInputStream.readObject(ObjectInputStream.java:1956) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.util.ArrayList.readObject(ArrayList.java:657) 03-26 17:05:44.299: E/AndroidRuntime(3478): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-26 17:05:44.299: E/AndroidRuntime(3478): at java

在 2.6 上,它确实适用于示例 http://neuroph.sourceforge.net/tutorials/android_image_recognition_using_neuroph.htm

但是当我使用我的教练 nnet 时,它给了我这个错误...... 我尝试训练几个神经网络,但不断收到错误... 我使用 2.7 和 2.6 Neuroph Studio 来训练网络...

对不起,如果重复了,但我也没有找到与答案相关的任何内容......

谢谢

【问题讨论】:

标签: android image-recognition


【解决方案1】:

From the docs for 2.6,

重要提示:当您在 Android 中加载神经网络时,您需要在单独的线程中进行,并增加堆栈大小

new Thread(null, loadDataRunnable, "networkLoader", 32000).start();

否则你会得到一个 java.lang.StackOverflowError。

【讨论】:

    猜你喜欢
    • 2015-12-31
    • 2012-06-20
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-07
    • 1970-01-01
    • 2012-08-28
    相关资源
    最近更新 更多