sant智能修改
This commit is contained in:
@@ -428,7 +428,7 @@ export const SCREEN_SHOW_CAM_GRAPH_SHOOT = {
|
|||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||||
this.appendValueInput("SUB")
|
this.appendValueInput("SUB")
|
||||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_monitor + Blockly.Msg.OLEDDISPLAY + Blockly.Msg.MIXLY_MICROBIT_IMAGE)
|
.appendField(Blockly.Msg.OLEDDISPLAY + Blockly.Msg.MIXLY_MICROBIT_IMAGE)
|
||||||
this.appendDummyInput('')
|
this.appendDummyInput('')
|
||||||
.appendField(Blockly.Msg.MIXLY_SYNC_DISPLAY)
|
.appendField(Blockly.Msg.MIXLY_SYNC_DISPLAY)
|
||||||
.appendField(new Blockly.FieldDropdown([
|
.appendField(new Blockly.FieldDropdown([
|
||||||
@@ -445,7 +445,7 @@ export const SCREEN_DISPLAY_IMAGE = {
|
|||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(DISPLAY_ONBOARD_HUE);
|
this.setColour(DISPLAY_ONBOARD_HUE);
|
||||||
this.appendValueInput('direct')
|
this.appendValueInput('direct')
|
||||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_JS_MONITOR_SHOW_IMAGE)
|
.appendField(Blockly.Msg.OLED_BITMAP)
|
||||||
.appendField(Blockly.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH);
|
.appendField(Blockly.Msg.MIXLY_MICROBIT_PY_STORAGE_THE_PATH);
|
||||||
this.appendDummyInput('')
|
this.appendDummyInput('')
|
||||||
.appendField(Blockly.Msg.MIXLY_ROTATION_ANGLE)
|
.appendField(Blockly.Msg.MIXLY_ROTATION_ANGLE)
|
||||||
@@ -490,7 +490,7 @@ export const AI_CAMERA_INIT = {
|
|||||||
[Blockly.Msg.MIXLY_COLOR_RECOGNTITION, "ColorDetector"],
|
[Blockly.Msg.MIXLY_COLOR_RECOGNTITION, "ColorDetector"],
|
||||||
[Blockly.Msg.MIXLY_CAT + Blockly.Msg.MIXLY_RECOGNITION, "CatDetector"],
|
[Blockly.Msg.MIXLY_CAT + Blockly.Msg.MIXLY_RECOGNITION, "CatDetector"],
|
||||||
[Blockly.Msg.MIXLY_HUMAN + Blockly.Msg.MIXLY_RECOGNITION, "HumanDetector"],
|
[Blockly.Msg.MIXLY_HUMAN + Blockly.Msg.MIXLY_RECOGNITION, "HumanDetector"],
|
||||||
[Blockly.Msg.MIXLY_AipFace, "FaceDetector"]
|
[Blockly.Msg.MIXLY_FACE_CLASSIFIER, "FaceDetector"]
|
||||||
]), "kind");
|
]), "kind");
|
||||||
this.appendDummyInput("")
|
this.appendDummyInput("")
|
||||||
.appendField(Blockly.Msg.MIXLY_WIDTH)
|
.appendField(Blockly.Msg.MIXLY_WIDTH)
|
||||||
@@ -552,7 +552,7 @@ export const AI_CAMERA_INIT_FACERECOGNIZE = {
|
|||||||
]),"height");
|
]),"height");
|
||||||
this.appendDummyInput("")
|
this.appendDummyInput("")
|
||||||
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.LISTS_SET_INDEX_INPUT_TO)
|
.appendField(Blockly.Msg.MIXLY_SETUP + Blockly.Msg.LISTS_SET_INDEX_INPUT_TO)
|
||||||
.appendField(Blockly.Msg.MIXLY_FACE_RECOGNIZER);
|
.appendField(Blockly.Msg.MIXLY_AipFace);
|
||||||
this.appendValueInput("PATH")
|
this.appendValueInput("PATH")
|
||||||
.appendField(Blockly.Msg.PATH_OF_FACE_DATABASE);
|
.appendField(Blockly.Msg.PATH_OF_FACE_DATABASE);
|
||||||
this.setInputsInline(true);
|
this.setInputsInline(true);
|
||||||
@@ -795,6 +795,9 @@ export const REGISTER_NEW_FACE = {
|
|||||||
this.appendValueInput('SUB')
|
this.appendValueInput('SUB')
|
||||||
.appendField(Blockly.Msg.MIXLY_TENSORFLOW_MODEL)
|
.appendField(Blockly.Msg.MIXLY_TENSORFLOW_MODEL)
|
||||||
.setCheck("var");
|
.setCheck("var");
|
||||||
|
this.appendValueInput('IMAGE')
|
||||||
|
.appendField(Blockly.Msg.MIXLY_MICROPYTHON_SOCKET_MAKE + Blockly.Msg.MIXLY_AipImageClassify_Image)
|
||||||
|
.setCheck("var");
|
||||||
this.appendDummyInput()
|
this.appendDummyInput()
|
||||||
.appendField(Blockly.Msg.register_a_new_face_in_the_database);
|
.appendField(Blockly.Msg.register_a_new_face_in_the_database);
|
||||||
this.appendValueInput("NAME")
|
this.appendValueInput("NAME")
|
||||||
@@ -821,6 +824,20 @@ export const DELETE_FACE_FROM_DATABASE = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const DELETE_FACE_ALL = {
|
||||||
|
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_MICROBIT_JS_DELETE_VAR + Blockly.Msg.MIXLY_ALL + Blockly.Msg.MIXLY_FACE);
|
||||||
|
this.setPreviousStatement(true);
|
||||||
|
this.setNextStatement(true);
|
||||||
|
this.setInputsInline(true);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
export const PRINT_FACE_DATABASE = {
|
export const PRINT_FACE_DATABASE = {
|
||||||
init: function () {
|
init: function () {
|
||||||
this.setColour(AI_LOCAL_GRAPH_HUE);
|
this.setColour(AI_LOCAL_GRAPH_HUE);
|
||||||
|
|||||||
@@ -312,21 +312,21 @@ export const Register_color_recognition_fixed= function (_, generator) {
|
|||||||
var color = this.getFieldValue('color');
|
var color = this.getFieldValue('color');
|
||||||
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
|
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
|
||||||
if (color == "red"){
|
if (color == "red"){
|
||||||
var code = sub + '.register_color((170, 100, 100), (10, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((170, 100, 100), (10, 255, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "green"){
|
}else if(color == "green"){
|
||||||
var code = sub + '.register_color((35, 100, 100), (85, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((35, 100, 100), (85, 255, 255),"'+ color +'",' + area + ')\n';
|
||||||
}else if(color == "blue"){
|
}else if(color == "blue"){
|
||||||
var code = sub + '.register_color((100, 100, 100), (130, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((100, 100, 100), (130, 255, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "yellow"){
|
}else if(color == "yellow"){
|
||||||
var code = sub + '.register_color((20, 100, 100), (35, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((20, 100, 100), (35, 255, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "cyan"){
|
}else if(color == "cyan"){
|
||||||
var code = sub + '.register_color((85, 100, 100), (100, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((85, 100, 100), (100, 255, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "purple"){
|
}else if(color == "purple"){
|
||||||
var code = sub + '.register_color((130, 100, 100), (150, 255, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((130, 100, 100), (150, 255, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "black"){
|
}else if(color == "black"){
|
||||||
var code = sub + '.register_color((0, 0, 0), (180, 255, 50),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((0, 0, 0), (180, 255, 50),"'+ color +'", '+ area + ')\n';
|
||||||
}else if(color == "white"){
|
}else if(color == "white"){
|
||||||
var code = sub + '.register_color((0, 0, 200), (180, 50, 255),'+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color((0, 0, 200), (180, 50, 255),"'+ color +'", '+ area + ')\n';
|
||||||
}
|
}
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
@@ -337,17 +337,15 @@ export const Register_color_recognition = function (_, generator) {
|
|||||||
var max = generator.valueToCode(this, 'MAX', generator.ORDER_ATOMIC);
|
var max = generator.valueToCode(this, 'MAX', generator.ORDER_ATOMIC);
|
||||||
var color = generator.valueToCode(this, 'COLOR', generator.ORDER_ATOMIC);
|
var color = generator.valueToCode(this, 'COLOR', generator.ORDER_ATOMIC);
|
||||||
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
|
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
|
||||||
var code = sub + '.register_color(' + min +', '+ max +', '+ color +', area_threshold='+ area + ')\n';
|
var code = sub + '.register_color(' + min +', '+ max +', '+ color +', '+ area + ')\n';
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const REGISTER_NEW_FACE = function (_, generator) {
|
export const REGISTER_NEW_FACE = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var min = generator.valueToCode(this, 'MIN', generator.ORDER_ATOMIC);
|
var image = generator.valueToCode(this, 'IMAGE', generator.ORDER_ATOMIC);
|
||||||
var max = generator.valueToCode(this, 'MAX', generator.ORDER_ATOMIC);
|
var name = generator.valueToCode(this, 'NAME', generator.ORDER_ATOMIC);
|
||||||
var color = generator.valueToCode(this, 'COLOR', generator.ORDER_ATOMIC);
|
var code = sub + '.enroll(' + image +', '+ validate +', '+ name +')\n';
|
||||||
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
|
|
||||||
var code = sub + '.enroll(' + min +', '+ max +', '+ color +', area_threshold='+ area + ')\n';
|
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -358,6 +356,12 @@ export const DELETE_FACE_FROM_DATABASE = function (_, generator) {
|
|||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export const DELETE_FACE_ALL = function (_, generator) {
|
||||||
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
|
var code = sub + '.clear_face()\n';
|
||||||
|
return code;
|
||||||
|
}
|
||||||
|
|
||||||
export const PRINT_FACE_DATABASE = function (_, generator) {
|
export const PRINT_FACE_DATABASE = function (_, generator) {
|
||||||
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
|
||||||
var code = sub + '.print_database()\n';
|
var code = sub + '.print_database()\n';
|
||||||
|
|||||||
@@ -2471,6 +2471,9 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
|
<block type="variables_set">
|
||||||
|
<field name="VAR">image</field>
|
||||||
|
<value name="VALUE">
|
||||||
<block type="OPEN_IMAGE">
|
<block type="OPEN_IMAGE">
|
||||||
<value name="direct">
|
<value name="direct">
|
||||||
<shadow type="text">
|
<shadow type="text">
|
||||||
@@ -2478,6 +2481,8 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
<block type="CAMERA_LOOGOUT"></block>
|
<block type="CAMERA_LOOGOUT"></block>
|
||||||
<block type="SCREEN_DISPLAY_IMAGE">
|
<block type="SCREEN_DISPLAY_IMAGE">
|
||||||
<value name="direct">
|
<value name="direct">
|
||||||
@@ -2486,7 +2491,12 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
|
<block type="variables_set">
|
||||||
|
<field name="VAR">image</field>
|
||||||
|
<value name="VALUE">
|
||||||
<block type="GET_SCREEN_IMAGE"></block>
|
<block type="GET_SCREEN_IMAGE"></block>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
<block type="SCREEN_SHOW_CAM_GRAPH_SHOOT">
|
<block type="SCREEN_SHOW_CAM_GRAPH_SHOOT">
|
||||||
<value name="SUB">
|
<value name="SUB">
|
||||||
<shadow type="variables_get">
|
<shadow type="variables_get">
|
||||||
@@ -2565,6 +2575,11 @@
|
|||||||
<field name="VAR">Model</field>
|
<field name="VAR">Model</field>
|
||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
|
<value name="IMAGE">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">image</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
<value name="NAME">
|
<value name="NAME">
|
||||||
<shadow type="text">
|
<shadow type="text">
|
||||||
<field name="TEXT">name</field>
|
<field name="TEXT">name</field>
|
||||||
@@ -2590,6 +2605,13 @@
|
|||||||
</shadow>
|
</shadow>
|
||||||
</value>
|
</value>
|
||||||
</block>
|
</block>
|
||||||
|
<block type="DELETE_FACE_ALL">
|
||||||
|
<value name="SUB">
|
||||||
|
<shadow type="variables_get">
|
||||||
|
<field name="VAR">Model</field>
|
||||||
|
</shadow>
|
||||||
|
</value>
|
||||||
|
</block>
|
||||||
<block type="variables_set">
|
<block type="variables_set">
|
||||||
<field name="VAR">_results</field>
|
<field name="VAR">_results</field>
|
||||||
<value name="VALUE">
|
<value name="VALUE">
|
||||||
|
|||||||
@@ -4234,7 +4234,6 @@ ZhHans.MIXLY_LOGOUT = '注销';
|
|||||||
ZhHans.MIXLY_REGISTER = '注册';
|
ZhHans.MIXLY_REGISTER = '注册';
|
||||||
ZhHans.REGISTER_COLOR_RECOGNITION = '注册识别颜色(自定义)';
|
ZhHans.REGISTER_COLOR_RECOGNITION = '注册识别颜色(自定义)';
|
||||||
ZhHans.MINIMUN_DETECTABLE_AREA = '最小检测面积(像素)';
|
ZhHans.MINIMUN_DETECTABLE_AREA = '最小检测面积(像素)';
|
||||||
ZhHans.MIXLY_FACE_RECOGNIZER = '人脸分辨';
|
|
||||||
ZhHans.PATH_OF_FACE_DATABASE = '人脸数据库文件的路径';
|
ZhHans.PATH_OF_FACE_DATABASE = '人脸数据库文件的路径';
|
||||||
ZhHans.register_a_new_face_in_the_database = '在数据库中注册新人脸';
|
ZhHans.register_a_new_face_in_the_database = '在数据库中注册新人脸';
|
||||||
ZhHans.delete_the_face_from_the_database = '从数据库中删除人脸';
|
ZhHans.delete_the_face_from_the_database = '从数据库中删除人脸';
|
||||||
|
|||||||
Reference in New Issue
Block a user