Application Definition Method and Device, Electronic Device, and Storage Medium
Through the service-based interface framework, the application package matching the hardware resource level is loaded in the intelligent front-end device, which solves the problems of low development efficiency and inventory backlog when switching functions of different product lines, and realizes efficient product development and resource utilization.
Patent Information
- Application Number
- CN202210325128.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-29
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2042-03-29
AI Technical Summary
When smart front-end devices switch functions between different product lines, there are problems of inefficient development and inventory backlog caused by differences in hardware resources.
The service-based interface framework is adopted to determine the target hardware resource occupation level through hardware resource parameters, and the application packages at the corresponding level are loaded based on the preset service-based interface framework to achieve function switching and matching.
A large number of secondary developments are carried out without considering the differences in hardware resources, which improves the product development efficiency of smart front-end devices and effectively reduces the inventory backlog problem.
Smart Images

Figure CN114879954B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technologies, and in particular, to an application definition method and apparatus, an electronic device, and a storage medium. Background Art
[0002] With the booming development of intelligent front-end devices and front-end algorithms, intelligent front-end devices are also showing an increasingly intelligent trend. An intelligent front-end device can correspond to multiple product lines to implement different functions. For example, functions such as target tracking and pedestrian detection can be implemented.
[0003] During the production stage of intelligent front-end devices, corresponding application programs need to be developed for intelligent front-end devices under different product lines to implement corresponding functions. Summary of the Invention
[0004] The present disclosure provides a technical solution for an application definition method and apparatus, an electronic device, and a storage medium.
[0005] According to one aspect of the present disclosure, there is provided an application definition method applied to an intelligent front-end device, including: determining a target hardware resource occupancy level matching the intelligent front-end device based on hardware resource parameters of the intelligent front-end device; loading a program package of a first application program at the target hardware resource occupancy level into the intelligent front-end device based on a preset service interface framework in the intelligent front-end device, where the service interface framework includes a set of interfaces and functional modules for running application programs; when the first application program is run based on the service interface framework, the intelligent front-end device implements the function corresponding to the first application program.
[0006] In a possible implementation, the method further includes: loading a program package of a second application program at the target hardware resource occupancy level into the intelligent front-end device based on the service interface framework; when the second application program is run based on the service interface framework, the intelligent front-end device switches to implement the function corresponding to the second application program.
[0007] In a possible implementation, the service interface framework includes: an algorithm module layer, a function abstraction interface layer, and a service interface layer; the service interface layer is used to provide program packages of application programs at different hardware resource occupancy levels to the intelligent front-end device; the function abstraction interface layer is used to provide multiple function abstraction interfaces for running application programs to the intelligent front-end device; the algorithm module layer is used to provide an algorithm SDK interface and multiple algorithm modules for running application programs to the intelligent front-end device.
[0008] In a possible implementation, the target application includes the first application or the second application, and the service interface layer includes service interfaces; based on the service interface framework, loading the package of the target application at the target hardware resource occupancy level to the intelligent front-end device includes: loading the package of the target application to the intelligent front-end device by invoking the service interface.
[0009] In a possible implementation, the service interface framework includes an input interface and an output interface; the method further includes: inputting a to-be-processed image by invoking the input interface; running the target application by invoking the function abstraction interface corresponding to the target application to perform image processing on the to-be-processed image to obtain an image processing result; asynchronously outputting the image processing result by invoking the output interface.
[0010] In a possible implementation, the target application corresponds to a set of algorithm module handles; the step of running the target application by invoking the function abstraction interface corresponding to the target application to perform image processing on the to-be-processed image to obtain an image processing result includes: determining the data processing logic corresponding to the target application by invoking the function abstraction interface corresponding to the target application; based on the data processing logic, sequentially invoking multiple algorithm modules corresponding to the set of algorithm module handles by using the algorithm SDK interface; and performing image processing on the to-be-processed image by using the multiple algorithm modules to obtain an image processing result.
[0011] In a possible implementation, the service interface layer further includes a database interface; the method further includes: after obtaining the image processing result, storing the image processing result in a corresponding database by invoking the database interface.
[0012] In a possible implementation, the service interface layer further includes a runtime environment interface; the method further includes: performing authorization verification by invoking the runtime environment interface; and loading the service interface framework to the intelligent front-end device when the authorization verification is passed.
[0013] In a possible implementation, the target application includes the first application or the second application; the method further includes: developing a package of the target application that can implement the service function based on the service function selected by the user by using the service interface framework.
[0014] In a possible implementation, an application template library is included in the service interface framework; the program package of the target application that can implement the business function is developed by using the service interface framework based on the user-selected business function, including: determining the data processing logic corresponding to the target application and the set of algorithm module handles corresponding to the target application based on the business function, where the set of algorithm module handles is used to indicate a plurality of algorithm modules required to implement the business function; generating the program package of the target application based on the target application template selected by the user from the application template library, the data processing logic, and the set of algorithm module handles.
[0015] In a possible implementation, a debugging tool is included in the service interface framework; the method further includes: debugging the program package of the target application by calling the debugging tool.
[0016] According to an aspect of the present disclosure, there is provided an application definition device applied to an intelligent front-end device, characterized by including: a determination module configured to determine a target hardware resource occupancy level matching the intelligent front-end device based on the hardware resource parameters of the intelligent front-end device; a loading module configured to load the program package of the first application at the target hardware resource occupancy level into the intelligent front-end device based on a service interface framework preset in the intelligent front-end device, where the service interface framework includes a set of interfaces and functional modules for running applications; a running module configured to, when the first application is run based on the service interface framework, the intelligent front-end device implements the function corresponding to the first application.
[0017] According to an aspect of the present disclosure, there is provided an electronic device, including: a processor; a memory for storing instructions executable by the processor; wherein, the processor is configured to call the instructions stored in the memory to execute the above method.
[0018] According to an aspect of the present disclosure, there is provided a computer-readable storage medium having computer program instructions stored thereon, and when the computer program instructions are executed by a processor, the above method is implemented.
[0019] In an embodiment of the present disclosure, based on the hardware resource parameters of the intelligent front-end device, a target hardware resource occupancy level matching the intelligent front-end device is determined. Then, based on the service interface framework preset in the intelligent front-end device, the program package of the first application under the target hardware resource occupancy level is loaded into the intelligent front-end device. The service interface framework includes a set of interfaces and functional modules for running application programs. When the first application is run based on the service interface framework, the intelligent front-end device realizes the functions corresponding to the first application. In this way, based on the service interface framework, a first application matching the hardware resource parameters of the intelligent front-end device itself can be selected for the intelligent front-end device, so that a large amount of secondary development does not need to be considered due to hardware resource differences, and an intelligent front-end device capable of realizing the functions corresponding to the selected first application can be obtained, improving the product development efficiency of the intelligent front-end device.
[0020] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and do not limit the present disclosure. According to the following detailed description of the exemplary embodiments with reference to the accompanying drawings, other features and aspects of the present disclosure will become clear. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] The accompanying drawings herein are incorporated into the specification and constitute a part of this specification. These drawings show embodiments consistent with the present disclosure and are used together with the specification to illustrate the technical solutions of the present disclosure.
[0022] Figure 1 A schematic diagram showing a service interface framework for application program definition of an intelligent front-end device according to an embodiment of the present disclosure;
[0023] Figure 2 A flowchart showing an application program definition method according to an embodiment of the present disclosure;
[0024] Figure 3 A schematic diagram showing running a target application based on a service interface framework according to an embodiment of the present disclosure;
[0025] Figure 4 A schematic structural diagram showing a service interface framework for application program definition of an intelligent front-end device according to an embodiment of the present disclosure;
[0026] Figure 5 A schematic diagram showing application program development based on a service interface framework according to an embodiment of the present disclosure;
[0027] Figure 6 A schematic diagram showing an algorithm module in a service interface framework according to an embodiment of the present disclosure;
[0028] Figure 7A schematic diagram of an algorithm module group in a service-oriented interface framework according to an embodiment of the present disclosure is shown;
[0029] Figure 8 A schematic diagram of multiplexing an algorithm module group according to an embodiment of the present disclosure is shown;
[0030] Figure 9 A block diagram of an application definition device according to an embodiment of the present disclosure is shown;
[0031] Figure 10 A block diagram of an electronic device according to an embodiment of the present disclosure is shown;
[0032] Figure 11 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. Detailed implementation manners
[0033] Various exemplary embodiments, features, and aspects of the present disclosure will be described in detail below with reference to the accompanying drawings. The same reference numerals in the drawings denote elements having the same or similar functions. Although various aspects of the embodiments are shown in the drawings, the drawings do not have to be drawn to scale unless otherwise specified.
[0034] The special term "exemplary" herein means "serving as an example, an embodiment, or illustrative". Any embodiment described as "exemplary" herein does not have to be construed as superior to or better than other embodiments.
[0035] The term "and / or" herein merely describes an association relationship of associated objects and indicates that three relationships may exist. For example, A and / or B may represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the term "at least one" herein means any one of a plurality or any combination of at least two of a plurality. For example, including at least one of A, B, and C may represent including any one or more elements selected from the set composed of A, B, and C.
[0036] In addition, in order to better illustrate the present disclosure, numerous specific details are given in the following detailed implementation manners. Those skilled in the art should understand that the present disclosure can also be implemented without some specific details. In some instances, methods, means, elements, and circuits well known to those skilled in the art are not described in detail so as to highlight the gist of the present disclosure.
[0037] With the booming development of intelligent front-end devices and front-end algorithms, intelligent front-end devices are also showing an increasingly intelligent trend. Intelligent front-end devices can correspond to multiple product lines to achieve different functions. For example, they can achieve functions such as target tracking and pedestrian detection. While the production manufacturers of intelligent front-end devices are experiencing rapid profit growth, they also face the problem that after the number of product lines increases, inventory for each product line is inevitable, resulting in an overall increase in inventory that erodes profits. In the current context of increasingly tight global supply chains, this contradiction is even more acute, affecting the development speed and scale of the entire intelligent front-end.
[0038] The intelligent front-end devices here can be devices installed at the data collection site or the very front end. For example, intelligent cameras, access control cameras, law enforcement recorders, patrol robots, etc. The present disclosure does not limit the specific form of the intelligent front-end devices.
[0039] Generally, by modularizing the core hardware of intelligent front-end devices, for example, making the hardware required for intelligent front-end devices of different product lines into modules with standardized input and output, new products can be produced by combining the hardware modules for each product line. In this way, by increasing the production scale of general modules and high-turnover control, the costs and inventory of each product line can be reduced to a very low level. However, this method has high requirements for the scale of the enterprise itself, module design capabilities, and management and operation capabilities. It requires dedicated module design and production departments. Moreover, after the hardware is modularized, the upper limit of the capabilities of each product line is restricted by the design of the module itself. Additionally, an architecture similar to that of a mobile phone system can be adopted, regarding each front-end algorithm as an application program (APP) (for example, the application program defines the camera SDC). Different application programs can be downloaded to the intelligent front-end device through an application store to change the functions of the intelligent front-end device, thereby achieving the purpose of switching between different product lines. However, in order to be able to expect to install multiple application programs, there is resource redundancy in the hardware design of the intelligent front-end device, resulting in no cost advantage. Moreover, for special intelligent front-end devices (such as security cameras), the cost of installing the first application program is huge, and the functions often do not change after installation. Therefore, it is difficult for other downloadable new application programs to play their advantages.
[0040] In an embodiment of the present disclosure, a service-oriented interface framework is provided. The service-oriented interface framework includes a set of interfaces and functional modules for running application programs. Figure 1 Schematic diagram showing a service-oriented interface framework for defining application programs for intelligent front-end devices according to an embodiment of the present disclosure.
[0041] As Figure 1As shown, the service-oriented interface framework includes an "algorithm layer - function abstraction interface layer - service-oriented interface layer". The algorithm layer includes multiple algorithm modules corresponding to different processors. For example, a face detection algorithm module and a license plate recognition algorithm module corresponding to the A processor; the function abstraction interface layer includes multiple abstracted function interfaces, such as a detection interface, a quality interface, an attribute interface, etc.
[0042] The service-oriented interface layer includes multiple application program identifiers available for selection by intelligent front-end devices, and all application program identifiers are divided into multiple hardware resource occupancy levels according to the hardware resource occupancy of the application programs. As Figure 1 shown, the service-oriented interface layer includes three hardware resource occupancy levels L1, L2, and L3, and each hardware resource occupancy level includes multiple application program identifiers available for selection by intelligent front-end devices. The program packages of the applications indicated by the application program identifiers are stored in the server.
[0043] Among them, the hardware resource occupancy of the application indicated by the application program identifier at the hardware resource occupancy level L1 is less than that of the application indicated by the application program identifier at the hardware resource occupancy level L2; the hardware resource occupancy of the application indicated by the application program identifier at the hardware resource occupancy level L2 is less than that of the application indicated by the application program identifier at the hardware resource occupancy level L3. The hardware resources can include memory, computing power, and can also include other forms of hardware resources, and the present disclosure does not make specific limitations on this.
[0044] The intelligent front-end device can be applicable to platforms such as Linux, Android, Windows, etc., and the present disclosure does not make specific limitations on this.
[0045] In the stage of pre-production hardware planning for the intelligent front-end device, the hardware resource occupancy can be determined in advance based on the service-oriented interface layer in the service-oriented interface framework, so that there is no need to perform resource redundancy design on the intelligent front-end device, thereby ensuring the cost competitive advantage of the intelligent front-end device.
[0046] For example, in the case of needing to produce an intelligent front-end device with a specific function, in the stage of pre-production hardware planning for the intelligent front-end device, based on the service-oriented interface layer in the service-oriented interface framework, determine the hardware resource occupancy level where the application program identifier corresponding to the application program that can implement the specific function is located, and then determine the hardware resource occupancy of the intelligent front-end device according to the hardware resource occupancy corresponding to the hardware resource occupancy level.
[0047] After the intelligent front-end device is produced, integrate Figure 1 the service-oriented interface framework shown in the intelligent front-end device, and then the intelligent front-end device can be defined for application programs based on this service-oriented interface framework.
[0048] Based on the hardware resource parameters of the intelligent front-end device, the target hardware resource occupancy level matching the intelligent front-end device can be determined. Then, based on the service interface framework preset in the intelligent front-end device, the program package of the target application at the target hardware resource occupancy level is loaded into the intelligent front-end device. When the target application is run based on the service interface framework, the intelligent front-end device realizes the functions corresponding to the target application.
[0049] In this way, based on the service interface framework, a target application matching the hardware resource parameters of the intelligent front-end device itself can be selected for the intelligent front-end device, so that a large amount of secondary development does not need to be considered due to hardware resource differences, and an intelligent front-end device capable of realizing the functions corresponding to the selected target application can be obtained, improving the product development efficiency of the intelligent front-end device.
[0050] The method for defining an application for an intelligent front-end device in the embodiments of the present disclosure will be described in detail below.
[0051] Figure 2 The flowchart showing the application definition method according to the embodiments of the present disclosure is shown. This method is applied to an intelligent front-end device. As Figure 2 shown, the method may include:
[0052] In step S21, based on the hardware resource parameters of the intelligent front-end device, the target hardware resource occupancy level matching the intelligent front-end device is determined.
[0053] The intelligent front-end device here may be a device installed at the data collection site or the very front end. For example, intelligent cameras, access control cameras, law enforcement recorders, patrol robots, etc. The present disclosure does not limit the specific form of the intelligent front-end device.
[0054] The hardware resource parameters of the intelligent front-end device may include the memory size, computing power size, etc. The present disclosure does not make specific limitations thereto.
[0055] Based on the hardware resource parameters of the intelligent front-end device and the service interface layer of the service interface framework, the target hardware resource occupancy level matching the intelligent front-end device is determined.
[0056] Taking the above Figure 1 as an example, the hardware resource parameter is the memory size. The memory size corresponding to the hardware resource occupancy level L1 in the service interface layer is 56 - 256 MB, the memory size corresponding to the hardware resource occupancy level L2 is 256 - 526 MB, and the memory size corresponding to the hardware resource occupancy level L3 is 526 - 1024 MB. When the memory size of the intelligent front-end device is 128 MB, the target hardware resource occupancy level matching the intelligent front-end device is L1.
[0057] In step S22, based on the service interface framework preset in the intelligent front-end device, the program package of the first application under the target hardware resource occupancy level is loaded into the intelligent front-end device, where the service interface framework includes a set of interfaces and functional modules for running applications.
[0058] After determining the target hardware resource occupancy level that matches the intelligent front-end device, the first application can be selected under the target hardware resource occupancy level based on the service interface framework pre-integrated in the intelligent front-end device, and then the program package of the first application is downloaded from the server to the intelligent front-end device. The number of the first applications selected under the target hardware resource occupancy level can be one or multiple, and the present disclosure does not make specific limitations thereto.
[0059] Taking the above Figure 1 as an example, when it is determined that the target hardware resource occupancy level that matches the intelligent front-end device is L2, at least one first application can be selected under the target hardware resource occupancy level L2, and then the program packages of the at least one selected first application are downloaded from the server to the intelligent front-end device.
[0060] In one example, after the program package of the first application is downloaded from the server to the intelligent front-end device, it can be stored locally in the intelligent front-end device. For example, it is stored in the hard disk of the intelligent front-end device, and when the first application needs to be run, the program package of the first application is read from the hard disk.
[0061] In one example, when the intelligent front-end device needs to run the first application, the program package of the first application is downloaded from the server in real time.
[0062] In step S23, when the first application is run based on the service interface framework, the intelligent front-end device implements the functions corresponding to the first application.
[0063] Since the service interface framework includes a set of interfaces and functional modules for running applications, therefore, running the first application based on the service interface framework can enable the intelligent front-end device to implement the functions corresponding to the first application. The detailed description of running the first application based on the service interface framework will be given in combination with the possible implementation manners of the present disclosure later, and will not be elaborated here.
[0064] In the embodiments of the present disclosure, based on the service interface framework, the first application that matches the hardware resource parameters of the intelligent front-end device itself can be selected for the intelligent front-end device, so that a large amount of secondary development does not need to be considered due to hardware resource differences, and the intelligent front-end device that can implement the functions corresponding to the selected first application can be obtained, improving the product development efficiency of the intelligent front-end device.
[0065] In a possible implementation, the method further includes: loading the package of the second application at the target hardware resource occupancy level to the intelligent front-end device based on the service-oriented interface framework; when the second application runs based on the service-oriented interface framework, the intelligent front-end device switches to implement the functions corresponding to the second application.
[0066] When it is necessary to switch the product functions of the intelligent front-end device, the package of the second application at the target hardware resource occupancy level can be loaded to the intelligent front-end device based on the service-oriented interface framework, so that when the second application runs based on the service-oriented interface framework, the intelligent front-end device switches to implement the functions corresponding to the second application.
[0067] Compared with the method of fixing the product functions of the intelligent front-end device or fragmenting the hardware function modules in the related art, the embodiments of the present disclosure can switch different product functions of the intelligent front-end device according to the actual situation before the intelligent front-end device is sold out of the factory, thereby effectively reducing the problem of inventory backlog.
[0068] In a possible implementation, the service-oriented interface framework includes: an algorithm layer, a function abstraction interface layer, and a service-oriented interface layer; the service-oriented interface layer is used to provide applications at different hardware resource occupancy levels to the intelligent front-end device; the function abstraction interface layer is used to provide multiple function abstraction interfaces for running the application to the intelligent front-end device; the algorithm module layer is used to provide the algorithm SDK interface and multiple algorithm modules for running the application to the intelligent front-end device.
[0069] Taking the above Figure 1 as an example, the service-oriented interface layer can provide applications at three hardware resource occupancy levels to the intelligent front-end device; the function abstraction interface layer can provide function interfaces such as a detection interface, a quality interface, and an attribute interface for running the application to the intelligent front-end device; the algorithm module layer can provide the algorithm SDK interface for running the application and multiple algorithm modules corresponding to different processors to the intelligent front-end device.
[0070] In a possible implementation, the target application includes the first application or the second application, and a service-oriented interface is included in the service-oriented interface layer; loading the package of the target application at the target hardware resource occupancy level to the intelligent front-end device based on the service-oriented interface framework includes: loading the package of the target application to the intelligent front-end device by calling the service-oriented interface.
[0071] The service interface layer includes a service interface (Servive API). A user (the manufacturer of the intelligent front-end device) can load the package of the target application program that the user hopes the intelligent front-end device to run to the intelligent front-end device by calling the service interface. For example, by calling the service interface and inputting the identifier of the target application program in the service interface, the package of the target application program can be loaded to the intelligent front-end device.
[0072] In a possible implementation, the service interface framework includes an input interface and an output interface; the method further includes: inputting the image to be processed by calling the input interface; running the target application program by calling the function abstraction interface corresponding to the target application program, performing image processing on the image to be processed, and obtaining an image processing result; asynchronously outputting the image processing result by calling the output interface.
[0073] When the service interface framework adopts an input / output (I / O) mode and sets the input interface and the output interface as an asynchronous structure, a user can input one or more images to be processed by calling the input interface, and then run the target application program by calling the corresponding function abstraction interface, perform image processing on the one or more images to be processed, obtain an image processing result, and asynchronously output the image processing result of each image to be processed by calling the output interface.
[0074] Compared with the related technology in which the input interface and the output interface are set as a synchronous structure, that is, when inputting an image to be processed by calling the input interface, the input interface can be called again to input the next image to be processed only after the output interface outputs the image processing result of the image to be processed, the method of setting the input interface and the output interface as an asynchronous structure in the present disclosure can effectively improve the image processing efficiency of multiple images to be processed.
[0075] Figure 3 The figure shows a schematic diagram of running a target application program based on a service interface framework according to an embodiment of the present disclosure. As Figure 3 shown, the image to be processed is input by calling the input interface (Frame In); then the target application program is run by calling the corresponding function abstraction interface to implement image processing on the image to be processed and obtain an image processing result; finally, the image processing result is asynchronously output by calling the output interface (Result Out).
[0076] In a possible implementation, the target application corresponds to a set of algorithm module handles; by calling the function abstraction interface corresponding to the application, the target application is run to perform image processing on the image to be processed, and an image processing result is obtained, including: by calling the function abstraction interface corresponding to the target application, the data processing logic corresponding to the target application is determined; based on the data processing logic, using the algorithm SDK interface, multiple algorithm modules corresponding to the set of algorithm module handles are sequentially called; using the multiple algorithm modules, image processing is performed on the image to be processed to obtain an image processing result.
[0077] The program package of the target application includes its corresponding data processing logic and the set of algorithm module handles. The set of algorithm module handles is used to indicate multiple algorithm modules required when running the target application. The data processing logic can indicate the call order of the multiple algorithm modules. Therefore, based on the data processing logic corresponding to the target application, using the algorithm SDK interface, multiple algorithm modules corresponding to the set of algorithm module handles are sequentially called, so that image processing can be performed on the image to be processed using the multiple algorithm modules to obtain an image processing result.
[0078] Taking the above Figure 3 as an example, as Figure 3 shown, the target application is a license plate detection application (carplate). By calling the detection interface corresponding to the license plate detection application, the data processing logic of the license plate detection application is determined. Based on this data processing logic, using the algorithm SDK interface, the tracking algorithm module (track), quality detection algorithm module (quality), attribute algorithm module (attribute), etc. indicated by the module handle set are sequentially called.
[0079] Specifically, the module to be processed is input into the tracking algorithm module, and the output result of the tracking algorithm module is input into the quality detection module. Furthermore, the output result of the quality detection module is input into the attribute algorithm module until the image processing result is finally output. That is to say, the data processing logic can connect the input and output of multiple algorithm modules to finally obtain an image processing result.
[0080] Based on the algorithm SDK interface in the algorithm layer, the differences between different hardware platforms can be masked, and the call of different algorithm modules can be effectively implemented.
[0081] Taking the above Figure 3 as an example, as Figure 3 shown, the service interface framework also includes an initialization interface (API Init) and an anti-initialization interface (API DeInit) for implementing interface initialization and anti-initialization. Among them, the initialization interface and the anti-initialization interface can adopt the general initialization interface and anti-initialization interface in related technologies, and the present disclosure does not make specific limitations on this.
[0082] As Figure 3 shown, the service - oriented interface framework further includes a parameter configuration interface (Param Set) and a parameter acquisition interface (Param Get) for dynamically configuring the parameters required for the operation of the application program. For example, dynamically configuring the quality screening parameters required for the operation of the license plate detection application program.
[0083] In a possible implementation, the service - oriented interface layer further includes a database interface; the method further includes: after obtaining the image processing result, storing the image processing result in the corresponding database by calling the database interface.
[0084] The service - oriented interface layer may further include a database interface to implement storing the image processing result in the corresponding database by calling the database interface.
[0085] Figure 4 A schematic structural diagram of a service - oriented interface framework for defining an application program for an intelligent front - end device according to an embodiment of the present disclosure is shown. As Figure 4 shown, in addition to the service - oriented interface (Servive API) for loading the application program described above, the service - oriented interface layer further includes a database interface (DB API). The database interface may be an independent portrait database interface, providing corresponding database functions according to actual requirements.
[0086] Based on the database interface, modules that can provide database functions such as the Figure 4 shown database manager (DB Manager), feature database (Feature DB), feature extractor (Extracter), etc. can be called.
[0087] In a possible implementation, the service - oriented interface layer further includes a runtime environment interface; the method further includes: performing authorization verification by calling the runtime environment interface; and loading the service - oriented interface framework into the intelligent front - end device when the authorization verification is passed.
[0088] To prevent the service - oriented interface framework from being illegally tampered with or misused, the service - oriented interface layer further includes a runtime environment interface to implement authorization verification of the service - oriented interface framework and integrate the service - oriented interface framework into the intelligent front - end device when the authorization verification is passed.
[0089] Taking the above - mentioned Figure 4 as an example, the service - oriented interface layer further includes an environment interface (Env API). By calling the environment interface, an authorization text file (License) is loaded for authorization verification.
[0090] In a possible implementation, the target application includes the first application or the second application; the method further includes: based on the business function selected by the user, using the service interface framework, developing a package of the target application that can implement the business function.
[0091] Based on the service interface framework, a new target application that is not in the service interface layer of the service interface framework can also be developed to enrich the applications that the service interface framework can provide for the intelligent front-end device to select.
[0092] In a possible implementation, the service interface framework includes an application template library; based on the business function selected by the user, using the service interface framework, developing a package of the target application that can implement the business function includes: based on the business function, determining the data processing logic corresponding to the target application and the set of algorithm module handles corresponding to the target application, where the set of algorithm module handles is used to indicate multiple algorithm modules required to implement the business function; generating a package of the target application based on the target application template selected by the user from the application template library, the data processing logic, and the set of algorithm module handles.
[0093] Figure 5 The figure shows a schematic diagram of application development based on the service interface framework according to an embodiment of the present disclosure. As Figure 5 shown, the service interface framework provides rich basic function support, for example, function interfaces, algorithm module calls, debugging tool support, application template libraries, and other rich and friendly development environments (as Figure 5 shown in the dashed box in the figure), so that developers only need to focus on the development of the requirement logic of the business function (such as Figure 5 the business logic business logic and data processing logic alg pipeline in the figure), thereby effectively improving the application development efficiency.
[0094] Based on the business logic and data processing logic, the set of algorithm module handles corresponding to the target application can be determined, and then based on the target application template selected by the user from the application template library, the data processing logic, and the set of algorithm module handles, a package of the target application can be quickly generated.
[0095] In addition, based on the rich basic function support provided by the service interface framework, it is convenient to quickly develop long-tail applications with low application frequencies. Moreover, based on the service interface framework, parallel development by different developers can be realized, effectively improving the development efficiency.
[0096] The program package of the target application developed based on the service interface framework can have an independent version number. After developing a new target application, the identifier of the newly developed target application can be added to the service interface layer of the service interface framework so that it can be applied by intelligent front-end devices subsequently.
[0097] In a possible implementation, a debugging tool is included in the service interface framework; the method further includes: debugging the program package of the target application by invoking the debugging tool.
[0098] Based on the debugging tool in the service interface framework, the program package of the target application can also be debugged to improve the performance of the program package of the target application.
[0099] In an example, each algorithm module in the service interface framework is active, that is, it can perform data processing on the input data to be processed in real time and output the data processing result.
[0100] Figure 6 Shows a schematic diagram of an algorithm module in the service interface framework according to an embodiment of the present disclosure. As Figure 6 shown, the algorithm module performs an input data structure conversion (input wrapper) on the input data to be processed and adds the converted data to be processed to the input queue (input queue).
[0101] Based on the data processing thread (process thread), the data to be processed in the input queue is processed to obtain a data processing result.
[0102] Perform an output data structure conversion (output wrapper) on the data processing result, add the converted image processing result to the output queue (output queue), and then sequentially output the image data processing result in the output queue (output).
[0103] For algorithm modules of the same type, they can be dynamically merged into an algorithm module group according to the actual situation, so that by invoking one algorithm module group, the invocation of multiple algorithm modules can be achieved.
[0104] Figure 7 Shows a schematic diagram of an algorithm module group in the service interface framework according to an embodiment of the present disclosure. As Figure 7As shown, multiple attribute algorithm modules (attribute) are combined into one attribute algorithm module group (Module Group(“attribute”)), and multiple feature algorithm modules (feature) are combined into one feature algorithm module group (ModuleGroup(“feature”)).
[0105] Inside an algorithm module group, a scheduler within the algorithm module group schedules multiple algorithm modules within the algorithm module group.
[0106] Using the algorithm module group, multiplexing algorithm functions can be achieved, reducing resource consumption caused by redundant algorithm modules. For example, in the case of multiple applications with the same function running, a group of algorithm module groups can be shared among multiple applications.
[0107] Figure 8 A schematic diagram showing the multiplexing of an algorithm module group according to an embodiment of the present disclosure is shown. As Figure 8 shown, for 4 face recognition applications, a group of feature algorithm module groups can be shared, that is, for these 4 face recognition applications, two feature algorithm modules in this group of feature algorithm module groups can be shared.
[0108] In an embodiment of the present disclosure, a service - oriented interface framework is provided. The service - oriented interface framework includes a set of interfaces and functional modules for running applications. The service - oriented interface framework is integrated into an intelligent front - end device. Then, based on the service - oriented interface framework, application programs can be defined for the intelligent front - end device. Based on the hardware resource parameters of the intelligent front - end device, a target hardware resource occupancy level matching the intelligent front - end device can be determined. Then, based on the service - oriented interface framework preset in the intelligent front - end device, the program package of the first application program at the target hardware resource occupancy level is loaded into the intelligent front - end device. When the first application program is run based on the service - oriented interface framework, the intelligent front - end device realizes the functions corresponding to the first application program.
[0109] In this way, based on the service - oriented interface framework, a first application program matching the hardware resource parameters of the intelligent front - end device itself can be selected for the intelligent front - end device, so that a large amount of secondary development does not need to be considered due to hardware resource differences, and an intelligent front - end device capable of realizing the functions corresponding to the selected first application program can be obtained, improving the product development efficiency of the intelligent front - end device.
[0110] Moreover, in the case where product function switching of the intelligent front-end device is required, the program package of the second application under the target hardware resource occupancy level can be loaded into the intelligent front-end device based on the service interface framework, so that when the second application is run based on the service interface framework, the intelligent front-end device switches to implement the function corresponding to the second application, so that different product functions of the intelligent front-end device can be switched according to the actual situation before the intelligent front-end device is sold out of the factory, thus effectively reducing the problem of inventory backlog.
[0111] It can be understood that the above-mentioned method embodiments mentioned in the present disclosure can be combined with each other to form a combined embodiment without violating the principle logic. For the sake of brevity, the present disclosure will not elaborate. Those skilled in the art can understand that in the above-mentioned methods of the specific implementation manner, the specific execution order of each step should be determined according to its function and possible internal logic.
[0112] In addition, the present disclosure also provides an application program definition device, an electronic device, a computer-readable storage medium, and a program, all of which can be used to implement any application program definition method provided by the present disclosure. The corresponding technical solutions and descriptions are referred to the corresponding records in the method part and will not be elaborated here.
[0113] Figure 9 The block diagram of the application program definition device according to an embodiment of the present disclosure is shown. The device is applied to an intelligent front-end device, such as Figure 9 As shown, the device 90 includes:
[0114] A determination module 91, configured to determine a target hardware resource occupancy level that matches the intelligent front-end device based on the hardware resource parameters of the intelligent front-end device;
[0115] A loading module 92, configured to load the program package of the first application under the target hardware resource occupancy level into the intelligent front-end device based on a service interface framework preset in the intelligent front-end device, where the service interface framework includes a set of interfaces and function modules for running application programs;
[0116] An operation module 93, configured to enable the intelligent front-end device to implement the function corresponding to the first application when the first application is run based on the service interface framework.
[0117] In a possible implementation manner, the loading module 92 is further configured to load the program package of the second application under the target hardware resource occupancy level into the intelligent front-end device based on the service interface framework;
[0118] The operation module 93 is further configured to enable the intelligent front-end device to switch to implement the function corresponding to the second application when the second application is run based on the service interface framework.
[0119] In a possible implementation, the service interface framework includes: an algorithm layer, a function abstraction interface layer, and a service interface layer;
[0120] The service interface layer is used to provide application programs at different levels of hardware resource occupancy to the intelligent front-end device;
[0121] The function abstraction interface layer is used to provide multiple function abstraction interfaces for running application programs to the intelligent front-end device;
[0122] The algorithm module layer is used to provide the algorithm SDK interface and multiple algorithm modules for running application programs to the intelligent front-end device.
[0123] In a possible implementation, the target application program includes a first application program or a second application program, and the service interface layer includes a service interface;
[0124] The loading module 92 is specifically used for:
[0125] By calling the service interface, load the program package of the target application program into the intelligent front-end device.
[0126] In a possible implementation, the service interface framework includes an input interface and an output interface;
[0127] The device 90 further includes:
[0128] The input module is used to input the image to be processed by calling the input interface;
[0129] The image processing module is used to run the target application program by calling the function abstraction interface corresponding to the target application program, perform image processing on the image to be processed, and obtain an image processing result;
[0130] The output module is used to asynchronously output the image processing result by calling the output interface.
[0131] In a possible implementation, the target application program corresponds to a set of algorithm module handles;
[0132] The image processing module is specifically used for:
[0133] By calling the function abstraction interface corresponding to the target application program, determine the data processing logic corresponding to the target application program;
[0134] Based on the data processing logic, use the algorithm SDK interface to sequentially call multiple algorithm modules corresponding to the set of algorithm module handles;
[0135] Use multiple algorithm modules to perform image processing on the image to be processed and obtain an image processing result.
[0136] In a possible implementation, the service interface layer further includes a database interface;
[0137] The device 90 further includes:
[0138] A storage module, configured to store the image processing result in a corresponding database by calling the database interface after obtaining the image processing result.
[0139] In a possible implementation, the service interface layer further includes a runtime environment interface;
[0140] The device 90 further includes:
[0141] An authorization verification module, configured to perform authorization verification by calling the runtime environment interface;
[0142] A loading module 92, configured to load the service interface framework into the intelligent front-end device when the authorization verification is passed.
[0143] In a possible implementation, the target application includes a first application or a second application;
[0144] The device 90 further includes:
[0145] A development module, configured to develop a program package of a target application capable of implementing the business function based on the business function selected by the user by using the service interface framework.
[0146] In a possible implementation, the service interface framework includes an application template library;
[0147] The development module is specifically configured to:
[0148] Determine the data processing logic corresponding to the target application and the algorithm module handle set corresponding to the target application based on the business function, where the algorithm module handle set is used to indicate a plurality of algorithm modules required to implement the business function;
[0149] Generate a program package of the target application based on the target application template selected by the user from the application template library, the data processing logic, and the algorithm module handle set.
[0150] In a possible implementation, the service interface framework includes a debugging tool;
[0151] The device 90 further includes:
[0152] A debugging module, configured to debug the program package of the target application by calling the debugging tool.
[0153] This method has a specific technical association with the internal structure of a computer system and can solve the technical problems of how to improve the hardware operation efficiency or execution effect (including reducing the data storage volume, reducing the data transmission volume, increasing the hardware processing speed, etc.), thereby obtaining the technical effect of improving the internal performance of the computer system in line with natural laws.
[0154] In some embodiments, the functions or modules included in the device provided by the embodiments of the present disclosure can be used to execute the methods described in the above method embodiments. The specific implementation can refer to the description of the above method embodiments. For the sake of brevity, it will not be elaborated here.
[0155] The embodiments of the present disclosure also propose a computer-readable storage medium, on which computer program instructions are stored. When the computer program instructions are executed by a processor, the above methods are implemented. The computer-readable storage medium can be a volatile or non-volatile computer-readable storage medium.
[0156] The embodiments of the present disclosure also propose an electronic device, including: a processor; a memory for storing instructions executable by the processor; wherein, the processor is configured to call the instructions stored in the memory to execute the above methods.
[0157] The embodiments of the present disclosure also provide a computer program product, including computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code. When the computer-readable code runs in the processor of an electronic device, the processor in the electronic device executes the above methods.
[0158] The electronic device can be provided as a terminal, a server or other forms of devices.
[0159] Figure 10 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. Referring to Figure 10 , the electronic device 1000 can be a terminal device such as a user equipment (UE), a mobile device, a user terminal, a terminal, a cellular phone, a cordless phone, a personal digital assistant (PDA), a handheld device, a computing device, a vehicle-mounted device, a wearable device, etc.
[0160] Referring to Figure 10 , the electronic device 1000 can include one or more of the following components: a processing component 1002, a memory 1004, a power supply component 1006, a multimedia component 1008, an audio component 1010, an input / output (I / O) interface 1012, a sensor component 1014, and a communication component 1016.
[0161] The processing component 1002 generally controls the overall operation of the electronic device 1000, such as operations associated with display, telephone calls, data communication, camera operations, and recording operations. The processing component 1002 may include one or more processors 1020 to execute instructions to complete all or part of the steps of the above-described methods. In addition, the processing component 1002 may include one or more modules to facilitate the interaction between the processing component 1002 and other components. For example, the processing component 1002 may include a multimedia module to facilitate the interaction between the multimedia component 1008 and the processing component 1002.
[0162] The memory 1004 is configured to store various types of data to support the operation of the electronic device 1000. Examples of such data include instructions for any application or method operating on the electronic device 1000, contact data, phone book data, messages, pictures, videos, etc. The memory 1004 may be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, a magnetic disk, or an optical disk.
[0163] The power component 1006 provides power to various components of the electronic device 1000. The power component 1006 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the electronic device 1000.
[0164] The multimedia component 1008 includes a screen that provides an output interface between the electronic device 1000 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe actions but also detect the duration and pressure associated with the touch or swipe operation. In some embodiments, the multimedia component 1008 includes a front camera and / or a rear camera. When the electronic device 1000 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each of the front camera and the rear camera may be a fixed optical lens system or have a focal length and optical zoom capabilities.
[0165] The audio component 1010 is configured to output and / or input audio signals. For example, the audio component 1010 includes a microphone (MIC), which is configured to receive external audio signals when the electronic device 1000 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals can be further stored in the memory 1004 or transmitted via the communication component 1016. In some embodiments, the audio component 1010 further includes a speaker for outputting audio signals.
[0166] The I / O interface 1012 provides an interface between the processing component 1002 and a peripheral interface module, which may be a keyboard, a click wheel, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a power button, and a lock button.
[0167] The sensor component 1014 includes one or more sensors for providing an assessment of the status of various aspects of the electronic device 1000. For example, the sensor component 1014 can detect the on / off state of the electronic device 1000, the relative positioning of components, such as the display and keypad of the electronic device 1000. The sensor component 1014 can also detect a change in the position of the electronic device 1000 or a component of the electronic device 1000, the presence or absence of user contact with the electronic device 1000, the orientation or acceleration / deceleration of the electronic device 1000, and the temperature change of the electronic device 1000. The sensor component 1014 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor component 1014 can also include a light sensor, such as a complementary metal oxide semiconductor (CMOS) or a charge coupled device (CCD) image sensor, for use in imaging applications. In some embodiments, the sensor component 1014 can further include an acceleration sensor, a gyro sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0168] The communication component 1016 is configured to facilitate communication between the electronic device 1000 and other devices in a wired or wireless manner. The electronic device 1000 can access communication standard-based wireless networks, such as Wireless Local Area Network (Wi-Fi), 2nd-generation (2G) mobile communication technology, 3rd-generation (3G) mobile communication technology, 4th-generation (4G) mobile communication technology, Long-Term Evolution (LTE) of Universal Mobile Telecommunications System, 5th-generation (5G) mobile communication technology, or a combination thereof. In an exemplary embodiment, the communication component 1016 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 1016 further includes a Near Field Communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on Radio Frequency Identification (RFID) technology, Infrared Data Association (IrDA) technology, Ultra-Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0169] In an exemplary embodiment, the electronic device 1000 can be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components for performing the above method.
[0170] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as a memory 1004 including computer program instructions, and the computer program instructions can be executed by a processor 1020 of the electronic device 1000 to complete the above method.
[0171] The present disclosure relates to the field of augmented reality. By acquiring image information of a target object in a real environment, relevant features, states, and attributes of the target object are detected or recognized by means of various vision-related algorithms, so as to obtain an AR effect combining virtual and real that matches a specific application. Exemplarily, the target object can involve the face, limbs, gestures, actions, etc. related to the human body, or identification markers, landmarks related to objects, or sand tables, display areas, or display items related to venues or places. The vision-related algorithms can involve visual positioning, Simultaneous Localization and Mapping (SLAM), three-dimensional reconstruction, image registration, background segmentation, key point extraction and tracking of an object, pose or depth detection of an object, etc. The specific application can not only involve interaction scenarios related to real scenes or items, such as guided tours, navigation, explanations, reconstructions, virtual effect overlay displays, etc., but also involve special effect processing related to people, such as makeup beautification, limb beautification, special effect displays, virtual model displays, etc. The relevant features, states, and attributes of the target object can be detected or recognized by means of a convolutional neural network. The convolutional neural network is a network model obtained by training a model based on a deep learning framework.
[0172] Figure 11 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. Referring to Figure 11 , the electronic device 1900 may be provided as a server or a terminal device. Referring to Figure 11 , the electronic device 1900 includes a processing component 1922, which further includes one or more processors, and memory resources represented by a memory 1932 for storing instructions executable by the processing component 1922, such as application programs. The application programs stored in the memory 1932 may include one or more modules each corresponding to a set of instructions. In addition, the processing component 1922 is configured to execute instructions to perform the above method.
[0173] The electronic device 1900 may further include a power component 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input / output (I / O) interface 1958. The electronic device 1900 may operate based on an operating system stored in the memory 1932, such as Microsoft Server Operating System (Windows Server TM ), the graphical user interface-based operating system launched by Apple Inc. (Mac OS X TM ), the multi-user and multi-process computer operating system (Unix TM ), the free and open-source Unix-like operating system (Linux TM ), the open-source Unix-like operating system (FreeBSD TM ) or the like.
[0174] In an exemplary embodiment, a non-volatile computer-readable storage medium is also provided, such as the memory 1932 including computer program instructions, and the above computer program instructions can be executed by the processing component 1922 of the electronic device 1900 to complete the above method.
[0175] The present disclosure may be a system, a method, and / or a computer program product. The computer program product may include a computer-readable storage medium having thereon computer-readable program instructions for causing a processor to implement various aspects of the present disclosure.
[0176] A computer-readable storage medium can be a tangible device that can hold and store instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, (but is not limited to) an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as a punched card or raised structures in grooves having instructions stored thereon, and any suitable combination of the foregoing. The computer-readable storage medium as used herein is not construed as being a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., an optical pulse through an optical fiber cable), or an electrical signal transmitted through a wire.
[0177] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to various computing / processing devices, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network may include a copper transmission cable, an optical fiber transmission, a wireless transmission, a router, a firewall, a switch, a gateway computer, and / or an edge server. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in each computing / processing device.
[0178] The computer program instructions for performing the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine - related instructions, microcode, firmware instructions, state - setting data, or source code or object code written in any combination of one or more programming languages, including object - oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer - readable program instructions may be executed entirely on the user's computer, partially on the user's computer, executed as a stand - alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or it may be connected to an external computer (e.g., via an Internet service provider through the Internet). In some embodiments, by using the state information of the computer - readable program instructions to customize an electronic circuit, such as a programmable logic circuit, a field - programmable gate array (FPGA), or a programmable logic array (PLA), the electronic circuit can execute the computer - readable program instructions to implement various aspects of this disclosure.
[0179] Aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer - readable program instructions.
[0180] These computer - readable program instructions can be provided to a processor of a general - purpose computer, a special - purpose computer, or other programmable data - processing apparatus to produce a machine, such that the instructions, when executed by the processor of the computer or other programmable data - processing apparatus, create a means for implementing the functions / acts specified in one or more blocks of the flowchart and / or block diagram. These computer - readable program instructions can also be stored in a computer - readable storage medium, which causes a computer, a programmable data - processing apparatus, and / or other devices to operate in a particular manner. Thus, the computer - readable medium storing the instructions includes a manufacture that includes instructions for implementing various aspects of the functions / acts specified in one or more blocks of the flowchart and / or block diagram.
[0181] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices, causing a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other devices to generate a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other devices implement the functions / actions specified in one or more boxes of the flowchart and / or block diagram.
[0182] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flowchart or block diagram may represent a module, a segment of a program, or a part of an instruction, and the module, segment of a program, or part of an instruction contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the boxes may occur in a different order than noted in the figures. For example, two consecutive boxes may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each box in the block diagrams and / or flowcharts, and combinations of boxes in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or actions, or by a combination of dedicated hardware and computer instructions.
[0183] The computer program product may be implemented specifically by hardware, software, or a combination thereof. In an alternative embodiment, the computer program product is specifically embodied as a computer storage medium. In another alternative embodiment, the computer program product is specifically embodied as a software product, such as a Software Development Kit (SDK), etc.
[0184] The above descriptions of the various embodiments tend to emphasize the differences between the various embodiments. Their similarities or likenesses can be referred to each other. For the sake of brevity, they will not be elaborated herein.
[0185] Those skilled in the art can understand that in the above methods of the specific embodiments, the writing order of each step does not mean a strict execution order that constitutes any limitation on the implementation process. The specific execution order of each step should be determined by its function and possible internal logic.
[0186] If the technical solution of this application involves personal information, before the product applying the technical solution of this application processes personal information, it has clearly informed the personal information processing rules and obtained the independent consent of the individual. If the technical solution of this application involves sensitive personal information, before the product applying the technical solution of this application processes sensitive personal information, it has obtained the individual's separate consent and at the same time meets the requirements of "express consent". For example, at personal information collection devices such as cameras, clear and prominent signs are set to inform that the personal information collection scope has been entered and personal information will be collected. If an individual voluntarily enters the collection scope, it is regarded as consenting to the collection of their personal information; or on the device for personal information processing, when the personal information processing rules are informed by obvious signs / information, personal authorization is obtained through pop-up messages or by asking the individual to upload their personal information by themselves, etc.; among them, the personal information processing rules may include information such as the personal information processor, the purpose of personal information processing, the processing method, and the types of personal information processed.
[0187] The embodiments of the present disclosure have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations are obvious to those of ordinary skill in the art in the technical field without departing from the scope and spirit of the described embodiments. The selection of the terms used herein is intended to best explain the principles of the embodiments, the practical application, or the improvement of the technology in the market, or to enable other ordinary skill in the art in the technical field to understand the embodiments disclosed herein.
Claims
1. An application definition method, which is applied to an intelligent front-end device, characterized in that, it includes: Based on the hardware resource parameters of the intelligent front-end device, determine the target hardware resource occupancy level matching the intelligent front-end device; Based on the service-oriented interface framework preset in the intelligent front-end device, load the program package of the first application under the target hardware resource occupancy level into the intelligent front-end device, wherein the service-oriented interface framework includes a set of interfaces and function modules for running applications; When the first application is run based on the service-oriented interface framework, the intelligent front-end device realizes the functions corresponding to the first application; Wherein, the service-oriented interface framework includes: a service-oriented interface layer, which is used to provide applications under different hardware resource occupancy levels for the intelligent front-end device; The service-oriented interface layer includes service-oriented interfaces, and the target application includes the first application; Based on the service-oriented interface framework, loading the program package of the target application under the target hardware resource occupancy level into the intelligent front-end device includes: By calling the service-oriented interface, load the program package of the target application into the intelligent front-end device.
2. The method according to claim 1, characterized in that, the method further includes: Based on the service-oriented interface framework, load the program package of the second application under the target hardware resource occupancy level into the intelligent front-end device; When the second application is run based on the service-oriented interface framework, the intelligent front-end device switches to realize the functions corresponding to the second application.
3. The method according to claim 2, characterized in that, the service-oriented interface framework includes: an algorithm layer, a function abstraction interface layer; The function abstraction interface layer is used to provide multiple function abstraction interfaces for running applications to the intelligent front-end device; The algorithm layer is used to provide an algorithm SDK interface and multiple algorithm modules for running applications to the intelligent front-end device.
4. The method according to claim 3, characterized in that, the target application further includes the second application.
5. The method according to claim 4, characterized in that, the service-oriented interface framework includes an input interface and an output interface; the method further includes: By calling the input interface, input the image to be processed; By calling the function abstraction interface corresponding to the target application, run the target application, perform image processing on the image to be processed, and obtain an image processing result; By calling the output interface, asynchronously output the image processing result.
6. The method according to claim 5, characterized in that, the target application corresponds to a set of algorithm module handles; The step of running the target application by calling the function abstraction interface corresponding to the target application, performing image processing on the image to be processed, and obtaining an image processing result includes: By calling the function abstraction interface corresponding to the target application, determine the data processing logic corresponding to the target application; Based on the data processing logic, use the algorithm SDK interface to sequentially call a plurality of algorithm modules corresponding to the algorithm module handle set; Use the plurality of algorithm modules to perform image processing on the image to be processed to obtain an image processing result.
7. The method according to claim 5 or 6, wherein, the service interface layer further includes a database interface; the method further includes: after obtaining the image processing result, store the image processing result in a corresponding database by calling the database interface.
8. The method according to any one of claims 3 to 6, wherein, the service interface layer further includes a runtime environment interface; the method further includes: perform authorization verification by calling the runtime environment interface; in the case where the authorization verification is passed, load the service interface framework into the intelligent front-end device.
9. The method according to any one of claims 1 to 6, wherein, the target application includes the first application or the second application; the method further includes: based on the business function selected by the user, use the service interface framework to develop a program package of the target application that can implement the business function.
10. The method according to claim 9, wherein, the service interface framework includes an application template library; the developing, based on the business function selected by the user, a program package of the target application that can implement the business function by using the service interface framework includes: based on the business function, determine the data processing logic corresponding to the target application and the algorithm module handle set corresponding to the target application, wherein the algorithm module handle set is used to indicate a plurality of algorithm modules required to implement the business function; generate a program package of the target application based on the target application template selected by the user from the application template library, the data processing logic, and the algorithm module handle set.
11. The method according to claim 10, wherein, the service interface framework includes a debugging tool; the method further includes: debug the program package of the target application by calling the debugging tool.
12. An application program definition device, applied to an intelligent front-end device, wherein, comprising: a determination module, configured to determine a target hardware resource occupancy level matching the intelligent front-end device based on the hardware resource parameters of the intelligent front-end device; a loading module, configured to load a program package of a first application at the target hardware resource occupancy level into the intelligent front-end device based on a service interface framework preset in the intelligent front-end device, wherein the service interface framework includes a set of interfaces and functional modules for running application programs; a running module, configured to, in the case of running the first application based on the service interface framework, the intelligent front-end device implement the function corresponding to the first application; Among them, the service-oriented interface framework includes: a service-oriented interface layer for providing application programs with different hardware resource occupancy levels to the intelligent front-end device; The service-oriented interface layer includes service-oriented interfaces, and the target application program includes the first application program; The loading module is specifically configured to: Load the program package of the target application program to the intelligent front-end device by calling the service-oriented interface.
13. An electronic device, Characterized in that, It includes: A processor; A memory for storing processor-executable instructions; Among them, the processor is configured to call the instructions stored in the memory to execute the method described in any one of claims 1 to 11.
14. A computer-readable storage medium, on which computer program instructions are stored, Characterized in that, When the computer program instructions are executed by a processor, the method described in any one of claims 1 to 11 is implemented.
Citation Information
Patent Citations
On-demand resources
CN113110849A
Development method and device, container deployment method and device, identification method and device, operation method and device, electronic equipment and storage medium
CN113778608A