# -*- coding: utf-8 -*- import wx import modelmngr_execute ########################################################################################## class MyFrame1 ( wx.Frame ): def __init__( self, parent ): wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = u"模型管家", pos = wx.DefaultPosition, size = wx.Size( 779,521 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL ) self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize ) #################################################### bSizer6 = wx.BoxSizer( wx.VERTICAL ) #################################################### bSizer7 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText6 = wx.StaticText( self, wx.ID_ANY, u"模型文件1路径 *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText6.Wrap( -1 ) bSizer7.Add( self.m_staticText6, 0, wx.ALL, 5 ) self.m_textCtrl6 = wx.TextCtrl( self, wx.ID_ANY, u"/system/etc/models/fsrcn.cambricon", wx.DefaultPosition, wx.Size( 650,-1 ), 0 ) bSizer7.Add( self.m_textCtrl6, 0, wx.ALL, 5 ) bSizer6.Add( bSizer7, 1, wx.EXPAND, 5 ) ######################## bSizer90 = wx.BoxSizer( wx.HORIZONTAL ) self.m_checkBox2 = wx.CheckBox( self, wx.ID_ANY, u"是否加密 *", wx.DefaultPosition, wx.DefaultSize, 0 ) bSizer90.Add( self.m_checkBox2, 0, wx.ALL, 5 ) self.Bind(wx.EVT_CHECKBOX, self.on_model1_check, self.m_checkBox2) self.m_staticText19 = wx.StaticText( self, wx.ID_ANY, u"模型文件1密钥", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText19.Wrap( -1 ) bSizer90.Add( self.m_staticText19, 0, wx.ALL, 5 ) self.m_textCtrl19 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 300,-1 ), 0 ) bSizer90.Add( self.m_textCtrl19, 0, wx.ALL, 5 ) bSizer6.Add( bSizer90, 1, wx.EXPAND, 5 ) #################################################### bSizer24 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText20 = wx.StaticText( self, wx.ID_ANY, u"模型文件2路径", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText20.Wrap( -1 ) bSizer24.Add( self.m_staticText20, 0, wx.ALL, 5 ) self.m_textCtrl20 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 650,-1 ), 0 ) bSizer24.Add( self.m_textCtrl20, 0, wx.ALL, 5 ) bSizer6.Add( bSizer24, 1, wx.EXPAND, 5 ) ######################## bSizer12 = wx.BoxSizer( wx.HORIZONTAL ) self.m_checkBox3 = wx.CheckBox( self, wx.ID_ANY, u"是否加密", wx.DefaultPosition, wx.DefaultSize, 0 ) bSizer12.Add( self.m_checkBox3, 0, wx.ALL, 5 ) self.Bind(wx.EVT_CHECKBOX, self.on_model2_check, self.m_checkBox3) self.m_staticText21 = wx.StaticText( self, wx.ID_ANY, u"模型文件2密钥", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText21.Wrap( -1 ) bSizer12.Add( self.m_staticText21, 0, wx.ALL, 5 ) self.m_textCtrl21 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 300,-1 ), 0 ) bSizer12.Add( self.m_textCtrl21, 0, wx.ALL, 5 ) bSizer6.Add( bSizer12, 1, wx.EXPAND, 5 ) #################################################### bSizer31 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText22 = wx.StaticText( self, wx.ID_ANY, u"模型类型 *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText22.Wrap( -1 ) bSizer31.Add( self.m_staticText22, 0, wx.ALL, 5 ) m_choice1Choices = [ u"在线模型(0)", u"离线模型(1)" ] self.m_choice1 = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_choice1Choices, 0 ) self.m_choice1.SetSelection( 0 ) bSizer31.Add( self.m_choice1, 0, wx.ALL, 5 ) bSizer6.Add( bSizer31, 1, wx.EXPAND, 5 ) #################################################### bSizer32 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText29 = wx.StaticText( self, wx.ID_ANY, u"框架类型 *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText29.Wrap( -1 ) bSizer32.Add( self.m_staticText29, 0, wx.ALL, 5 ) m_choice3Choices = [ u"无(0)", u"TensorFlow(1)", u"KalDi(2)", u"Caffe(3)"] self.m_choice3 = wx.Choice( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, m_choice3Choices, 0 ) self.m_choice3.SetSelection( 0 ) bSizer32.Add( self.m_choice3, 0, wx.ALL, 5 ) bSizer6.Add( bSizer32, 1, wx.EXPAND, 5 ) #################################################### bSizer33 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText30 = wx.StaticText( self, wx.ID_ANY, u"源数据(图片)路径 *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText30.Wrap( -1 ) bSizer33.Add( self.m_staticText30, 0, wx.ALL, 5 ) self.m_textCtrl27 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 500,-1 ), 0 ) bSizer33.Add( self.m_textCtrl27, 0, wx.ALL, 5 ) bSizer6.Add( bSizer33, 1, wx.EXPAND, 5 ) #################################################### bSizer45 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText31 = wx.StaticText( self, wx.ID_ANY, u"输入尺寸N *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText31.Wrap( -1 ) bSizer45.Add( self.m_staticText31, 0, wx.ALL, 5 ) self.m_textCtrl28 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer45.Add( self.m_textCtrl28, 0, wx.ALL, 5 ) self.m_staticText32 = wx.StaticText( self, wx.ID_ANY, u"输入尺寸C *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText32.Wrap( -1 ) bSizer45.Add( self.m_staticText32, 0, wx.ALL, 5 ) self.m_textCtrl29 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer45.Add( self.m_textCtrl29, 0, wx.ALL, 5 ) self.m_staticText33 = wx.StaticText( self, wx.ID_ANY, u"输入尺寸H *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText33.Wrap( -1 ) bSizer45.Add( self.m_staticText33, 0, wx.ALL, 5 ) self.m_textCtrl30 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer45.Add( self.m_textCtrl30, 0, wx.ALL, 5 ) self.m_staticText34 = wx.StaticText( self, wx.ID_ANY, u"输入尺寸W *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText34.Wrap( -1 ) bSizer45.Add( self.m_staticText34, 0, wx.ALL, 5 ) self.m_textCtrl31 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer45.Add( self.m_textCtrl31, 0, wx.ALL, 5 ) bSizer6.Add( bSizer45, 1, wx.EXPAND, 5 ) #################################################### bSizer47 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText35 = wx.StaticText( self, wx.ID_ANY, u"输出尺寸N *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText35.Wrap( -1 ) bSizer47.Add( self.m_staticText35, 0, wx.ALL, 5 ) self.m_textCtrl32 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer47.Add( self.m_textCtrl32, 0, wx.ALL, 5 ) self.m_staticText36 = wx.StaticText( self, wx.ID_ANY, u"输出尺寸C *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText36.Wrap( -1 ) bSizer47.Add( self.m_staticText36, 0, wx.ALL, 5 ) self.m_textCtrl33 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer47.Add( self.m_textCtrl33, 0, wx.ALL, 5 ) self.m_staticText37 = wx.StaticText( self, wx.ID_ANY, u"输出尺寸H *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText37.Wrap( -1 ) bSizer47.Add( self.m_staticText37, 0, wx.ALL, 5 ) self.m_textCtrl34 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer47.Add( self.m_textCtrl34, 0, wx.ALL, 5 ) self.m_staticText38 = wx.StaticText( self, wx.ID_ANY, u"输出尺寸W *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText38.Wrap( -1 ) bSizer47.Add( self.m_staticText38, 0, wx.ALL, 5 ) self.m_textCtrl35 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.Size( 50,-1 ), 0 ) bSizer47.Add( self.m_textCtrl35, 0, wx.ALL, 5 ) bSizer6.Add( bSizer47, 1, wx.EXPAND, 5 ) #################################################### bSizer48 = wx.BoxSizer( wx.HORIZONTAL ) self.m_staticText39 = wx.StaticText( self, wx.ID_ANY, u"超时时限 *", wx.DefaultPosition, wx.DefaultSize, 0 ) self.m_staticText39.Wrap( -1 ) bSizer48.Add( self.m_staticText39, 0, wx.ALL, 5 ) self.m_textCtrl36 = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 ) bSizer48.Add( self.m_textCtrl36, 0, wx.ALL, 5 ) bSizer6.Add( bSizer48, 1, wx.EXPAND, 5 ) #################################################### bSizer49 = wx.BoxSizer( wx.VERTICAL ) self.m_button2 = wx.Button( self, wx.ID_ANY, u"模型执行-异步-非级联", wx.DefaultPosition, wx.DefaultSize, 0 ) bSizer49.Add( self.m_button2, 0, wx.ALL, 5 ) bSizer6.Add( bSizer49, 1, wx.EXPAND, 5 ) self.Bind(wx.EVT_BUTTON, self.on_async_single, self.m_button2) #################################################### self.SetSizer( bSizer6 ) self.Layout() self.Centre( wx.BOTH ) ############################################################################################################################################################################### if self.m_checkBox2.GetValue() == True: self.m_textCtrl19.Enable() else: self.m_textCtrl19.Disable() if self.m_checkBox3.GetValue() == True: self.m_textCtrl21.Enable() else: self.m_textCtrl21.Disable() def on_async_single(self, event): model1Path = modelmngr_execute._getTextCtrl(self.m_textCtrl6.GetValue()) #1 model1Encr = modelmngr_execute._getCheckBox(self.m_checkBox2.GetValue()) #2 model1Key = modelmngr_execute._getTextCtrl(self.m_textCtrl19.GetValue()) #3 print model1Path, model1Encr, model1Key model2Path = modelmngr_execute._getTextCtrl(self.m_textCtrl20.GetValue()) #4 model2Encr = modelmngr_execute._getCheckBox(self.m_checkBox3.GetValue()) #5 model2Key = modelmngr_execute._getTextCtrl(self.m_textCtrl21.GetValue()) #6 print model2Path, model2Encr, model2Key modelType = str(self.m_choice1.GetSelection()) #7 frameworkType = str(self.m_choice3.GetSelection()) #8 jpgPath = modelmngr_execute._getTextCtrl(self.m_textCtrl27.GetValue()) #9 print modelType,frameworkType,jpgPath srcN = str(self.m_textCtrl28.GetValue()) #10 srcC = str(self.m_textCtrl29.GetValue()) #11 srcH = str(self.m_textCtrl30.GetValue()) #12 srcW = str(self.m_textCtrl31.GetValue()) #13 print srcN,srcC,srcH,srcW dstN = str(self.m_textCtrl32.GetValue()) #14 dstC = str(self.m_textCtrl33.GetValue()) #15 dstH = str(self.m_textCtrl34.GetValue()) #16 dstW = str(self.m_textCtrl35.GetValue()) #17 print dstN,dstC,dstH,dstW timeout = str(self.m_textCtrl36.GetValue()) #18 print timeout modelmngr_execute.singleRun_async(model1Path, model1Encr, model1Key, model2Path, model2Encr, model2Key, modelType, frameworkType, jpgPath, srcN, srcC, srcH, srcW, dstN, dstC, dstH, dstW, timeout) event.Skip() def on_model1_check(self, event): cb = event.GetEventObject() if cb.GetValue() == True: self.m_textCtrl19.Enable() self.m_textCtrl19.SetValue("") else: self.m_textCtrl19.Disable() self.m_textCtrl19.SetValue("") event.Skip() def on_model2_check(self, event): cb = event.GetEventObject() if cb.GetValue() == True: self.m_textCtrl21.Enable() self.m_textCtrl21.SetValue("") else: self.m_textCtrl21.Disable() self.m_textCtrl21.SetValue("") event.Skip() def __del__( self ): pass