public double EvaluateClassImageSet(ClassImageSet_RGB16 cis, vector_int classesRes, vector_double confidencies, vector_vector_double outputs, ref double meanError)
    {
        double ret = VisionLabPINVOKE.BPN_ImageClassifier_RGB16_EvaluateClassImageSet(swigCPtr, ClassImageSet_RGB16.getCPtr(cis), vector_int.getCPtr(classesRes), vector_double.getCPtr(confidencies), vector_vector_double.getCPtr(outputs), ref meanError);

        if (VisionLabPINVOKE.SWIGPendingException.Pending)
        {
            throw VisionLabPINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }
    public double TrainClassImageSet(int nrOfEpochs, double learnRate, double momentum, ClassImageSet_RGB16 cis, ref double meanError)
    {
        double ret = VisionLabPINVOKE.BPN_ImageClassifier_RGB16_TrainClassImageSet(swigCPtr, nrOfEpochs, learnRate, momentum, ClassImageSet_RGB16.getCPtr(cis), ref meanError);

        if (VisionLabPINVOKE.SWIGPendingException.Pending)
        {
            throw VisionLabPINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }
 public BPN_ImageOptimizer_RGB16(int populationSize, int nrEpochs, double lowConfidence, ClassImageSet_RGB16 trainCIS, ClassImageSet_RGB16 evalCIS, int hidden1Low, int hidden1High, int hidden2Low, int hidden2High, double learnRateLow, double learnRateHigh, double momentumLow, double momentumHigh) : this(VisionLabPINVOKE.new_BPN_ImageOptimizer_RGB16(populationSize, nrEpochs, lowConfidence, ClassImageSet_RGB16.getCPtr(trainCIS), ClassImageSet_RGB16.getCPtr(evalCIS), hidden1Low, hidden1High, hidden2Low, hidden2High, learnRateLow, learnRateHigh, momentumLow, momentumHigh), true)
 {
     if (VisionLabPINVOKE.SWIGPendingException.Pending)
     {
         throw VisionLabPINVOKE.SWIGPendingException.Retrieve();
     }
 }