Found ROIs:
";
-
- htmlinfo = GetHTMLInfo();
- for (int i = 0; i < htmlinfo.size(); ++i)
- {
- std::stringstream stream;
- stream << std::fixed << std::setprecision(1) << htmlinfo[i]->val;
- zw = stream.str();
-
- result = result + "filename + "\"> " + zw;
- delete htmlinfo[i];
- }
- htmlinfo.clear();
-
- return result;
-}
-
-
-
-bool ClassFlowAnalog::doFlow(string time)
-{
- if (disabled)
- return true;
-
- if (!doAlignAndCut(time)){
- return false;
- };
-
- if (debugdetailanalog) LogFile.WriteToFile("ClassFlowAnalog::doFlow nach Alignment");
-
- doNeuralNetwork(time);
-
- RemoveOldLogs();
-
- return true;
-}
-
-bool ClassFlowAnalog::doAlignAndCut(string time)
-{
- if (disabled)
- return true;
-
- CAlignAndCutImage *caic = flowpostalignment->GetAlignAndCutImage();
-
- for (int i = 0; i < ROI.size(); ++i)
- {
- printf("Analog %d - Align&Cut\n", i);
-
- caic->CutAndSave(ROI[i]->posx, ROI[i]->posy, ROI[i]->deltax, ROI[i]->deltay, ROI[i]->image_org);
- if (SaveAllFiles) ROI[i]->image_org->SaveToFile(FormatFileName("/sdcard/img_tmp/" + ROI[i]->name + ".jpg"));
-
- ROI[i]->image_org->Resize(modelxsize, modelysize, ROI[i]->image);
- if (SaveAllFiles) ROI[i]->image->SaveToFile(FormatFileName("/sdcard/img_tmp/" + ROI[i]->name + ".bmp"));
- }
-
- return true;
-}
-
-void ClassFlowAnalog::DrawROI(CImageBasis *_zw)
-{
- int r = 0;
- int g = 255;
- int b = 0;
-
- for (int i = 0; i < ROI.size(); ++i)
- {
- _zw->drawRect(ROI[i]->posx, ROI[i]->posy, ROI[i]->deltax, ROI[i]->deltay, r, g, b, 1);
- _zw->drawCircle((int) (ROI[i]->posx + ROI[i]->deltax/2), (int) (ROI[i]->posy + ROI[i]->deltay/2), (int) (ROI[i]->deltax/2), r, g, b, 2);
- _zw->drawLine((int) (ROI[i]->posx + ROI[i]->deltax/2), (int) ROI[i]->posy, (int) (ROI[i]->posx + ROI[i]->deltax/2), (int) (ROI[i]->posy + ROI[i]->deltay), r, g, b, 2);
- _zw->drawLine((int) ROI[i]->posx, (int) (ROI[i]->posy + ROI[i]->deltay/2), (int) ROI[i]->posx + ROI[i]->deltax, (int) (ROI[i]->posy + ROI[i]->deltay/2), r, g, b, 2);
- }
-}
-
-bool ClassFlowAnalog::doNeuralNetwork(string time)
-{
- if (disabled)
- return true;
-
- string logPath = CreateLogFolder(time);
-
- string input = "/sdcard/img_tmp/alg.jpg";
- string ioresize = "/sdcard/img_tmp/resize.bmp";
- string output;
- input = FormatFileName(input);
-
-#ifndef OHNETFLITE
- CTfLiteClass *tflite = new CTfLiteClass;
- string zwcnn = "/sdcard" + cnnmodelfile;
- zwcnn = FormatFileName(zwcnn);
- printf(zwcnn.c_str());printf("\n");
- tflite->LoadModel(zwcnn);
- tflite->MakeAllocate();
-#endif
-
- for (int i = 0; i < ROI.size(); ++i)
- {
- printf("Analog %d - TfLite\n", i);
- ioresize = "/sdcard/img_tmp/ra" + std::to_string(i) + ".bmp";
- ioresize = FormatFileName(ioresize);
-
-
- float f1, f2;
- f1 = 0; f2 = 0;
-
-#ifndef OHNETFLITE
-// LogFile.WriteToFile("ClassFlowAnalog::doNeuralNetwork vor CNN tflite->LoadInputImage(ioresize)");
-// tflite->LoadInputImage(ioresize);
- tflite->LoadInputImageBasis(ROI[i]->image);
- tflite->Invoke();
- if (debugdetailanalog) LogFile.WriteToFile("Nach Invoke");
-
-
- f1 = tflite->GetOutputValue(0);
- f2 = tflite->GetOutputValue(1);
-#endif
-
- float result = fmod(atan2(f1, f2) / (M_PI * 2) + 2, 1);
-// printf("Result sin, cos, ziffer: %f, %f, %f\n", f1, f2, result);
- ROI[i]->result = result * 10;
-
- printf("Result Analog%i: %f\n", i, ROI[i]->result);
-
- if (isLogImage)
- {
- LogImage(logPath, ROI[i]->name, &ROI[i]->result, NULL, time, ROI[i]->image_org);
- }
- }
-#ifndef OHNETFLITE
- delete tflite;
-#endif
-
- return true;
-}
-
-
-std::vector
YlANR5}gb==MtS+3hvGdpe!Ec=r_>ttZZ*I2QxV|m|4f*z<^2?%xZuJKr7J<
z`zWB?7|aR=1+x_RX|@LF1Hyt?2j+