Files
2026-01-16 21:59:02 +08:00

642 lines
30 KiB
JavaScript

import { Boards } from 'mixly';
export const yesorno = function (_, generator) {
var code = this.getFieldValue('state');
return [code, generator.ORDER_ATOMIC];
}
//voice part
export const VOICE_RECOGNITION_CONTROL = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_bot'] = 'from ' + version + ' import onboard_bot';
var control = this.getFieldValue('control');
var code = 'onboard_bot.asr_en(' + control + ')\n';
return code;
}
export const CI130X_OPEN_AND_CLOSE = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
var status = this.getFieldValue('status');
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var code = 'ext_asr.asr_en(' + status + ')\n';
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var code = 'onboard_asr.asr_en(' + status + ')\n';
}
return code;
}
export const CI130X_IDENTIFY_AND_SAVE_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var code = 'ext_asr.cmd_id()\n';
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var code = 'onboard_asr.cmd_id()\n';
}
return code;
}
export const CI130X_GET_WHETHER_IDENTIFY_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.result(' + cmd + ')';
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.result(' + cmd + ')';
}
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_GET_THE_RECOGNIZED_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'ext_asr.status()[0]';
} else if (key == 'status2') {
var code = 'ext_asr.status()[1]';
} else if (key == 'status3') {
var code = 'ext_asr.asr_en()';
} else {
var code = 'ext_asr.' + key + '()';
}
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var key = this.getFieldValue('key');
if (key == 'status1') {
var code = 'onboard_asr.status()[0]';
} else if (key == 'status2') {
var code = 'onboard_asr.status()[1]';
} else if (key == 'status3') {
var code = 'ext_asr.asr_en()';
} else {
var code = 'onboard_asr.' + key + '()';
}
}
return [code, generator.ORDER_ATOMIC];
}
export const CI130X_BROADCAST_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'ext_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var num = generator.valueToCode(this, 'NUM', generator.ORDER_ATOMIC);
var star = this.getFieldValue('star');
var end = this.getFieldValue('end');
var code = 'onboard_asr.play(' + star + ', ' + num + ', ' + end + ')\n';
}
return code;
}
export const CI130X_SET_SYSTEM_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_mini') {
generator.definitions_['import_mini_gx_ext_asr'] = 'from mini_gx import ext_asr';
var cmd = this.getFieldValue('cmd');
var code = 'ext_asr.sys_cmd(' + cmd + ')\n';
} else {
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var cmd = this.getFieldValue('cmd');
var code = 'onboard_asr.sys_cmd(' + cmd + ')\n';
}
return code;
}
export const CI130X_BROADCAST_SYSTEM_TIME = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_asr'] = 'from ' + version + ' import onboard_asr';
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'onboard_asr.play_time(detail=' + bool + ')\n';
return code;
}
export const CI130X_PLAY_SYSTEM_CMD_SANT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
if (version == 'mixgo_sant') {
generator.definitions_['import_sant_tts'] = 'import sant_tts';
var text = generator.valueToCode(this, 'text', generator.ORDER_ATOMIC) || '"你们,米思齐"';
var speed = this.getFieldValue('speed') || '3';
var code = 'sant_tts.play(' + text + ', speed=' + speed + ')\n';
} else if (version == 'mixgo_sowl') {
generator.definitions_['import_sant_tts'] = 'import sowl_tts';
var text = generator.valueToCode(this, 'text', generator.ORDER_ATOMIC) || '"你们,米思齐"';
var speed = this.getFieldValue('speed') || '3';
var code = 'sowl_tts.play(' + text + ', speed=' + speed + ')\n';
} else {
generator.definitions_['import_tts'] = 'import tts';
var text = generator.valueToCode(this, 'text', generator.ORDER_ATOMIC) || '"你们,米思齐"';
var speed = this.getFieldValue('speed') || '3';
var code = 'tts.play(' + text + ', speed=' + speed + ')\n';
}
return code;
}
//graph part
export const CREATE_CAMERA = function (_, generator) {
// var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_Camera_FrameSize'] = 'from camera import Camera,FrameSize';
var cmd = this.getFieldValue('cmd');
var hm = generator.valueToCode(this, 'HM', generator.ORDER_ATOMIC);
var vf = generator.valueToCode(this, 'VF', generator.ORDER_ATOMIC);
var code = 'camera = Camera(FrameSize.' + cmd + ',hmirror=' + hm + ',vflip=' + vf + ')\n';
return code;
}
export const SHOOT_AND_SAVE_PICTURE = function (_, generator) {
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var code = 'camera.snapshot(' + direct + ')\n';
return code;
}
export const GET_IMAGE_AND_SAVE = function (_, generator) {
generator.definitions_['camera_import_Image'] = 'from camera import Image';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var q = generator.valueToCode(this, 'quality', generator.ORDER_ATOMIC);
var a = this.getFieldValue('angle');
var code = 'Image.save(' + sub + ',path=' + direct + ',quality=' + q + ',rotation=' + a + ')\n';
return code;
}
export const OPEN_IMAGE = function (_, generator) {
generator.definitions_['camera_import_Image'] = 'from camera import Image';
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var a = this.getFieldValue('angle');
var w = generator.valueToCode(this, 'w', generator.ORDER_ATOMIC);
var h = generator.valueToCode(this, 'h', generator.ORDER_ATOMIC);
var code = 'Image.open(path=' + direct + ',rotation=' + a + ',scale_width=' + w + ',scale_height=' + h + ')';
return [code, generator.ORDER_ATOMIC];
}
export const GET_IMAGE_FROM_NET = function (_, generator) {
generator.definitions_['camera_import_Image'] = 'from camera import Image';
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var a = this.getFieldValue('angle');
var w = generator.valueToCode(this, 'w', generator.ORDER_ATOMIC);
var h = generator.valueToCode(this, 'h', generator.ORDER_ATOMIC);
var code = 'Image.download(url=' + direct + ', rotation=' + a + ', scale_width=' + w + ', scale_height=' + h + ')';
return [code, generator.ORDER_ATOMIC];
}
export const CAMERA_LOOGOUT = function () {
var code = 'camera.deinit()\n';
return code;
}
export const GET_PICTURE_DATA_EXACT = function (_, generator) {
// var kind = this.getFieldValue('kind');
var code = 'camera.capture()';
return [code, generator.ORDER_ATOMIC];
}
export const GET_PICTURE_WIDTH_HEIGHT_DEVICE = function (_, generator) {
var kind = this.getFieldValue('kind');
var code = 'camera.' + kind + '()';
return [code, generator.ORDER_ATOMIC];
}
export const CONVERT_IMAGE_TO_JPG = function (_, generator) {
generator.definitions_['camera_import_Image'] = 'from camera import Image';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var kind = this.getFieldValue('kind');
var q = generator.valueToCode(this, 'quality', generator.ORDER_ATOMIC);
var code = 'Image.convert(' + sub + ', formats=' + kind + ', quality=' + q + ')';
return [code, generator.ORDER_ATOMIC];
}
export const GET_PICTURE_DATA_WHS = function (_, generator) {
generator.definitions_['camera_import_Image'] = 'from camera import Image';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var kind = this.getFieldValue('kind');
var code = sub + '.' + kind;
return [code, generator.ORDER_ATOMIC];
}
export const SCREEN_SHOW_CAM_GRAPH_SHOOT = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'onboard_tft.display(' + sub + ', sync=' + bool + ')\n';
return code;
}
export const SCREEN_SHOW_CAM_GRAPH_SHOOT_LOCATION = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var x = generator.valueToCode(this, 'x', generator.ORDER_ATOMIC);
var y = generator.valueToCode(this, 'y', generator.ORDER_ATOMIC);
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'onboard_tft.display(' + sub + ',x=' + x + ',y=' + y + ', sync=' + bool + ')\n';
return code;
}
export const SCREEN_DISPLAY_IMAGE = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var a = this.getFieldValue('angle');
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'onboard_tft.display(' + direct + ',rotation=' + a + ',sync=' + bool + ')\n';
return code;
}
export const SCREEN_DISPLAY_IMAGE_LOCATION = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var direct = generator.valueToCode(this, 'direct', generator.ORDER_ATOMIC);
var x = generator.valueToCode(this, 'x', generator.ORDER_ATOMIC);
var y = generator.valueToCode(this, 'y', generator.ORDER_ATOMIC);
var a = this.getFieldValue('angle');
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'onboard_tft.display(' + direct + ',x=' + x + ',y=' + y + ',rotation=' + a + ',sync=' + bool + ')\n';
return code;
}
export const GET_SCREEN_IMAGE = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var code = 'onboard_tft.screenshot()';
return [code, generator.ORDER_ATOMIC];
}
export const GET_SCREEN_IMAGE_SIZE = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
var x = generator.valueToCode(this, 'x', generator.ORDER_ATOMIC);
var y = generator.valueToCode(this, 'y', generator.ORDER_ATOMIC);
var w = generator.valueToCode(this, 'w', generator.ORDER_ATOMIC);
var h = generator.valueToCode(this, 'h', generator.ORDER_ATOMIC);
var code = 'onboard_tft.screenshot(x=' + x + ',y=' + y + ',w=' + w + ',h=' + h + ')';
return [code, generator.ORDER_ATOMIC];
}
export const AI_CAMERA_INIT = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var cmd = this.getFieldValue('kind');
var width = generator.valueToCode(this, 'WIDTH', generator.ORDER_ATOMIC);
var height = generator.valueToCode(this, 'HEIGHT', generator.ORDER_ATOMIC);
var code = sub + ' = esp_dl.' + cmd + '(width=' + width + ', height=' + height + ')\n';
return code;
}
export const MODEL_INIT_WIDTH = function (_, generator) {
var width = this.getFieldValue('width');
var code = width;
return [code, generator.ORDER_ATOMIC];
}
export const MODEL_INIT_HEIGHT = function (_, generator) {
var height = this.getFieldValue('height');
var code = height;
return [code, generator.ORDER_ATOMIC];
}
export const AI_CAMERA_INIT_FACERECOGNIZE = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var path = generator.valueToCode(this, 'PATH', generator.ORDER_ATOMIC);
var width = generator.valueToCode(this, 'WIDTH', generator.ORDER_ATOMIC);
var height = generator.valueToCode(this, 'HEIGHT', generator.ORDER_ATOMIC);
var code = sub + ' = esp_dl.FaceRecognizer(width=' + width + ', height=' + height + ', db_path=' + path + ')\n';
return code;
}
export const MODEL_LOGOUT = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = 'del ' + sub + '\n';
return code;
}
export const MODEL_RUN = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var frame = generator.valueToCode(this, 'FRAME', generator.ORDER_ATOMIC);
var code = sub + '.run(' + frame + '.image)';
return [code, generator.ORDER_ATOMIC];
}
export const MODEL_WHETHER_RUN_SUCCEED = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = 'esp_dl.analyze(' + sub + ')';
return [code, generator.ORDER_ATOMIC];
}
export const GET_HOW_MUCH_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = 'esp_dl.analyze(' + sub + ',"len")';
return [code, generator.ORDER_ATOMIC];
}
export const GET_NO_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var no = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
var code = 'esp_dl.analyze(' + sub + ',"data",' + no + ')';
return [code, generator.ORDER_ATOMIC];
}
export const GET_NO_XY_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var no = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
var coord = this.getFieldValue('coord');
if (coord == "all") {
var code = 'esp_dl.analyze(' + sub + ',"box",' + no + ')';
} else {
var code = 'esp_dl.analyze(' + sub + ',"box",' + no + ')[' + coord + ']';
}
return [code, generator.ORDER_ATOMIC];
}
export const GET_NO_XY_RECOGNITION_FACE = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var no = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
var part = this.getFieldValue('part');
if (part == "all") {
var code = 'esp_dl.analyze(' + sub + ',"features",' + no + ')';
} else {
var code = 'esp_dl.analyze(' + sub + ',"features",' + no + ')' + part;
}
return [code, generator.ORDER_ATOMIC];
}
export const GET_NO_CAT_OR_FACE_RECOGNITION = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var no = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
var code = 'esp_dl.analyze(' + sub + ',"score",' + no + ')';
return [code, generator.ORDER_ATOMIC];
}
export const Register_color_recognition_fixed = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var color = this.getFieldValue('color');
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
if (color == "red") {
var code = sub + '.register_color((170, 100, 100), (10, 255, 255),"' + color + '", ' + area + ')\n';
} else if (color == "green") {
var code = sub + '.register_color((35, 100, 100), (85, 255, 255),"' + color + '",' + area + ')\n';
} else if (color == "blue") {
var code = sub + '.register_color((100, 100, 100), (130, 255, 255),"' + color + '", ' + area + ')\n';
} else if (color == "yellow") {
var code = sub + '.register_color((20, 100, 100), (35, 255, 255),"' + color + '", ' + area + ')\n';
} else if (color == "cyan") {
var code = sub + '.register_color((85, 100, 100), (100, 255, 255),"' + color + '", ' + area + ')\n';
} else if (color == "purple") {
var code = sub + '.register_color((130, 100, 100), (150, 255, 255),"' + color + '", ' + area + ')\n';
} else if (color == "black") {
var code = sub + '.register_color((0, 0, 0), (180, 255, 50),"' + color + '", ' + area + ')\n';
} else if (color == "white") {
var code = sub + '.register_color((0, 0, 200), (180, 50, 255),"' + color + '", ' + area + ')\n';
}
return code;
}
export const Register_color_recognition = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var min = generator.valueToCode(this, 'MIN', generator.ORDER_ATOMIC);
var max = generator.valueToCode(this, 'MAX', generator.ORDER_ATOMIC);
var color = generator.valueToCode(this, 'COLOR', generator.ORDER_ATOMIC);
var area = generator.valueToCode(this, 'AREA', generator.ORDER_ATOMIC);
var code = sub + '.register_color(' + min + ', ' + max + ', ' + color + ', ' + area + ')\n';
return code;
}
export const REGISTER_NEW_FACE = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var image = generator.valueToCode(this, 'IMAGE', generator.ORDER_ATOMIC);
var name = generator.valueToCode(this, 'NAME', generator.ORDER_ATOMIC);
var code = sub + '.enroll(' + image + '.image, name=' + name + ', validate = 1)';
return [code, generator.ORDER_ATOMIC];
}
export const DELETE_FACE_FROM_DATABASE = function (_, generator) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var id = generator.valueToCode(this, 'ID', generator.ORDER_ATOMIC);
var code = sub + '.delete_face(' + id + ')\n';
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) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = sub + '.print_database()\n';
return code;
}
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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "data", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
export const GET_PICTURE_RECOGNITION_DATA = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl'
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "data", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "len", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
// export const GET_COLOR_DETECTION_LOCATION = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
// var color = this.getFieldValue('color');
// var code = sub + '.color_detection('+ color +",'pos',"+ num +')';
// return [code, generator.ORDER_ATOMIC];
// }
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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "len", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
// 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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "len", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "len", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
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 bool = generator.valueToCode(this, 'boolean', generator.ORDER_ATOMIC);
var code = 'esp_dl.simple_run(' + sub + ', camera, "person", "name", color=0xF800, sync=' + bool + ')';
return [code, generator.ORDER_ATOMIC];
}
// export const GET_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 + ".face_detection('pos',"+ num +')';
// return [code, generator.ORDER_ATOMIC];
// }
// export const GET_FACE_DETECTION_KEYPOINT_LOCATION = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var num = generator.valueToCode(this, 'NO', 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 = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var code = sub + ".face_recognition('len')";
// return [code, generator.ORDER_ATOMIC];
// }
// export const GET_FACE_RECOGNITION_ID_LOCATION = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
// var code = sub + ".face_recognition('pos',"+ num +')';
// return [code, generator.ORDER_ATOMIC];
// }
// export const GET_FACE_RECOGNITION_ID_KEYPOINT_LOCATION = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var num = generator.valueToCode(this, 'NO', generator.ORDER_ATOMIC);
// var kp = this.getFieldValue('kp');
// var code = sub + ".face_recognition('keypoint',"+ num +','+ kp +')';
// return [code, generator.ORDER_ATOMIC];
// }
export const GET_NO_FACE_RECOGNITION_INFO = function (_, generator) {
generator.definitions_['import_esp_dl'] = 'import esp_dl';
var sub = generator.valueToCode(this, 'SUB', 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 PEOPLE_FACE_ENROLL = function (_, generator) {
// var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
// var code = sub + '.face_enroll()';
// return [code, generator.ORDER_ATOMIC];
// }
// 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) {
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = sub + '.stop()';
return [code, generator.ORDER_ATOMIC];
}
export const MIXIO_REPORT_IMAGE_DATA = function (_, generator) {
generator.definitions_['import_base64'] = 'import base64';
var sub = generator.valueToCode(this, 'SUB', generator.ORDER_ATOMIC);
var code = 'mixiot.image_base64(' + sub + ')';
return [code, generator.ORDER_ATOMIC];
}
//simplified part
export const CREATE_CAMERA_SIMPLE = function (_, generator) {
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=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().image, name=' + name + ', validate = 1)';
return [code, generator.ORDER_ATOMIC];
}