图像处理更新
This commit is contained in:
@@ -419,7 +419,7 @@ export const SCREEN_SHOW_CAM_GRAPH_SHOOT = {
|
|||||||
this.appendValueInput("SUB")
|
this.appendValueInput("SUB")
|
||||||
.appendField(Blockly.Msg.OLEDDISPLAY + Blockly.Msg.MIXLY_MICROBIT_IMAGE)
|
.appendField(Blockly.Msg.OLEDDISPLAY + Blockly.Msg.MIXLY_MICROBIT_IMAGE)
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setPreviousStatement(true);
|
this.setPreviousStatement(true);
|
||||||
this.setNextStatement(true);
|
this.setNextStatement(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
@@ -441,7 +441,7 @@ export const SCREEN_DISPLAY_IMAGE = {
|
|||||||
['270','270']
|
['270','270']
|
||||||
]),'angle');
|
]),'angle');
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setPreviousStatement(true);
|
this.setPreviousStatement(true);
|
||||||
this.setNextStatement(true);
|
this.setNextStatement(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
@@ -844,6 +844,8 @@ export const GET_QR_CODE_RECOGNITION_DATA = {
|
|||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_GET_QR_CODE_RECOGNITION_RESULT);
|
.appendField(Blockly.Msg.MIXLY_GET_QR_CODE_RECOGNITION_RESULT);
|
||||||
|
this.appendValueInput('boolean')
|
||||||
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
}
|
}
|
||||||
@@ -852,58 +854,46 @@ export const GET_QR_CODE_RECOGNITION_DATA = {
|
|||||||
export const GET_COLOR_DETECTION_NUM = {
|
export const GET_COLOR_DETECTION_NUM = {
|
||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendDummyInput()
|
this.appendDummyInput("")
|
||||||
.appendField(Blockly.Msg.MIXLY_RECOGNITION + Blockly.Msg.MIXLY_HOW_MUCH)
|
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_HOW_MUCH + Blockly.Msg.MIXLY_REGISTER + Blockly.Msg.HTML_COLOUR )
|
||||||
.appendField(new Blockly.FieldDropdown([
|
this.appendValueInput('boolean')
|
||||||
[Blockly.Msg.COLOUR_RGB_RED,"0"],
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
[Blockly.Msg.COLOUR_RGB_ORANGE,"1"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_YELLOW,"2"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_GREEN,"3"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_CYAN,"4"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_BLUE,"5"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_PURPLE,"6"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_WHITE,"7"],
|
|
||||||
[Blockly.Msg.COLOUR_RGB_GREY,"8"],
|
|
||||||
[Blockly.Msg.MIXLY_CUSTOM_STUDY,"9"]
|
|
||||||
]),'color');
|
|
||||||
this.appendDummyInput()
|
|
||||||
.appendField(Blockly.Msg.MIXLY_Pixel_block);
|
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const GET_COLOR_DETECTION_LOCATION = {
|
// export const GET_COLOR_DETECTION_LOCATION = {
|
||||||
init: function () {
|
// init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
// this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
// .setCheck("var");
|
||||||
this.appendValueInput('NO')
|
// this.appendValueInput('NO')
|
||||||
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
// .appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
||||||
this.appendDummyInput()
|
// this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2)
|
// .appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2)
|
||||||
.appendField(new Blockly.FieldDropdown([
|
// .appendField(new Blockly.FieldDropdown([
|
||||||
[Blockly.Msg.COLOUR_RGB_RED,"0"],
|
// [Blockly.Msg.COLOUR_RGB_RED,"0"],
|
||||||
[Blockly.Msg.COLOUR_RGB_ORANGE,"1"],
|
// [Blockly.Msg.COLOUR_RGB_ORANGE,"1"],
|
||||||
[Blockly.Msg.COLOUR_RGB_YELLOW,"2"],
|
// [Blockly.Msg.COLOUR_RGB_YELLOW,"2"],
|
||||||
[Blockly.Msg.COLOUR_RGB_GREEN,"3"],
|
// [Blockly.Msg.COLOUR_RGB_GREEN,"3"],
|
||||||
[Blockly.Msg.COLOUR_RGB_CYAN,"4"],
|
// [Blockly.Msg.COLOUR_RGB_CYAN,"4"],
|
||||||
[Blockly.Msg.COLOUR_RGB_BLUE,"5"],
|
// [Blockly.Msg.COLOUR_RGB_BLUE,"5"],
|
||||||
[Blockly.Msg.COLOUR_RGB_PURPLE,"6"],
|
// [Blockly.Msg.COLOUR_RGB_PURPLE,"6"],
|
||||||
[Blockly.Msg.COLOUR_RGB_WHITE,"7"],
|
// [Blockly.Msg.COLOUR_RGB_WHITE,"7"],
|
||||||
[Blockly.Msg.COLOUR_RGB_GREY,"8"],
|
// [Blockly.Msg.COLOUR_RGB_GREY,"8"],
|
||||||
[Blockly.Msg.MIXLY_CUSTOM_STUDY,"9"]
|
// [Blockly.Msg.MIXLY_CUSTOM_STUDY,"9"]
|
||||||
]),'color');
|
// ]),'color');
|
||||||
this.appendDummyInput()
|
// this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_Pixel_block + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
// .appendField(Blockly.Msg.MIXLY_Pixel_block + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
this.setOutput(true);
|
// this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
// this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// // this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
}
|
// }
|
||||||
};
|
// };
|
||||||
|
|
||||||
export const GET_CAT_FACE_DETECTION_NUM = {
|
export const GET_CAT_FACE_DETECTION_NUM = {
|
||||||
init: function () {
|
init: function () {
|
||||||
@@ -911,22 +901,39 @@ export const GET_CAT_FACE_DETECTION_NUM = {
|
|||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_RECOGNITION + Blockly.Msg.MIXLY_HOW_MUCH +Blockly.Msg.MIXLY_CAT_FACE)
|
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_HOW_MUCH +Blockly.Msg.MIXLY_CAT)
|
||||||
|
this.appendValueInput('boolean')
|
||||||
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const GET_CAT_FACE_DETECTION_LOCATION = {
|
// export const GET_CAT_FACE_DETECTION_LOCATION = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendValueInput('NO')
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_CAT_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// // this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
export const GET_HUMAN_DETECTION_NUM = {
|
||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendValueInput('NO')
|
|
||||||
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_CAT_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_HOW_MUCH +Blockly.Msg.MIXLY_HUMAN)
|
||||||
|
this.appendValueInput('boolean')
|
||||||
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
@@ -936,129 +943,174 @@ export const GET_CAT_FACE_DETECTION_LOCATION = {
|
|||||||
export const GET_FACE_DETECTION_NUM = {
|
export const GET_FACE_DETECTION_NUM = {
|
||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_RECOGNITION + Blockly.Msg.MIXLY_HOW_MUCH +Blockly.Msg.MIXLY_FACE)
|
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_HOW_MUCH +Blockly.Msg.MIXLY_FACE)
|
||||||
|
this.appendValueInput('boolean')
|
||||||
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const GET_FACE_DETECTION_LOCATION = {
|
export const GET_FACE_DETECTION_NAME = {
|
||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
this.appendValueInput('NO')
|
|
||||||
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_AipFace +Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_NAME)
|
||||||
|
this.appendValueInput('boolean')
|
||||||
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
// this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const GET_FACE_DETECTION_KEYPOINT_LOCATION = {
|
// export const GET_FACE_DETECTION_LOCATION = {
|
||||||
init: function () {
|
// init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
// this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
// .setCheck("var");
|
||||||
this.appendValueInput('NO')
|
// this.appendValueInput('NO')
|
||||||
.appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
// .appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
||||||
this.appendDummyInput()
|
// this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_FACE);
|
// .appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
this.appendDummyInput()
|
// this.setOutput(true);
|
||||||
.appendField(Blockly.Msg.MIXLY_KEYPOINT)
|
// this.setInputsInline(true);
|
||||||
.appendField(new Blockly.FieldDropdown([
|
// // this.setTooltip(Blockly.Msg.MIXLY_GET_COLOR_DETECTION_RESULT_TOOLTIP);
|
||||||
[Blockly.Msg.MIXLY_LEFT_EYE,"0"],
|
// }
|
||||||
[Blockly.Msg.MIXLY_RIGHT_EYE,"1"],
|
// };
|
||||||
[Blockly.Msg.MIXLY_NOSE,"2"],
|
|
||||||
[Blockly.Msg.MIXLY_LEFT_MOUSE_CORNER,"3"],
|
|
||||||
[Blockly.Msg.MIXLY_RIGHT_MOUSE_CORNER,"4"]
|
|
||||||
]),'kp')
|
|
||||||
.appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
|
||||||
this.setOutput(true);
|
|
||||||
this.setInputsInline(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID = {
|
// export const GET_FACE_DETECTION_KEYPOINT_LOCATION = {
|
||||||
init: function () {
|
// init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
this.appendValueInput('SUB')
|
// this.appendValueInput('SUB')
|
||||||
.setCheck("var");
|
// .setCheck("var");
|
||||||
this.appendDummyInput()
|
// this.appendValueInput('NO')
|
||||||
.appendField(Blockly.Msg.MIXLY_RECOGNITION_RECGNITION + Blockly.Msg.MIXLY_FACE + 'ID');
|
// .appendField(Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER1);
|
||||||
this.setOutput(true);
|
// this.appendDummyInput()
|
||||||
this.setInputsInline(true);
|
// .appendField(Blockly.Msg.MIXLY_4DIGITDISPLAY_NOMBER2 + Blockly.Msg.MIXLY_FACE);
|
||||||
}
|
// this.appendDummyInput()
|
||||||
};
|
// .appendField(Blockly.Msg.MIXLY_KEYPOINT)
|
||||||
|
// .appendField(new Blockly.FieldDropdown([
|
||||||
|
// [Blockly.Msg.MIXLY_LEFT_EYE,"0"],
|
||||||
|
// [Blockly.Msg.MIXLY_RIGHT_EYE,"1"],
|
||||||
|
// [Blockly.Msg.MIXLY_NOSE,"2"],
|
||||||
|
// [Blockly.Msg.MIXLY_LEFT_MOUSE_CORNER,"3"],
|
||||||
|
// [Blockly.Msg.MIXLY_RIGHT_MOUSE_CORNER,"4"]
|
||||||
|
// ]),'kp')
|
||||||
|
// .appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const GET_FACE_RECOGNITION_ID = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_RECOGNITION_RECGNITION + Blockly.Msg.MIXLY_FACE + 'ID');
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const GET_FACE_RECOGNITION_ID_LOCATION = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendValueInput('NO')
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_GET +'ID'+ Blockly.Msg.MIXLY_AS);
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const GET_FACE_RECOGNITION_ID_KEYPOINT_LOCATION = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendValueInput('NO')
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_GET + 'ID'+ Blockly.Msg.MIXLY_AS);
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_FACE);
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_KEYPOINT)
|
||||||
|
// .appendField(new Blockly.FieldDropdown([
|
||||||
|
// [Blockly.Msg.MIXLY_LEFT_EYE,"0"],
|
||||||
|
// [Blockly.Msg.MIXLY_RIGHT_EYE,"1"],
|
||||||
|
// [Blockly.Msg.MIXLY_NOSE,"2"],
|
||||||
|
// [Blockly.Msg.MIXLY_LEFT_MOUSE_CORNER,"3"],
|
||||||
|
// [Blockly.Msg.MIXLY_RIGHT_MOUSE_CORNER,"4"]
|
||||||
|
// ]),'kp')
|
||||||
|
// .appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const PEOPLE_FACE_ENROLL = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendDummyInput()
|
||||||
|
// .appendField(Blockly.Msg.FACE_ENROLL);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const DELETE_PEOPLE_FACE_ID= {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendValueInput("ID")
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_DELETE_PEOPLE_FACE_ID);
|
||||||
|
// this.setPreviousStatement(true);
|
||||||
|
// this.setNextStatement(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
|
// export const MODELP_SIMPLELY_RUN_RECOGNIZION = {
|
||||||
|
// init: function () {
|
||||||
|
// this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
// this.appendValueInput('SUB')
|
||||||
|
// .appendField(Blockly.Msg.MIXLY_RUN + Blockly.Msg.MIXLY_TENSORFLOW_MODEL + Blockly.Msg.MIXLY_RECOGNITION_RECGNITION)
|
||||||
|
// .setCheck("var");
|
||||||
|
// this.appendValueInput('CAM')
|
||||||
|
// .setCheck("var");
|
||||||
|
|
||||||
|
// this.appendDummyInput("")
|
||||||
|
// .appendField(new Blockly.FieldDropdown([
|
||||||
|
// [Blockly.Msg.MIXPY_AI_RESULT,"data"],
|
||||||
|
// [Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_HOW_MUCH + Blockly.Msg.MIXPY_OBJECT,"len"],
|
||||||
|
// [Blockly.Msg.MIXLY_GET + Blockly.Msg.MIXLY_AipFace + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_NAME,"person"]
|
||||||
|
// ]),"key")
|
||||||
|
// this.appendValueInput('VAR')
|
||||||
|
// .appendField(Blockly.Msg.HTML_COLOUR)
|
||||||
|
// this.appendValueInput('boolean')
|
||||||
|
// .appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
|
// this.setOutput(true);
|
||||||
|
// this.setInputsInline(true);
|
||||||
|
// }
|
||||||
|
// };
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID_LOCATION = {
|
|
||||||
init: function () {
|
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
|
||||||
this.appendValueInput('SUB')
|
|
||||||
.setCheck("var");
|
|
||||||
this.appendValueInput('NO')
|
|
||||||
.appendField(Blockly.Msg.MIXLY_GET +'ID'+ Blockly.Msg.MIXLY_AS);
|
|
||||||
this.appendDummyInput()
|
|
||||||
.appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_FACE + Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
|
||||||
this.setOutput(true);
|
|
||||||
this.setInputsInline(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID_KEYPOINT_LOCATION = {
|
|
||||||
init: function () {
|
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
|
||||||
this.appendValueInput('SUB')
|
|
||||||
.setCheck("var");
|
|
||||||
this.appendValueInput('NO')
|
|
||||||
.appendField(Blockly.Msg.MIXLY_GET + 'ID'+ Blockly.Msg.MIXLY_AS);
|
|
||||||
this.appendDummyInput()
|
|
||||||
.appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_FACE);
|
|
||||||
this.appendDummyInput()
|
|
||||||
.appendField(Blockly.Msg.MIXLY_KEYPOINT)
|
|
||||||
.appendField(new Blockly.FieldDropdown([
|
|
||||||
[Blockly.Msg.MIXLY_LEFT_EYE,"0"],
|
|
||||||
[Blockly.Msg.MIXLY_RIGHT_EYE,"1"],
|
|
||||||
[Blockly.Msg.MIXLY_NOSE,"2"],
|
|
||||||
[Blockly.Msg.MIXLY_LEFT_MOUSE_CORNER,"3"],
|
|
||||||
[Blockly.Msg.MIXLY_RIGHT_MOUSE_CORNER,"4"]
|
|
||||||
]),'kp')
|
|
||||||
.appendField(Blockly.Msg.blockpy_set_of + Blockly.Msg.MIXLY_POSITION_XY);
|
|
||||||
this.setOutput(true);
|
|
||||||
this.setInputsInline(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
export const PEOPLE_FACE_ENROLL = {
|
|
||||||
init: function () {
|
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
|
||||||
this.appendValueInput('SUB')
|
|
||||||
.setCheck("var");
|
|
||||||
this.appendDummyInput()
|
|
||||||
.appendField(Blockly.Msg.FACE_ENROLL);
|
|
||||||
this.setOutput(true);
|
|
||||||
this.setInputsInline(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
export const DELETE_PEOPLE_FACE_ID= {
|
|
||||||
init: function () {
|
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
|
||||||
this.appendValueInput('SUB')
|
|
||||||
.setCheck("var");
|
|
||||||
this.appendValueInput("ID")
|
|
||||||
.appendField(Blockly.Msg.MIXLY_DELETE_PEOPLE_FACE_ID);
|
|
||||||
this.setPreviousStatement(true);
|
|
||||||
this.setNextStatement(true);
|
|
||||||
this.setInputsInline(true);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
export const AI_STOP_ACQUISITION = {
|
export const AI_STOP_ACQUISITION = {
|
||||||
@@ -1083,4 +1135,89 @@ export const MIXIO_REPORT_IMAGE_DATA = {
|
|||||||
this.setOutput(true);
|
this.setOutput(true);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
//simplified part
|
||||||
|
export const CREATE_CAMERA_SIMPLE = {
|
||||||
|
init: function () {
|
||||||
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
this.appendDummyInput("")
|
||||||
|
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.MIXLY_SMARTCAMERA)
|
||||||
|
.appendField(Blockly.Msg.MIXLY_SHOOTING_SIZE)
|
||||||
|
.appendField(new Blockly.FieldDropdown([
|
||||||
|
['240px*240px', "R240X240"],
|
||||||
|
['320px*320px', "R320X320"],
|
||||||
|
['128px*128px', "R128X128"],
|
||||||
|
['96px*96px', "R96X96"],
|
||||||
|
['VGA : 640px*480px', "VGA"],
|
||||||
|
['HVGA : 480px*320px', "HVGA"],
|
||||||
|
['QVGA : 320px*240px', "QVGA"],
|
||||||
|
['QQVGA : 160px*120px', "QQVGA"]
|
||||||
|
]), "cmd");
|
||||||
|
this.setPreviousStatement(true);
|
||||||
|
this.setNextStatement(true);
|
||||||
|
this.setInputsInline(true);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const AI_CAMERA_INIT_SIMPLE = {
|
||||||
|
init: function () {
|
||||||
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
this.appendValueInput('SUB')
|
||||||
|
.appendField(Blockly.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE)
|
||||||
|
.setCheck("var");
|
||||||
|
this.appendDummyInput("")
|
||||||
|
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.LISTS_SET_INDEX_INPUT_TO)
|
||||||
|
.appendField(new Blockly.FieldDropdown([
|
||||||
|
[Blockly.Msg.MIXLY_QR_CODE + Blockly.Msg.MIXLY_RECOGNITION, "QRReader"],
|
||||||
|
[Blockly.Msg.MIXLY_COLOR_RECOGNTITION, "ColorDetector"],
|
||||||
|
[Blockly.Msg.MIXLY_CAT + Blockly.Msg.MIXLY_RECOGNITION, "CatDetector"],
|
||||||
|
[Blockly.Msg.MIXLY_HUMAN + Blockly.Msg.MIXLY_RECOGNITION, "HumanDetector"],
|
||||||
|
[Blockly.Msg.MIXLY_FACE_CLASSIFIER, "FaceDetector"],
|
||||||
|
[Blockly.Msg.MIXLY_AipFace,"FaceRecognizer"]
|
||||||
|
]), "kind");
|
||||||
|
this.setInputsInline(true);
|
||||||
|
this.setPreviousStatement(true, null);
|
||||||
|
this.setNextStatement(true, null);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const Register_color_recognition_fixed_SIMPLE = {
|
||||||
|
init: function () {
|
||||||
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
this.appendValueInput('SUB')
|
||||||
|
.appendField(Blockly.Msg.MIXLY_TENSORFLOW_MODEL)
|
||||||
|
.setCheck("var");
|
||||||
|
this.appendDummyInput("")
|
||||||
|
.appendField(Blockly.Msg.MIXLY_REGISTER + Blockly.Msg.MIXLY_RECOGNITION_RECGNITION + Blockly.Msg.HTML_COLOUR)
|
||||||
|
.appendField(new Blockly.FieldDropdown([
|
||||||
|
[Blockly.Msg.COLOUR_RGB_RED,"red"],
|
||||||
|
[Blockly.Msg.COLOUR_RGB_GREEN,"green"],
|
||||||
|
[Blockly.Msg.COLOUR_RGB_BLUE,"blue"],
|
||||||
|
[Blockly.Msg.COLOUR_YELLOW,"yellow"],
|
||||||
|
[Blockly.Msg.COLOUR_CYAN,"cyan"],
|
||||||
|
[Blockly.Msg.COLOUR_RGB_PURPLE,"purple"],
|
||||||
|
[Blockly.Msg.COLOUR_BLACK,"black"],
|
||||||
|
[Blockly.Msg.COLOUR_WHITE,"white"]
|
||||||
|
]),"color");
|
||||||
|
this.setInputsInline(true);
|
||||||
|
this.setPreviousStatement(true, null);
|
||||||
|
this.setNextStatement(true, null);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const REGISTER_NEW_FACE_SIMPLE = {
|
||||||
|
init: function () {
|
||||||
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
this.appendValueInput('SUB')
|
||||||
|
.appendField(Blockly.Msg.MIXLY_TENSORFLOW_MODEL)
|
||||||
|
.setCheck("var");
|
||||||
|
this.appendDummyInput("")
|
||||||
|
.appendField(Blockly.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE + Blockly.Msg.MIXLY_SMARTCAMERA + Blockly.Msg.MIXLY_GET
|
||||||
|
+ Blockly.Msg.register_a_new_face_in_the_database);
|
||||||
|
this.appendValueInput("NAME")
|
||||||
|
.appendField(Blockly.Msg.MICROPYTHON_HUSKYLENS_NAME);
|
||||||
|
this.setOutput(true)
|
||||||
|
this.setInputsInline(true);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
@@ -12,7 +12,7 @@ export const display_show_image = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -40,7 +40,7 @@ export const display_show_image_or_string_delay = {
|
|||||||
]), 'center')
|
]), 'center')
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -304,7 +304,7 @@ export const display_shift = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
var thisBlock = this;
|
var thisBlock = this;
|
||||||
this.setTooltip(function () {
|
this.setTooltip(function () {
|
||||||
@@ -397,7 +397,7 @@ export const display_clear = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -1117,7 +1117,7 @@ export const onboard_tft_show_image_xy = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize );
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -1172,7 +1172,7 @@ export const onboard_tft_show_image_or_string_delay = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -1388,7 +1388,7 @@ export const onboard_tft_bright_point = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -1405,7 +1405,7 @@ export const onboard_tft_fill = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
@@ -1599,7 +1599,7 @@ export const onboard_tft_show_texts = {
|
|||||||
var version = Boards.getSelectedBoardKey()
|
var version = Boards.getSelectedBoardKey()
|
||||||
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
if (JSFuncs.getPlatform() === 'Python ESP32-S3') {
|
||||||
this.appendValueInput('boolean')
|
this.appendValueInput('boolean')
|
||||||
.appendField( Blockly.Msg.MIXLY_synchronize + ':');
|
.appendField( Blockly.Msg.MIXLY_synchronize);
|
||||||
}
|
}
|
||||||
this.setPreviousStatement(true, null);
|
this.setPreviousStatement(true, null);
|
||||||
this.setNextStatement(true, null);
|
this.setNextStatement(true, null);
|
||||||
|
|||||||
@@ -367,102 +367,125 @@ export const PRINT_FACE_DATABASE = function (_, generator) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const GET_QR_CODE_RECOGNITION_DATA = function (_, generator) {
|
export const GET_QR_CODE_RECOGNITION_DATA = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = sub + '.code_recognition()';
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
|
var code = 'esp_dl.simple_run('+ sub + ', camere, "data", color=0xF800, sync='+bool+')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_COLOR_DETECTION_NUM = function (_, generator) {
|
export const GET_COLOR_DETECTION_NUM = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var color = this.getFieldValue('color');
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
var code = sub + '.color_detection('+ color +",'len')";
|
var code = 'esp_dl.simple_run('+ sub + ', camere, "len", color=0xF800, sync='+bool+')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_COLOR_DETECTION_LOCATION = function (_, generator) {
|
// export const GET_COLOR_DETECTION_LOCATION = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
var color = this.getFieldValue('color');
|
// var color = this.getFieldValue('color');
|
||||||
var code = sub + '.color_detection('+ color +",'pos',"+ num +')';
|
// var code = sub + '.color_detection('+ color +",'pos',"+ num +')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
// }
|
||||||
|
|
||||||
export const GET_CAT_FACE_DETECTION_NUM = function (_, generator) {
|
export const GET_CAT_FACE_DETECTION_NUM = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = sub + ".cat_detection('len')";
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
|
var code = 'esp_dl.simple_run('+ sub + ', camere, "len", color=0xF800, sync='+bool+')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_CAT_FACE_DETECTION_LOCATION = function (_, generator) {
|
// export const GET_CAT_FACE_DETECTION_LOCATION = function (_, generator) {
|
||||||
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
|
// var code = sub + ".cat_detection('pos',"+ num +')';
|
||||||
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
|
// }
|
||||||
|
|
||||||
|
export const GET_HUMAN_DETECTION_NUM = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
var code = sub + ".cat_detection('pos',"+ num +')';
|
var code = 'esp_dl.simple_run('+ sub + ', camere, "len", color=0xF800, sync='+bool+')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_FACE_DETECTION_NUM = function (_, generator) {
|
export const GET_FACE_DETECTION_NUM = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = sub + ".face_detection('len')";
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
|
var code = 'esp_dl.simple_run('+ sub + ', camere, "len", color=0xF800, sync='+bool+')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_FACE_DETECTION_LOCATION = function (_, generator) {
|
export const GET_FACE_DETECTION_NAME = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl'
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
|
||||||
var code = sub + ".face_detection('pos',"+ num +')';
|
var code = 'esp_dl.simple_run('+ sub + ', "person", color=0xF800, sync='+bool+')["name"]\n';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
|
|
||||||
export const GET_FACE_DETECTION_KEYPOINT_LOCATION = function (_, generator) {
|
// export const GET_FACE_DETECTION_LOCATION = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
var kp = this.getFieldValue('kp');
|
// var code = sub + ".face_detection('pos',"+ num +')';
|
||||||
var code = sub + ".face_detection('keypoint',"+ num +','+ kp +')';
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// }
|
||||||
}
|
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID = function (_, generator) {
|
// export const GET_FACE_DETECTION_KEYPOINT_LOCATION = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = sub + ".face_recognition('len')";
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// var kp = this.getFieldValue('kp');
|
||||||
}
|
// var code = sub + ".face_detection('keypoint',"+ num +','+ kp +')';
|
||||||
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
|
// }
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID_LOCATION = function (_, generator) {
|
// export const GET_FACE_RECOGNITION_ID = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
// var code = sub + ".face_recognition('len')";
|
||||||
var code = sub + ".face_recognition('pos',"+ num +')';
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// }
|
||||||
}
|
|
||||||
|
|
||||||
export const GET_FACE_RECOGNITION_ID_KEYPOINT_LOCATION = function (_, generator) {
|
// export const GET_FACE_RECOGNITION_ID_LOCATION = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
var kp = this.getFieldValue('kp');
|
// var code = sub + ".face_recognition('pos',"+ num +')';
|
||||||
var code = sub + ".face_recognition('keypoint',"+ num +','+ kp +')';
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// }
|
||||||
}
|
|
||||||
|
|
||||||
export const GET_NO_FACE_RECOGNITION_INFO = function (_, generator) {
|
// export const GET_FACE_RECOGNITION_ID_KEYPOINT_LOCATION = function (_, generator) {
|
||||||
generator.definitions_['import_esp_dl'] = 'import esp_dl';
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
// var kp = this.getFieldValue('kp');
|
||||||
var kind = this.getFieldValue('kind');
|
// var code = sub + ".face_recognition('keypoint',"+ num +','+ kp +')';
|
||||||
var code = "esp_dl.analyze("+sub+', "person",'+ num +')["'+kind+'"]';
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// }
|
||||||
}
|
|
||||||
|
|
||||||
export const PEOPLE_FACE_ENROLL = function (_, generator) {
|
// export const GET_NO_FACE_RECOGNITION_INFO = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// generator.definitions_['import_esp_dl'] = 'import esp_dl';
|
||||||
var code = sub + '.face_enroll()';
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
return [code, generator.ORDER_ATOMIC];
|
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
|
||||||
}
|
// var kind = this.getFieldValue('kind');
|
||||||
|
// var code = "esp_dl.analyze("+sub+', "person",'+ num +')["'+kind+'"]';
|
||||||
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
|
// }
|
||||||
|
|
||||||
export const DELETE_PEOPLE_FACE_ID = function (_, generator) {
|
// export const PEOPLE_FACE_ENROLL = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var id = generator.valueToCode(this, 'ID', generator.ORDER_ATOMIC);
|
// var code = sub + '.face_enroll()';
|
||||||
var code = sub + '.face_delete('+ id +')\n';
|
// return [code, generator.ORDER_ATOMIC];
|
||||||
return code;
|
// }
|
||||||
}
|
|
||||||
|
// export const DELETE_PEOPLE_FACE_ID = function (_, generator) {
|
||||||
|
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
// var id = generator.valueToCode(this, 'ID', generator.ORDER_ATOMIC);
|
||||||
|
// var code = sub + '.face_delete('+ id +')\n';
|
||||||
|
// return code;
|
||||||
|
// }
|
||||||
|
|
||||||
export const AI_STOP_ACQUISITION = function (_, generator) {
|
export const AI_STOP_ACQUISITION = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
@@ -475,4 +498,55 @@ export const MIXIO_REPORT_IMAGE_DATA = function (_, generator) {
|
|||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = 'mixiot.image_base64('+ sub +')';
|
var code = 'mixiot.image_base64('+ sub +')';
|
||||||
return [code, generator.ORDER_ATOMIC];
|
return [code, generator.ORDER_ATOMIC];
|
||||||
|
}
|
||||||
|
|
||||||
|
//simplified part
|
||||||
|
export const CREATE_CAMERA_SIMPLE = function (_, generator) {
|
||||||
|
var version = Boards.getSelectedBoardKey().split(':')[2];
|
||||||
|
generator.definitions_['import_Camera_FrameSize'] = 'from camera import Camera,FrameSize';
|
||||||
|
var cmd = this.getFieldValue('cmd');
|
||||||
|
var code = 'camera = Camera(FrameSize.'+cmd+', hmirror=False,vflip=False)\n';
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const AI_CAMERA_INIT_SIMPLE = function (_, generator) {
|
||||||
|
generator.definitions_['import_esp_dl'] = 'import esp_dl';
|
||||||
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
var cmd = this.getFieldValue('kind');
|
||||||
|
if(cmd == "FaceRecognizer"){
|
||||||
|
var code = sub +' = esp_dl.'+cmd + '(width=camera.get_pixel_width(), height=camera.get_pixel_height() , db_path="face.db")\n';
|
||||||
|
}else{
|
||||||
|
var code = sub +' = esp_dl.'+cmd + '(width=camera.get_pixel_width(), height=height=camera.get_pixel_height())\n';
|
||||||
|
}
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const Register_color_recognition_fixed_SIMPLE= function (_, generator) {
|
||||||
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
var color = this.getFieldValue('color');
|
||||||
|
if (color == "red"){
|
||||||
|
var code = sub + '.register_color((170, 100, 100), (10, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "green"){
|
||||||
|
var code = sub + '.register_color((35, 100, 100), (85, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "blue"){
|
||||||
|
var code = sub + '.register_color((100, 100, 100), (130, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "yellow"){
|
||||||
|
var code = sub + '.register_color((20, 100, 100), (35, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "cyan"){
|
||||||
|
var code = sub + '.register_color((85, 100, 100), (100, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "purple"){
|
||||||
|
var code = sub + '.register_color((130, 100, 100), (150, 255, 255),"'+ color +'")\n';
|
||||||
|
}else if(color == "black"){
|
||||||
|
var code = sub + '.register_color((0, 0, 0), (180, 255, 50),"'+ color +'")\n';
|
||||||
|
}else if(color == "white"){
|
||||||
|
var code = sub + '.register_color((0, 0, 200), (180, 50, 255),"'+ color +'")\n';
|
||||||
|
}
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const REGISTER_NEW_FACE_SIMPLE = function (_, generator) {
|
||||||
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
var name = generator.valueToCode(this, 'NAME', generator.ORDER_ATOMIC);
|
||||||
|
var code = sub + '.enroll(camera.capture(), name='+ name +', validate = 1)';
|
||||||
|
return [code, generator.ORDER_ATOMIC];
|
||||||
}
|
}
|
||||||
@@ -476,4 +476,14 @@ div.blocklyToolboxDiv>div.blocklyToolboxContents>div:nth-child(12)>div.blocklyTr
|
|||||||
#catAIvoicesensor.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
|
#catAIvoicesensor.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
|
||||||
background: url('../../../../common/media/mark/AIvoice2.png') no-repeat;
|
background: url('../../../../common/media/mark/AIvoice2.png') no-repeat;
|
||||||
background-size: 100% auto;
|
background-size: 100% auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#catAIgraphsensorpro.blocklyTreeRow>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
|
||||||
|
background: url('../../../../common/media/mark/image.png') no-repeat;
|
||||||
|
background-size: 100% auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#catAIgraphsensorpro.blocklyTreeRow.blocklyTreeSelected>div.blocklyTreeRowContentContainer>span.blocklyTreeIcon {
|
||||||
|
background: url('../../../../common/media/mark/image2.png') no-repeat;
|
||||||
|
background-size: 100% auto;
|
||||||
}
|
}
|
||||||
@@ -2415,7 +2415,7 @@
|
|||||||
</block>
|
</block>
|
||||||
</category>
|
</category>
|
||||||
<category id="catAIonboard" colour="#2FAD7A" m-show='micropython:esp32s3:mixgo_sant'>
|
<category id="catAIonboard" colour="#2FAD7A" m-show='micropython:esp32s3:mixgo_sant'>
|
||||||
<category id="catAIgraphsensor" colour="#90A244">
|
<category id="catAIgraphsensorpro" colour="#90A244">
|
||||||
<block type="CREATE_CAMERA">
|
<block type="CREATE_CAMERA">
|
||||||
<value name="HM">
|
<value name="HM">
|
||||||
<shadow type="yesorno">
|
<shadow type="yesorno">
|
||||||
@@ -2426,13 +2426,6 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="SHOOT_AND_SAVE_PICTURE">
|
|
||||||
<value name="direct">
|
|
||||||
<shadow type="text">
|
|
||||||
<field name="TEXT">mixly.jpg</field>
|
|
||||||
</shadow>
|
|
||||||
</value>
|
|
||||||
</block>
|
|
||||||
<block type="variables_set">
|
<block type="variables_set">
|
||||||
<field name="VAR">image</field>
|
<field name="VAR">image</field>
|
||||||
<value name="VALUE">
|
<value name="VALUE">
|
||||||
@@ -2642,7 +2635,6 @@
|
|||||||
<field name="VAR">_results</field>
|
<field name="VAR">_results</field>
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
|
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_HOW_MUCH_RECOGNITION">
|
<block type="GET_HOW_MUCH_RECOGNITION">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
@@ -2711,23 +2703,90 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
|
<!-- <block type="MODELP_SIMPLELY_RUN_RECOGNIZION">
|
||||||
|
|
||||||
<!-- <block type="GET_QR_CODE_RECOGNITION_DATA">
|
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="CAM">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">camera</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="VAR">
|
||||||
|
<block type="display_color_seclet">
|
||||||
|
<field name="COLOR">#0xF800</field>
|
||||||
|
</block>
|
||||||
|
<shadow type="tuple_create_with_text_return">
|
||||||
|
<field name="TEXT">255,255,0</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block> -->
|
||||||
|
</category>
|
||||||
|
<category id="catAIgraphsensor" colour="#90A244">
|
||||||
|
<block type="CREATE_CAMERA_SIMPLE">
|
||||||
|
</block>
|
||||||
|
<block type="SHOOT_AND_SAVE_PICTURE">
|
||||||
|
<value name="direct">
|
||||||
|
<shadow type="text">
|
||||||
|
<field name="TEXT">mixly.jpg</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
|
<block type="AI_CAMERA_INIT_SIMPLE">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
|
<block type="Register_color_recognition_fixed_SIMPLE">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
|
<block type="REGISTER_NEW_FACE_SIMPLE">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="NAME">
|
||||||
|
<shadow type="text">
|
||||||
|
<field name="TEXT">name</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
|
<block type="GET_QR_CODE_RECOGNITION_DATA">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_COLOR_DETECTION_NUM">
|
<block type="GET_COLOR_DETECTION_NUM">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_COLOR_DETECTION_LOCATION">
|
<!-- <block type="GET_COLOR_DETECTION_LOCATION">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">ai</field>
|
||||||
@@ -2738,15 +2797,19 @@
|
|||||||
<field name="NUM">1</field>
|
<field name="NUM">1</field>
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block> -->
|
||||||
<block type="GET_CAT_FACE_DETECTION_NUM">
|
<block type="GET_CAT_FACE_DETECTION_NUM">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_CAT_FACE_DETECTION_LOCATION">
|
<!-- <block type="GET_CAT_FACE_DETECTION_LOCATION">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">ai</field>
|
||||||
@@ -2757,15 +2820,43 @@
|
|||||||
<field name="NUM">1</field>
|
<field name="NUM">1</field>
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
|
</block> -->
|
||||||
|
<block type="GET_HUMAN_DETECTION_NUM">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_FACE_DETECTION_NUM">
|
<block type="GET_FACE_DETECTION_NUM">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
<block type="GET_FACE_DETECTION_LOCATION">
|
<block type="GET_FACE_DETECTION_NAME">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
<value name="boolean">
|
||||||
|
<shadow type="logic_boolean">
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <block type="GET_FACE_DETECTION_LOCATION">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
<field name="VAR">ai</field>
|
<field name="VAR">ai</field>
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ ZhHans.MSG = {
|
|||||||
catAIsensor:"MixGoAI智能传感",
|
catAIsensor:"MixGoAI智能传感",
|
||||||
catAIsensor2:"MixGoAI图像识别",
|
catAIsensor2:"MixGoAI图像识别",
|
||||||
catAIgraphsensor:"图像处理",
|
catAIgraphsensor:"图像处理",
|
||||||
|
catAIgraphsensorpro:"图像进阶",
|
||||||
catAIvoicesensor:"语音处理",
|
catAIvoicesensor:"语音处理",
|
||||||
catSensor: "传感器",
|
catSensor: "传感器",
|
||||||
catActuator: "执行器",
|
catActuator: "执行器",
|
||||||
@@ -4226,7 +4227,7 @@ ZhHans.MIXLY_VERTICAL_MIRRORING = '垂直镜像';
|
|||||||
ZhHans.MIXLY_MODEL_NUMBER = '型号';
|
ZhHans.MIXLY_MODEL_NUMBER = '型号';
|
||||||
ZhHans.MIXLY_IMAGE_QUALITY = '图像质量';
|
ZhHans.MIXLY_IMAGE_QUALITY = '图像质量';
|
||||||
ZhHans.MIXLY_ROTATION_ANGLE = '旋转角度';
|
ZhHans.MIXLY_ROTATION_ANGLE = '旋转角度';
|
||||||
ZhHans.MIXLY_SYNC_DISPLAY = '同步显示';
|
ZhHans.MIXLY_SYNC_DISPLAY = '并同步显示';
|
||||||
ZhHans.MIXLY_ONLY = '仅';
|
ZhHans.MIXLY_ONLY = '仅';
|
||||||
ZhHans.MIXLY_HUMAN = '人';
|
ZhHans.MIXLY_HUMAN = '人';
|
||||||
ZhHans.MIXLY_CAT = '猫';
|
ZhHans.MIXLY_CAT = '猫';
|
||||||
|
|||||||
Reference in New Issue
Block a user