mirror of
https://github.com/jomjol/AI-on-the-edge-device.git
synced 2025-12-09 21:17:06 +03:00
Update Rolling 20210118
This commit is contained in:
@@ -41,7 +41,12 @@ If you would like to support the developer with a cup of coffee you can do that
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
##### Rolling - (2021-01-17)
|
##### Rolling - (2021-01-18)
|
||||||
|
|
||||||
|
* New Feature `ExtendedResolution` uses the after comma digit of the last analog counter to increase precision by one digit.
|
||||||
|
This can only be activated in expert mode.
|
||||||
|
|
||||||
|
2021-01-17
|
||||||
|
|
||||||
* Disabling of digital counters implemented
|
* Disabling of digital counters implemented
|
||||||
* Attention: do not disable digital and analog!
|
* Attention: do not disable digital and analog!
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ void ClassFlowAnalog::SetInitialParameter(void)
|
|||||||
previousElement = NULL;
|
previousElement = NULL;
|
||||||
SaveAllFiles = false;
|
SaveAllFiles = false;
|
||||||
disabled = false;
|
disabled = false;
|
||||||
|
extendedResolution = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
ClassFlowAnalog::ClassFlowAnalog(std::vector<ClassFlow*>* lfc) : ClassFlowImage(lfc, TAG)
|
ClassFlowAnalog::ClassFlowAnalog(std::vector<ClassFlow*>* lfc) : ClassFlowImage(lfc, TAG)
|
||||||
@@ -44,15 +44,40 @@ ClassFlowAnalog::ClassFlowAnalog(std::vector<ClassFlow*>* lfc) : ClassFlowImage(
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
int ClassFlowAnalog::AnzahlROIs()
|
||||||
|
{
|
||||||
|
int zw = ROI.size();
|
||||||
|
if (extendedResolution)
|
||||||
|
zw++;
|
||||||
|
|
||||||
|
return zw;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
string ClassFlowAnalog::getReadout()
|
string ClassFlowAnalog::getReadout()
|
||||||
{
|
{
|
||||||
int prev = -1;
|
|
||||||
string result = "";
|
string result = "";
|
||||||
for (int i = ROI.size() - 1; i >= 0; --i)
|
if (ROI.size() == 0)
|
||||||
|
return result;
|
||||||
|
|
||||||
|
|
||||||
|
float zahl = ROI[ROI.size() - 1]->result;
|
||||||
|
int ergebnis_nachkomma = ((int) floor(zahl * 10)) % 10;
|
||||||
|
|
||||||
|
int prev = -1;
|
||||||
|
|
||||||
|
prev = ZeigerEval(ROI[ROI.size() - 1]->result, prev);
|
||||||
|
result = std::to_string(prev);
|
||||||
|
|
||||||
|
if (extendedResolution)
|
||||||
|
result = result + std::to_string(ergebnis_nachkomma);
|
||||||
|
|
||||||
|
for (int i = ROI.size() - 2; i >= 0; --i)
|
||||||
{
|
{
|
||||||
prev = ZeigerEval(ROI[i]->result, prev);
|
prev = ZeigerEval(ROI[i]->result, prev);
|
||||||
result = std::to_string(prev) + result;
|
result = std::to_string(prev) + result;
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,6 +168,12 @@ bool ClassFlowAnalog::ReadParameter(FILE* pfile, string& aktparamgraph)
|
|||||||
if (toUpper(zerlegt[1]) == "TRUE")
|
if (toUpper(zerlegt[1]) == "TRUE")
|
||||||
SaveAllFiles = true;
|
SaveAllFiles = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((toUpper(zerlegt[0]) == "EXTENDEDRESOLUTION") && (zerlegt.size() > 1))
|
||||||
|
{
|
||||||
|
if (toUpper(zerlegt[1]) == "TRUE")
|
||||||
|
extendedResolution = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < ROI.size(); ++i)
|
for (int i = 0; i < ROI.size(); ++i)
|
||||||
|
|||||||
@@ -21,11 +21,14 @@ protected:
|
|||||||
int ZeigerEval(float zahl, int ziffer_vorgaenger);
|
int ZeigerEval(float zahl, int ziffer_vorgaenger);
|
||||||
bool SaveAllFiles;
|
bool SaveAllFiles;
|
||||||
|
|
||||||
|
|
||||||
ClassFlowAlignment* flowpostalignment;
|
ClassFlowAlignment* flowpostalignment;
|
||||||
|
|
||||||
void SetInitialParameter(void);
|
void SetInitialParameter(void);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
bool extendedResolution;
|
||||||
|
|
||||||
ClassFlowAnalog(std::vector<ClassFlow*>* lfc);
|
ClassFlowAnalog(std::vector<ClassFlow*>* lfc);
|
||||||
|
|
||||||
bool ReadParameter(FILE* pfile, string& aktparamgraph);
|
bool ReadParameter(FILE* pfile, string& aktparamgraph);
|
||||||
@@ -38,7 +41,7 @@ public:
|
|||||||
bool doNeuralNetwork(string time);
|
bool doNeuralNetwork(string time);
|
||||||
bool doAlignAndCut(string time);
|
bool doAlignAndCut(string time);
|
||||||
std::vector<HTMLInfo*> GetHTMLInfo();
|
std::vector<HTMLInfo*> GetHTMLInfo();
|
||||||
int AnzahlROIs(){return ROI.size();};
|
int AnzahlROIs();
|
||||||
|
|
||||||
string name(){return "ClassFlowAnalog";};
|
string name(){return "ClassFlowAnalog";};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
const char* GIT_REV="9bb715f";
|
const char* GIT_REV="c65de27";
|
||||||
const char* GIT_TAG="";
|
const char* GIT_TAG="";
|
||||||
const char* GIT_BRANCH="rolling";
|
const char* GIT_BRANCH="rolling";
|
||||||
const char* BUILD_TIME="2021-01-17 12:21";
|
const char* BUILD_TIME="2021-01-18 20:57";
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
const char* GIT_REV="9bb715f";
|
const char* GIT_REV="c65de27";
|
||||||
const char* GIT_TAG="";
|
const char* GIT_TAG="";
|
||||||
const char* GIT_BRANCH="rolling";
|
const char* GIT_BRANCH="rolling";
|
||||||
const char* BUILD_TIME="2021-01-17 12:21";
|
const char* BUILD_TIME="2021-01-18 20:57";
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -32,6 +32,7 @@ analog1 444 225 92 92
|
|||||||
analog2 391 329 92 92
|
analog2 391 329 92 92
|
||||||
analog3 294 369 92 92
|
analog3 294 369 92 92
|
||||||
analog4 168 326 92 92
|
analog4 168 326 92 92
|
||||||
|
ExtendedResolution = false
|
||||||
|
|
||||||
[PostProcessing]
|
[PostProcessing]
|
||||||
DecimalShift = 0
|
DecimalShift = 0
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
[1204/185120.033:ERROR:directory_reader_win.cc(43)] FindFirstFile: Das System kann den angegebenen Pfad nicht finden. (0x3)
|
[1204/185120.033:ERROR:directory_reader_win.cc(43)] FindFirstFile: Das System kann den angegebenen Pfad nicht finden. (0x3)
|
||||||
[0102/122131.430:ERROR:directory_reader_win.cc(43)] FindFirstFile: Das System kann den angegebenen Pfad nicht finden. (0x3)
|
[0102/122131.430:ERROR:directory_reader_win.cc(43)] FindFirstFile: Das System kann den angegebenen Pfad nicht finden. (0x3)
|
||||||
|
[0118/210038.095:ERROR:directory_reader_win.cc(43)] FindFirstFile: Das System kann den angegebenen Pfad nicht finden. (0x3)
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ textarea {
|
|||||||
<input type="text" id="Digits_Model_value1">
|
<input type="text" id="Digits_Model_value1">
|
||||||
</td>
|
</td>
|
||||||
<td style="font-size: 80%;">
|
<td style="font-size: 80%;">
|
||||||
path to CNN model file for image recognition (in seconds)
|
path to CNN model file for image recognition
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@@ -248,7 +248,7 @@ textarea {
|
|||||||
<td width="20px" style="padding-left: 40px;"> </td>
|
<td width="20px" style="padding-left: 40px;"> </td>
|
||||||
<td width="200px"> <class id="Analog_Model_text" style="color:black;">Model</class> </td>
|
<td width="200px"> <class id="Analog_Model_text" style="color:black;">Model</class> </td>
|
||||||
<td> <input type="text" id="Analog_Model_value1"> </td>
|
<td> <input type="text" id="Analog_Model_value1"> </td>
|
||||||
<td style="font-size: 80%;"> path to CNN model file for image recognition (in seconds) </td>
|
<td style="font-size: 80%;"> path to CNN model file for image recognition</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td width="20px" style="padding-left: 40px;">
|
<td width="20px" style="padding-left: 40px;">
|
||||||
@@ -266,6 +266,28 @@ textarea {
|
|||||||
<td> <input type="number" id="Analog_LogfileRetentionInDays_value1" min="0" step="1"> </td>
|
<td> <input type="number" id="Analog_LogfileRetentionInDays_value1" min="0" step="1"> </td>
|
||||||
<td style="font-size: 80%;"> Time to keep the separated digit images (in days -"0" = forever) </td>
|
<td style="font-size: 80%;"> Time to keep the separated digit images (in days -"0" = forever) </td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr class="expert" id="Analog_ExtendedResolution_ex10">
|
||||||
|
<td width="20px" style="padding-left: 40px;">
|
||||||
|
<input type="checkbox" id="Analog_ExtendedResolution_enabled" value="1" onclick = 'document.getElementById("Analog_ExtendedResolution_value1").disabled = !document.getElementById("Analog_ExtendedResolution_value1").disabled' unchecked >
|
||||||
|
</td>
|
||||||
|
<td width="200px">
|
||||||
|
<class id="Analog_ExtendedResolution_text" style="color:black;">ExtendedResolution</class>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<select id="Analog_ExtendedResolution_value1">
|
||||||
|
<option value="0" selected>true</option>
|
||||||
|
<option value="1" >false</option>
|
||||||
|
</select>
|
||||||
|
</td>
|
||||||
|
<td style="font-size: 80%;">
|
||||||
|
Enable to use the after point resolution for the last analog counter
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
ExtendedResolution
|
||||||
|
|
||||||
<tr class="expert" id="ex10">
|
<tr class="expert" id="ex10">
|
||||||
<td width="20px" style="padding-left: 40px;"> </td>
|
<td width="20px" style="padding-left: 40px;"> </td>
|
||||||
<td> <class id="Analog_ModelInputSize_text" style="color:black;">ModelInputSize</class> </td>
|
<td> <class id="Analog_ModelInputSize_text" style="color:black;">ModelInputSize</class> </td>
|
||||||
@@ -759,6 +781,7 @@ function UpdateInput() {
|
|||||||
WriteParameter(param, category, "Analog", "Model", false);
|
WriteParameter(param, category, "Analog", "Model", false);
|
||||||
WriteParameter(param, category, "Analog", "LogImageLocation", true);
|
WriteParameter(param, category, "Analog", "LogImageLocation", true);
|
||||||
WriteParameter(param, category, "Analog", "LogfileRetentionInDays", true);
|
WriteParameter(param, category, "Analog", "LogfileRetentionInDays", true);
|
||||||
|
WriteParameter(param, category, "Analog", "ExtendedResolution", true, true);
|
||||||
WriteParameter(param, category, "Analog", "ModelInputSize", false, false, 2);
|
WriteParameter(param, category, "Analog", "ModelInputSize", false, false, 2);
|
||||||
|
|
||||||
WriteParameter(param, category, "PostProcessing", "DecimalShift", true);
|
WriteParameter(param, category, "PostProcessing", "DecimalShift", true);
|
||||||
@@ -811,6 +834,7 @@ function ReadParameterAll()
|
|||||||
ReadParameter(param, "Analog", "Model", false);
|
ReadParameter(param, "Analog", "Model", false);
|
||||||
ReadParameter(param, "Analog", "LogImageLocation", true);
|
ReadParameter(param, "Analog", "LogImageLocation", true);
|
||||||
ReadParameter(param, "Analog", "LogfileRetentionInDays", true);
|
ReadParameter(param, "Analog", "LogfileRetentionInDays", true);
|
||||||
|
ReadParameter(param, "Analog", "ExtendedResolution", true, true);
|
||||||
ReadParameter(param, "Analog", "ModelInputSize", false, false, 2);
|
ReadParameter(param, "Analog", "ModelInputSize", false, false, 2);
|
||||||
|
|
||||||
ReadParameter(param, "PostProcessing", "DecimalShift", true);
|
ReadParameter(param, "PostProcessing", "DecimalShift", true);
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ function ParseConfig() {
|
|||||||
ParamAddValue(param, catname, "LogImageLocation");
|
ParamAddValue(param, catname, "LogImageLocation");
|
||||||
ParamAddValue(param, catname, "LogfileRetentionInDays");
|
ParamAddValue(param, catname, "LogfileRetentionInDays");
|
||||||
ParamAddValue(param, catname, "ModelInputSize", 2);
|
ParamAddValue(param, catname, "ModelInputSize", 2);
|
||||||
|
ParamAddValue(param, catname, "ExtendedResolution");
|
||||||
|
|
||||||
var catname = "PostProcessing";
|
var catname = "PostProcessing";
|
||||||
category[catname] = new Object();
|
category[catname] = new Object();
|
||||||
|
|||||||
Reference in New Issue
Block a user